#include <C4AulFunc.h>
Public Member Functions | |
C4AulFunc (C4PropListStatic *Parent, const char *pName) | |
const char * | GetName () const |
virtual StdStrBuf | GetFullName () const |
virtual C4AulScriptFunc * | SFunc () |
virtual bool | GetPublic () const |
virtual int | GetParCount () const |
virtual const C4V_Type * | GetParType () const =0 |
virtual C4V_Type | GetRetType () const =0 |
C4Value | Exec (C4PropList *p=nullptr, C4AulParSet *pPars=nullptr, bool fPassErrors=false) |
virtual C4Value | Exec (C4PropList *p, C4Value pPars[], bool fPassErrors=false)=0 |
bool | CheckParTypes (const C4Value pPars[], bool fPassErrors) const |
void | IncRef () |
void | DecRef () |
Public Attributes | |
C4PropListStatic * | Parent |
Protected Member Functions | |
~C4AulFunc () override | |
Protected Attributes | |
C4RefCntPointer< C4String > | Name |
C4AulFunc * | MapNext |
unsigned int | RefCnt {0} |
Friends | |
class | C4AulScriptEngine |
class | C4AulFuncMap |
class | C4AulParse |
class | C4ScriptHost |
Definition at line 46 of file C4AulFunc.h.
C4AulFunc::C4AulFunc | ( | C4PropListStatic * | Parent, |
const char * | pName | ||
) |
Definition at line 22 of file C4AulFunc.cpp.
References C4AulFuncMap::Add(), C4AulScriptEngine::FuncLookUp, GetName(), and ScriptEngine.
|
overrideprotected |
Definition at line 32 of file C4AulFunc.cpp.
References C4AulScriptEngine::FuncLookUp, GetName(), C4AulFuncMap::Remove(), and ScriptEngine.
bool C4AulFunc::CheckParTypes | ( | const C4Value | pPars[], |
bool | fPassErrors | ||
) | const |
Definition at line 58 of file C4AulFunc.cpp.
References FormatString(), GetC4VName(), C4AulScriptEngine::GetErrorHandler(), GetName(), GetParCount(), GetParType(), C4AulErrorHandler::OnError(), ScriptEngine, and C4AulError::what().
Referenced by Exec().
|
inlineinherited |
Definition at line 28 of file C4StringTable.h.
References C4RefCnt::RefCnt.
Referenced by C4Command::Clear(), C4Command::CompileFunc(), C4Property::CompileFunc(), C4Def::GetActionByName(), C4Property::operator=(), C4Object::SetActionByName(), C4AulScriptFunc::SetOverloaded(), C4ScriptHost::UnlinkOwnedFunctions(), C4AulScriptFunc::~C4AulScriptFunc(), C4Property::~C4Property(), C4ScriptGuiWindow::~C4ScriptGuiWindow(), and C4ScriptGuiWindowAction::~C4ScriptGuiWindowAction().
|
pure virtual |
Implemented in C4AulScriptFunc, C4AulDefFunc, and C4AulEngineFunc< RType, ThisType, ParTypes >.
|
inline |
Definition at line 72 of file C4AulFunc.h.
References CheckParTypes().
Referenced by C4PropList::Call(), C4Effect::CallDamage(), C4Effect::CallEffect(), C4Effect::CallStart(), C4Effect::CallStop(), C4Effect::CallTimer(), C4Effect::DoCall(), C4MCCallbackArray::Execute(), C4MaterialMap::mrfScript(), C4Player::NotifyOwnedObjects(), and C4Object::PutAwayUnusedObject().
|
virtual |
Definition at line 38 of file C4AulFunc.cpp.
References StdStrBuf::Append(), StdStrBuf::AppendChar(), C4String::GetData(), C4PropListStatic::GetDataString(), GetName(), Name, Parent, StdStrBuf::Ref(), and StdStrBuf::Take().
|
inline |
Definition at line 56 of file C4AulFunc.h.
References C4String::GetCStr(), and Name.
Referenced by C4AulFuncMap::Add(), C4AulFunc(), C4AulParseError::C4AulParseError(), CheckParTypes(), C4Value::CompileFunc(), C4EditCursor::DoContextMenu(), C4AulScriptFunc::DumpByteCode(), C4AulFuncMap::GetFirstFunc(), GetFullName(), C4AulFuncMap::GetNextSNFunc(), C4AulFuncMap::Remove(), C4AulScriptContext::ReturnDump(), and ~C4AulFunc().
|
inlinevirtual |
Reimplemented in C4AulScriptFunc, and C4AulEngineFunc< RType, ThisType, ParTypes >.
Definition at line 69 of file C4AulFunc.h.
References C4AUL_MAX_Par.
Referenced by CheckParTypes().
|
pure virtual |
Implemented in C4AulScriptFunc, C4AulDefFunc, and C4AulEngineFunc< RType, ThisType, ParTypes >.
Referenced by CheckParTypes().
|
inlinevirtual |
Reimplemented in C4AulScriptFunc, C4AulDefFunc, and C4AulEngineFunc< RType, ThisType, ParTypes >.
Definition at line 68 of file C4AulFunc.h.
Referenced by C4AulScriptEngine::GetFunctionNames().
|
pure virtual |
Implemented in C4AulScriptFunc, C4AulDefFunc, and C4AulEngineFunc< RType, ThisType, ParTypes >.
|
inlineinherited |
Definition at line 27 of file C4StringTable.h.
References C4RefCnt::RefCnt.
Referenced by C4Property::C4Property(), C4Command::CompileFunc(), C4Property::CompileFunc(), C4ScriptGuiWindow::CreateFromPropList(), C4Def::GetActionByName(), C4ScriptGuiWindowAction::Init(), C4Property::operator=(), C4ScriptGuiWindowProperty::Set(), C4Command::Set(), C4Object::SetActionByName(), and C4AulScriptFunc::SetOverloaded().
|
inlinevirtual |
Reimplemented in C4AulScriptFunc.
Definition at line 65 of file C4AulFunc.h.
Referenced by C4ScriptHost::CopyPropList(), and C4ScriptHost::UnlinkOwnedFunctions().
|
friend |
Definition at line 49 of file C4AulFunc.h.
|
friend |
Definition at line 50 of file C4AulFunc.h.
|
friend |
Definition at line 48 of file C4AulFunc.h.
|
friend |
Definition at line 51 of file C4AulFunc.h.
|
protected |
Definition at line 61 of file C4AulFunc.h.
Referenced by C4AulFuncMap::Add(), C4AulFuncMap::GetFirstFunc(), C4AulFuncMap::GetNextSNFunc(), and C4AulFuncMap::Remove().
|
protected |
Definition at line 60 of file C4AulFunc.h.
Referenced by C4AulDefFunc::C4AulDefFunc(), C4AulEngineFunc< RType, ThisType, ParTypes >::C4AulEngineFunc(), C4ScriptHost::CopyPropList(), GetFullName(), GetName(), and C4ScriptHost::UnlinkOwnedFunctions().
C4PropListStatic* C4AulFunc::Parent |
Definition at line 55 of file C4AulFunc.h.
Referenced by C4AulDefFunc::C4AulDefFunc(), C4AulEngineFunc< RType, ThisType, ParTypes >::C4AulEngineFunc(), C4Value::CompileFunc(), GetFullName(), C4AulScriptContext::ReturnDump(), and C4ScriptHost::UnlinkOwnedFunctions().
|
protectedinherited |
Definition at line 31 of file C4StringTable.h.
Referenced by C4RefCnt::DecRef(), and C4RefCnt::IncRef().