#include <C4ScriptHost.h>
Public Member Functions | |
C4ScenarioObjectsScriptHost () | |
void | Clear () |
bool | Delete () override |
C4PropListStatic * | GetPropList () override |
const C4PropListStatic * | GetPropList () const |
virtual bool | Load (C4Group &hGroup, const char *szFilename, const char *szLanguage, C4LangStringTable *pLocalTable) |
bool | Load (C4Group &hGroup, const char *szFilename, const char *szLanguage=nullptr) |
bool | Load (C4GroupSet &hGroupSet, const char *szFilename, const char *szLanguage=nullptr) |
virtual bool | LoadData (const char *szFilename, const char *szData, class C4LangStringTable *pLocalTable) |
void | Reg2List (C4AulScriptEngine *pEngine) |
const char * | GetScript () const |
bool | IsReady () |
std::string | Translate (const std::string &text) const |
bool | IsWarningEnabled (const char *pos, C4AulWarningId warning) const |
const char * | GetFilePath () const |
const char * | GetData () const |
const StdStrBuf & | GetDataBuf () const |
size_t | GetDataSize () const |
bool | GetLanguageString (const char *szLanguage, StdStrBuf &rTarget) |
Public Attributes | |
std::deque< C4ScriptHost * > | SourceScripts |
StdCopyStrBuf | ScriptName |
Protected Member Functions | |
void | Unreg () |
void | MakeScript () |
virtual bool | ReloadScript (const char *szPath, const char *szLanguage) |
bool | Preparse () |
virtual bool | Parse () |
virtual void | UnLink () |
void | UnlinkOwnedFunctions () |
void | DeleteOwnedPropLists () |
void | Warn (const char *pMsg,...) GNUC_FORMAT_ATTRIBUTE_O |
virtual void | AddEngineFunctions () |
void | CopyPropList (C4Set< C4Property > &from, C4PropListStatic *to) |
bool | ResolveIncludes (C4DefList *rDefs) |
bool | ResolveAppends (C4DefList *rDefs) |
void | DoAppend (C4Def *def) |
void | EnableWarning (const char *pos, C4AulWarningId warning, bool enable=true) |
virtual void | OnLoad () |
void | CopyFilePathFromGroup (const C4Group &hGroup) |
void | FinishLoad (const StdStrBuf &, C4Group &hGroup) |
Protected Attributes | |
C4AulScriptEngine * | Engine {nullptr} |
C4ScriptHost * | Prev {nullptr} |
C4ScriptHost * | Next {nullptr} |
std::list< StdCopyStrBuf > | Includes |
std::list< StdCopyStrBuf > | Appends |
bool | Resolving |
bool | IncludesResolved |
StdStrBuf | Script |
C4LangStringTable * | stringTable |
C4Set< C4Property > | LocalValues |
C4AulScriptState | State {ASS_NONE} |
std::vector< C4Value > | ownedFunctions |
std::vector< C4Value > | ownedPropLists |
StdCopyStrBuf | Data |
StdCopyStrBuf | Filename |
StdCopyStrBuf | FilePath |
Definition at line 132 of file C4ScriptHost.h.
C4ScenarioObjectsScriptHost::C4ScenarioObjectsScriptHost | ( | ) |
Definition at line 275 of file C4ScriptHost.cpp.
|
inlineprotectedvirtualinherited |
Reimplemented in C4MapScriptHost.
Definition at line 83 of file C4ScriptHost.h.
Referenced by C4ScriptHost::Preparse().
|
inherited |
Definition at line 261 of file C4ScriptHost.cpp.
References C4Value::_getPropList(), C4PropList::Clear(), and C4ScriptHost::Clear().
Referenced by C4ExtraScriptHost::~C4ExtraScriptHost().
|
protectedinherited |
Definition at line 120 of file C4ComponentHost.cpp.
References StdStrBuf::Append(), StdStrBuf::AppendBackslash(), C4Config::AtRelativePath(), Config, StdStrBuf::Copy(), C4ComponentHost::Filename, C4ComponentHost::FilePath, StdStrBuf::getData(), and C4Group::GetFullName().
Referenced by C4ComponentHost::FinishLoad(), and C4ComponentHost::Load().
|
protectedinherited |
Definition at line 1690 of file C4AulParse.cpp.
References C4Value::_getPropList(), C4ScriptHost::C4AulScriptFunc, C4V_Array, C4V_Function, C4V_PropList, C4VFunction(), C4VPropList(), C4Set< T >::First(), C4PropList::GetFunc(), C4Value::getFunction(), C4PropListStatic::GetParent(), C4Value::GetType(), C4PropList::IsStatic(), C4Property::Key, C4AulFunc::Name, C4PropList::NewStatic(), C4Set< T >::Next(), C4StringTable::P, P_Prototype, C4AulScriptFunc::pOrgScript, C4AulScriptFunc::SetOverloaded(), C4PropList::SetPropertyByS(), C4AulFunc::SFunc(), Strings, and C4Property::Value.
Referenced by C4ScriptHost::Parse().
|
inlineoverridevirtualinherited |
Reimplemented from C4ScriptHost.
Definition at line 127 of file C4ScriptHost.h.
|
protectedinherited |
Definition at line 120 of file C4ScriptHost.cpp.
References C4PropList::Clear(), C4PropList::Delete(), and C4ScriptHost::ownedPropLists.
Referenced by C4ScriptHost::Clear(), and C4ScriptHost::UnLink().
|
protectedinherited |
Definition at line 28 of file C4AulLink.cpp.
References C4ScriptHost::Includes, C4Def::Script, C4ScriptHost::SourceScripts, and C4ScriptHost::Warn().
Referenced by C4ScriptHost::ResolveAppends().
|
protectedinherited |
Definition at line 1776 of file C4AulParse.cpp.
Definition at line 99 of file C4ComponentHost.cpp.
References C4ComponentHost::CopyFilePathFromGroup(), C4ComponentHost::Data, StdStrBuf::EnsureUnicode(), C4ComponentHost::Filename, C4ComponentHost::FilePath, C4Group::FindEntry(), StdStrBuf::getData(), StdStrBuf::getSize(), LogF(), StdStrBuf::Move(), C4ComponentHost::OnLoad(), and StdStrBuf::Shrink().
Referenced by C4ComponentHost::Load().
|
inlineinherited |
Definition at line 30 of file C4ComponentHost.h.
References C4ComponentHost::Data, and StdStrBuf::getData().
Referenced by C4Game::CompileRuntimeData(), C4RankSystem::Load(), C4ScenarioListLoader::Entry::Load(), C4Player::LoadRuntimeData(), C4ObjectInfoList::New(), and C4Game::OpenScenario().
|
inlineinherited |
Definition at line 31 of file C4ComponentHost.h.
References C4ComponentHost::Data.
Referenced by C4Game::CompileRuntimeData(), C4Language::HasStringTable(), and C4ScriptHost::MakeScript().
|
inlineinherited |
Definition at line 32 of file C4ComponentHost.h.
References C4ComponentHost::Data, and StdStrBuf::getLength().
Referenced by C4RankSystem::Load().
|
inlineinherited |
Definition at line 28 of file C4ComponentHost.h.
References C4ComponentHost::FilePath, and StdStrBuf::getData().
Referenced by C4ScriptHost::Load(), C4Player::LoadRuntimeData(), C4ScriptHost::ReloadScript(), and C4LangStringTable::ReplaceStrings().
|
inherited |
Definition at line 127 of file C4ComponentHost.cpp.
References StdStrBuf::Copy(), C4ComponentHost::Data, StdStrBuf::getData(), SAppend(), SCharPos(), SCopySegment(), and SSearch().
Referenced by C4DefList::Load(), C4ScenarioListLoader::Entry::Load(), and C4Game::OpenScenario().
|
inlineinherited |
Definition at line 52 of file C4ScriptHost.h.
References C4ScriptHost::GetPropList().
Referenced by C4ScriptHost::GetPropList().
|
overridevirtualinherited |
Reimplemented from C4ScriptHost.
Definition at line 267 of file C4ScriptHost.cpp.
References C4Value::_getPropList(), and C4PropList::IsStatic().
Referenced by C4Game::InitScriptEngine().
|
inlineinherited |
Definition at line 53 of file C4ScriptHost.h.
References StdStrBuf::getData(), and C4ScriptHost::Script.
Referenced by C4AulParseError::C4AulParseError(), C4AulScriptFunc::GetLineOfCode(), and C4AulScriptContext::ReturnDump().
|
inlineinherited |
Definition at line 54 of file C4ScriptHost.h.
References ASS_PARSED, and C4ScriptHost::State.
Referenced by C4GUI::FrameDecoration::SetByDef().
|
inherited |
Definition at line 1791 of file C4AulParse.cpp.
|
virtualinherited |
Reimplemented in C4GameScriptHost, and C4MapScriptHost.
Definition at line 164 of file C4ScriptHost.cpp.
References C4LangStringTable::AddRef(), C4LangStringTable::DelRef(), C4ComponentHost::GetFilePath(), C4ComponentHost::Load(), C4ScriptHost::MakeScript(), StdStrBuf::Ref(), C4ScriptHost::ScriptName, and C4ScriptHost::stringTable.
Referenced by C4Game::InitScriptEngine(), C4MapScriptHost::Load(), C4GameScriptHost::Load(), C4Def::Load(), C4Game::LoadAdditionalSystemGroup(), C4ScriptHost::ReloadScript(), and C4ScenarioSection::ScenarioLoad().
|
inherited |
Definition at line 23 of file C4ComponentHost.cpp.
References _MAX_FNAME_LEN, C4ComponentHost::Clear(), StdStrBuf::Copy(), C4ComponentHost::CopyFilePathFromGroup(), C4ComponentHost::Data, C4ComponentHost::Filename, C4ComponentHost::FinishLoad(), StdStrBuf::Format(), StdStrBuf::getData(), StdStrBuf::getMData(), C4Group::LoadEntryString(), SCopySegment(), SReplaceChar(), and SSearch().
Referenced by C4Game::CompileRuntimeData(), C4Game::InitScriptEngine(), C4ScriptHost::Load(), C4ScenarioListLoader::Entry::Load(), C4Language::LoadComponentHost(), and C4Game::LoadScenarioComponents().
|
inherited |
Definition at line 60 of file C4ComponentHost.cpp.
References _MAX_FNAME_LEN, C4ComponentHost::Clear(), StdStrBuf::Copy(), C4ComponentHost::CopyFilePathFromGroup(), C4ComponentHost::Data, C4ComponentHost::Filename, C4GroupSet::FindEntry(), C4ComponentHost::FinishLoad(), StdStrBuf::Format(), StdStrBuf::getData(), C4GroupSet::GetGroup(), StdStrBuf::getMData(), C4GroupSet::LoadEntryString(), SCopySegment(), SReplaceChar(), and SSearch().
|
virtualinherited |
Reimplemented in C4GameScriptHost, and C4MapScriptHost.
Definition at line 184 of file C4ScriptHost.cpp.
References C4LangStringTable::AddRef(), StdStrBuf::Clear(), StdStrBuf::Copy(), C4LangStringTable::DelRef(), C4ScriptHost::Preparse(), C4LangStringTable::ReplaceStrings(), C4ScriptHost::Script, C4ScriptHost::ScriptName, C4ScriptHost::stringTable, and StdStrBuf::Take().
Referenced by C4MapScriptHost::LoadData(), and C4GameScriptHost::LoadData().
|
protectedinherited |
Definition at line 208 of file C4ScriptHost.cpp.
References StdStrBuf::Clear(), C4ComponentHost::GetDataBuf(), C4ScriptHost::Preparse(), StdStrBuf::Ref(), C4LangStringTable::ReplaceStrings(), C4ScriptHost::Script, and C4ScriptHost::stringTable.
Referenced by C4ScriptHost::Load().
|
inlineprotectedvirtualinherited |
Reimplemented in C4LangStringTable.
Definition at line 39 of file C4ComponentHost.h.
Referenced by C4ComponentHost::Clear(), and C4ComponentHost::FinishLoad().
|
protectedvirtualinherited |
Reimplemented in C4DefScriptHost.
Definition at line 1739 of file C4AulParse.cpp.
References C4ScriptHost::Appends, ASS_LINKED, ASS_PARSED, C4AulCompiler::Compile(), C4ScriptHost::CopyPropList(), C4ScriptHost::Engine, StdStrBuf::getData(), C4PropList::GetDef(), StdStrBuf::getLength(), C4ScriptHost::GetPropList(), StdStrBuf::getPtr(), C4Def::IncludeDefinition(), C4AulScriptEngine::lineCnt, s, C4ScriptHost::Script, SGetLine(), C4ScriptHost::SourceScripts, and C4ScriptHost::State.
Referenced by C4DefScriptHost::Parse().
|
protectedinherited |
Definition at line 693 of file C4AulParse.cpp.
References C4ScriptHost::AddEngineFunctions(), C4ScriptHost::Appends, ASS_NONE, ASS_PREPARSED, C4VPropList(), C4Set< T >::Clear(), C4ScriptHost::Engine, StdStrBuf::getData(), C4AulScriptEngine::GetPropList(), C4ScriptHost::GetPropList(), C4ScriptHost::Includes, C4ScriptHost::IncludesResolved, C4ScriptHost::LocalValues, P_Prototype, C4AulParse::Parse_Script(), C4AulCompiler::Preparse(), C4ScriptHost::Script, C4PropList::SetProperty(), and C4ScriptHost::State.
Referenced by C4ScriptHost::LoadData(), and C4ScriptHost::MakeScript().
|
inherited |
Definition at line 146 of file C4ScriptHost.cpp.
References C4AulScriptEngine::Child0, C4AulScriptEngine::ChildL, C4ScriptHost::Engine, C4ScriptHost::Next, and C4ScriptHost::Prev.
Referenced by C4MapScriptHost::InitFunctionMap(), C4Game::InitScriptEngine(), C4GameScriptHost::Load(), C4Def::Load(), C4Game::LoadAdditionalSystemGroup(), C4GameScriptHost::LoadData(), and C4ScenarioSection::ScenarioLoad().
|
protectedvirtualinherited |
Definition at line 227 of file C4ScriptHost.cpp.
References _MAX_PATH_LEN, C4ComponentHost::GetFilePath(), GetParentPath(), C4ScriptHost::Load(), C4Group::Open(), SEqualNoCase(), and C4ScriptHost::stringTable.
|
protectedinherited |
Definition at line 46 of file C4AulLink.cpp.
References C4ScriptHost::Appends, ASS_PREPARSED, C4ScriptHost::DoAppend(), C4DefList::GetByName(), C4DefList::GetDef(), C4DefList::GetDefCount(), C4ScriptHost::GetPropList(), C4ScriptHost::State, and C4ScriptHost::Warn().
|
protectedinherited |
Definition at line 83 of file C4AulLink.cpp.
References ASS_LINKED, ASS_PREPARSED, C4ScriptHost::Engine, C4DefList::GetByName(), C4AulScriptEngine::GetErrorHandler(), C4ScriptHost::Includes, C4ScriptHost::IncludesResolved, C4AulErrorHandler::OnError(), C4ScriptHost::ResolveIncludes(), C4ScriptHost::Resolving, s, C4Def::Script, C4ScriptHost::SourceScripts, C4ScriptHost::State, and C4ScriptHost::Warn().
Referenced by C4ScriptHost::ResolveIncludes().
|
inherited |
Definition at line 242 of file C4ScriptHost.cpp.
References C4ScriptHost::stringTable, C4ScriptGuiWindowPropertyName::text, and C4LangStringTable::Translate().
|
protectedvirtualinherited |
Definition at line 130 of file C4AulLink.cpp.
References ASS_PREPARSED, C4VPropList(), C4ScriptHost::DeleteOwnedPropLists(), C4ScriptHost::Engine, C4AulScriptEngine::GetPropList(), C4ScriptHost::GetPropList(), C4ScriptHost::IncludesResolved, P_Prototype, C4PropList::SetProperty(), and C4ScriptHost::State.
|
protectedinherited |
Definition at line 72 of file C4ScriptHost.cpp.
References C4V_Function, C4VFunction(), C4RefCnt::DecRef(), C4Value::getFunction(), C4PropList::GetPropertyByS(), C4ScriptHost::GetPropList(), C4AulFunc::Name, C4ScriptHost::ownedFunctions, C4AulScriptFunc::OwnerOverloaded, C4AulFunc::Parent, C4PropList::ResetProperty(), ScriptEngine, C4PropList::SetPropertyByS(), C4AulFunc::SFunc(), C4AulScriptFunc::SFunc(), and C4PropList::Thaw().
Referenced by C4ScriptHost::Clear().
|
protectedinherited |
Definition at line 137 of file C4ScriptHost.cpp.
References C4AulScriptEngine::Child0, C4AulScriptEngine::ChildL, C4ScriptHost::Engine, C4ScriptHost::Next, and C4ScriptHost::Prev.
Referenced by C4AulScriptEngine::Clear(), and C4ScriptHost::~C4ScriptHost().
|
protectedinherited |
Definition at line 124 of file C4AulParse.cpp.
References StdStrBuf::AppendFormat(), C4ScriptHost::Engine, FormatStringV(), StdStrBuf::getData(), C4AulScriptEngine::GetErrorHandler(), C4AulErrorHandler::OnWarning(), and C4ScriptHost::ScriptName.
Referenced by C4ScriptHost::DoAppend(), C4DefScriptHost::Parse(), C4ScriptHost::ResolveAppends(), and C4ScriptHost::ResolveIncludes().
|
protectedinherited |
Definition at line 81 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Clear(), C4ScriptHost::Parse(), C4ScriptHost::Preparse(), C4ScriptHost::ResolveAppends(), and C4AulCompiler::PreparseAstVisitor::visit().
|
protectedinherited |
Definition at line 41 of file C4ComponentHost.h.
Referenced by C4ComponentHost::Clear(), C4ComponentHost::FinishLoad(), C4ComponentHost::GetData(), C4ComponentHost::GetDataBuf(), C4ComponentHost::GetDataSize(), C4ComponentHost::GetLanguageString(), C4ComponentHost::Load(), and C4LangStringTable::ReplaceStrings().
|
protectedinherited |
Definition at line 77 of file C4ScriptHost.h.
Referenced by C4AulCompiler::ConstexprEvaluator::eval(), C4AulCompiler::ConstexprEvaluator::eval_static(), C4ScriptHost::Parse(), C4ScriptHost::Preparse(), C4ScriptHost::Reg2List(), C4ScriptHost::ResolveIncludes(), C4ScriptHost::UnLink(), C4ScriptHost::Unreg(), C4AulCompiler::PreparseAstVisitor::visit(), C4AulCompiler::ConstexprEvaluator::visit(), C4AulCompiler::ConstantResolver::visit(), and C4ScriptHost::Warn().
|
protectedinherited |
Definition at line 42 of file C4ComponentHost.h.
Referenced by C4ComponentHost::CopyFilePathFromGroup(), C4ComponentHost::FinishLoad(), and C4ComponentHost::Load().
|
protectedinherited |
Definition at line 43 of file C4ComponentHost.h.
Referenced by C4ComponentHost::CopyFilePathFromGroup(), C4ComponentHost::FinishLoad(), and C4ComponentHost::GetFilePath().
|
protectedinherited |
Definition at line 80 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Clear(), C4ScriptHost::DoAppend(), C4ScriptHost::Preparse(), C4ScriptHost::ResolveIncludes(), and C4AulCompiler::PreparseAstVisitor::visit().
|
protectedinherited |
Definition at line 89 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Preparse(), C4ScriptHost::ResolveIncludes(), and C4ScriptHost::UnLink().
|
protectedinherited |
Definition at line 93 of file C4ScriptHost.h.
Referenced by C4ScriptHost::Clear(), and C4ScriptHost::Preparse().
|
protectedinherited |
Definition at line 78 of file C4ScriptHost.h.
Referenced by C4ScriptHost::Reg2List(), and C4ScriptHost::Unreg().
|
protectedinherited |
Definition at line 97 of file C4ScriptHost.h.
Referenced by C4ScriptHost::UnlinkOwnedFunctions(), and C4AulCompiler::PreparseAstVisitor::visit().
|
protectedinherited |
Definition at line 102 of file C4ScriptHost.h.
Referenced by C4ScriptHost::DeleteOwnedPropLists().
|
protectedinherited |
Definition at line 78 of file C4ScriptHost.h.
Referenced by C4ScriptHost::Reg2List(), and C4ScriptHost::Unreg().
|
protectedinherited |
Definition at line 88 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), and C4ScriptHost::ResolveIncludes().
|
protectedinherited |
Definition at line 91 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Clear(), C4ScriptHost::GetScript(), C4ScriptHost::LoadData(), C4ScriptHost::MakeScript(), C4ScriptHost::Parse(), C4AulParse::Parse_Script(), and C4ScriptHost::Preparse().
|
inherited |
Definition at line 58 of file C4ScriptHost.h.
Referenced by C4AulParseError::C4AulParseError(), C4ScriptHost::Load(), C4ScriptHost::LoadData(), C4AulScriptContext::ReturnDump(), and C4ScriptHost::Warn().
|
inherited |
Definition at line 57 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Clear(), C4ScriptHost::DoAppend(), C4ScriptHost::Parse(), and C4ScriptHost::ResolveIncludes().
|
protectedinherited |
Definition at line 94 of file C4ScriptHost.h.
Referenced by C4ScriptHost::Clear(), C4ScriptHost::IsReady(), C4ScriptHost::Parse(), C4ScriptHost::Preparse(), C4ScriptHost::ResolveAppends(), C4ScriptHost::ResolveIncludes(), and C4ScriptHost::UnLink().
|
protectedinherited |
Definition at line 92 of file C4ScriptHost.h.
Referenced by C4ScriptHost::C4ScriptHost(), C4ScriptHost::Clear(), C4ScriptHost::Load(), C4ScriptHost::LoadData(), C4ScriptHost::MakeScript(), C4ScriptHost::ReloadScript(), and C4ScriptHost::Translate().