All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
C4AulDefFunc Class Reference

#include <C4AulDefFunc.h>

Inheritance diagram for C4AulDefFunc:
Collaboration diagram for C4AulDefFunc:

Public Member Functions

 C4AulDefFunc (C4PropListStatic *Parent, C4ScriptFnDef *pDef)
 ~C4AulDefFunc ()
virtual bool GetPublic () const
virtual const C4V_TypeGetParType () const
virtual C4V_Type GetRetType () const
virtual C4Value Exec (C4PropList *p, C4Value pPars[], bool fPassErrors=false)

Public Attributes


Private Member Functions

const char * GetName () const
virtual StdStrBuf GetFullName () const
virtual C4AulScriptFuncSFunc ()
virtual int GetParCount () const
C4Value Exec (C4PropList *p=nullptr, C4AulParSet *pPars=nullptr, bool fPassErrors=false)
bool CheckParTypes (const C4Value pPars[], bool fPassErrors) const
void IncRef ()
void DecRef ()

Private Attributes

C4RefCntPointer< C4StringName
unsigned int RefCnt

Detailed Description

Definition at line 285 of file C4AulDefFunc.h.

Constructor & Destructor Documentation

C4AulDefFunc::C4AulDefFunc ( C4PropListStatic Parent,
C4ScriptFnDef pDef 

Definition at line 112 of file C4Script.cpp.

References C4VFunction(), C4AulFunc::Name, and C4PropList::SetPropertyByS().

112  :
113  C4AulFunc(Parent, pDef->Identifier), Def(pDef)
114 {
115  Parent->SetPropertyByS(Name, C4VFunction(this));
116 }
C4AulFunc(C4PropListStatic *Parent, const char *pName)
Definition: C4AulFunc.cpp:22
const char * Identifier
Definition: C4AulDefFunc.h:277
C4ScriptFnDef * Def
Definition: C4AulDefFunc.h:288
C4Value C4VFunction(C4AulFunc *pFn)
Definition: C4Value.h:250
virtual void SetPropertyByS(C4String *k, const C4Value &to)
Definition: C4PropList.cpp:929
C4RefCntPointer< C4String > Name
Definition: C4AulFunc.h:61

Here is the call graph for this function:

C4AulDefFunc::~C4AulDefFunc ( )

Definition at line 118 of file C4Script.cpp.

119 {
120 }

Member Function Documentation

C4Value C4AulDefFunc::Exec ( C4PropList p,
C4Value  pPars[],
bool  fPassErrors = false 

Implements C4AulFunc.

Definition at line 122 of file C4Script.cpp.

References Def, and C4ScriptFnDef::FunctionC4V.

123 {
124  assert(Def->FunctionC4V);
125  return Def->FunctionC4V(p, pPars);
126 }
C4Value(* FunctionC4V)(C4PropList *_this, C4Value *)
Definition: C4AulDefFunc.h:281
C4ScriptFnDef * Def
Definition: C4AulDefFunc.h:288
virtual const C4V_Type* C4AulDefFunc::GetParType ( ) const

Implements C4AulFunc.

Definition at line 294 of file C4AulDefFunc.h.

References C4ScriptFnDef::ParType.

294 { return Def->ParType; }
C4V_Type ParType[10]
Definition: C4AulDefFunc.h:280
C4ScriptFnDef * Def
Definition: C4AulDefFunc.h:288
virtual bool C4AulDefFunc::GetPublic ( ) const

Reimplemented from C4AulFunc.

Definition at line 293 of file C4AulDefFunc.h.

References C4ScriptFnDef::Public.

293 { return !!Def->Public; }
C4ScriptFnDef * Def
Definition: C4AulDefFunc.h:288
virtual C4V_Type C4AulDefFunc::GetRetType ( ) const

Implements C4AulFunc.

Definition at line 295 of file C4AulDefFunc.h.

References C4ScriptFnDef::RetType.

295 { return Def->RetType; }
C4ScriptFnDef * Def
Definition: C4AulDefFunc.h:288
C4V_Type RetType
Definition: C4AulDefFunc.h:279

Member Data Documentation

C4ScriptFnDef* C4AulDefFunc::Def

Definition at line 288 of file C4AulDefFunc.h.

Referenced by Exec().

The documentation for this class was generated from the following files: