35 Warn(
"#appendto contains #include");
52 if (Append !=
"*" || !rDefs)
64 Warn(
"#appendto %s not found", Append.getData());
99 for (std::list<StdCopyStrBuf>::reverse_iterator i =
Includes.rbegin(); i !=
Includes.rend(); ++i)
120 Warn(
"#include %s not found", i->getData());
135 p->C4PropList::Clear();
155 s->GetPropList()->ThawRecursively();
171 s->ResolveAppends(rDefs);
175 s->ResolveIncludes(rDefs);
189 s->GetPropList()->FreezeAndMakeStaticRecursively(&
s->ownedPropLists);
216 LogF(
"C4AulScriptEngine linked - %d line%s, %d warning%s, %d error%s",
228 if (
s->ReloadScript(szScript, szLanguage))
C4AulScriptEngine ScriptEngine
bool LogF(const char *strMessage,...)
C4GameScriptHost GameScript
C4Value C4VPropList(C4PropList *p)
virtual void OnError(const char *msg)=0
const char * what() const noexcept override
C4AulErrorHandler * GetErrorHandler() const
bool ReloadScript(const char *szScript, const char *szLanguage)
C4PropListStatic * GetPropList()
C4ValueMapNames GlobalNamedNames
std::vector< C4Value > OwnedPropLists
C4Effect * pGlobalEffects
C4AulErrorHandler * ErrorHandler
C4ValueMapData GlobalNamed
void Link(C4DefList *rDefs)
void ReLink(C4DefList *rDefs)
C4Def * GetDef(int32_t Index)
void ResetIncludeDependencies()
void CallEveryDefinition()
C4Def * GetByName(const StdStrBuf &)
void ReAssignAllCallbackFunctions()
C4Effect * pScenarioEffects
C4PropListStatic * FreezeAndMakeStaticRecursively(std::vector< C4Value > *prop_lists, const C4PropListStatic *parent=nullptr, C4String *key=nullptr)
void SetProperty(C4PropertyName k, const C4Value &to)
void DoAppend(C4Def *def)
void DeleteOwnedPropLists()
bool ResolveIncludes(C4DefList *rDefs)
C4AulScriptEngine * Engine
std::list< StdCopyStrBuf > Appends
std::list< StdCopyStrBuf > Includes
bool ResolveAppends(C4DefList *rDefs)
virtual C4PropListStatic * GetPropList()
std::deque< C4ScriptHost * > SourceScripts
void Warn(const char *pMsg,...) GNUC_FORMAT_ATTRIBUTE_O
void SetNameList(C4ValueMapNames *pnNames)