Public Member Functions |
| CBotStack (CBotStack *ppapa) |
| CBotStack Constructor of the stack.
|
| ~CBotStack () |
| ~CBotStack Destructor
|
bool | StackOver () |
| StackOver Check if end of stack is reached.
|
int | GetError (int &start, int &end) |
| GetError Get error number of the stack.
|
int | GetError () |
| GetError Get error number.
|
void | Reset (void *pUser) |
| Reset Reset error at and set user.
|
void | SetType (CBotTypResult &type) |
| SetType Determines the type.
|
int | GetType (int mode=0) |
| GetType Get the type of value on the stack.
|
CBotTypResult | GetTypResult (int mode=0) |
| Getes the type of complete value on the stack.
|
void | AddVar (CBotVar *p) |
| Adds a local variable.
|
CBotVar * | FindVar (CBotToken *&pToken, bool bUpdate=false, bool bModif=false) |
| Fetch a variable by its token.
|
CBotVar * | FindVar (CBotToken &Token, bool bUpdate=false, bool bModif=false) |
| Fetch a variable by its token.
|
CBotVar * | FindVar (const char *name) |
| Fetch variable by its name.
|
CBotVar * | FindVar (long ident, bool bUpdate=false, bool bModif=false) |
| Fetch a variable on the stack according to its identification number.
|
CBotVar * | CopyVar (CBotToken &Token, bool bUpdate=false) |
| Find variable by its token and returns a copy of it.
|
CBotStack * | AddStack (CBotInstr *instr=NULL, bool bBlock=false) |
CBotStack * | AddStackEOX (CBotCall *instr=NULL, bool bBlock=false) |
CBotStack * | RestoreStack (CBotInstr *instr=NULL) |
CBotStack * | RestoreStackEOX (CBotCall *instr=NULL) |
CBotStack * | AddStack2 (bool bBlock=false) |
bool | Return (CBotStack *pFils) |
bool | ReturnKeep (CBotStack *pFils) |
bool | BreakReturn (CBotStack *pfils, const char *name=NULL) |
bool | IfContinue (int state, const char *name) |
bool | IsOk () |
bool | SetState (int n, int lim=-10) |
int | GetState () |
bool | IncState (int lim=-10) |
bool | IfStep () |
bool | Execute () |
void | SetVar (CBotVar *var) |
void | SetCopyVar (CBotVar *var) |
CBotVar * | GetVar () |
CBotVar * | GetCopyVar () |
CBotVar * | GetPtVar () |
bool | GetRetVar (bool bRet) |
long | GetVal () |
void | SetStartError (int pos) |
void | SetError (int n, CBotToken *token=NULL) |
void | SetPosError (CBotToken *token) |
void | ResetError (int n, int start, int end) |
void | SetBreak (int val, const char *name) |
void | SetBotCall (CBotProgram *p) |
CBotProgram * | GetBotCall (bool bFirst=false) |
void * | GetPUser () |
bool | GetBlock () |
bool | ExecuteCall (long &nIdent, CBotToken *token, CBotVar **ppVar, CBotTypResult &rettype) |
void | RestoreCall (long &nIdent, CBotToken *token, CBotVar **ppVar) |
bool | SaveState (FILE *pf) |
bool | RestoreState (FILE *pf, CBotStack *&pStack) |
void | GetRunPos (const char *&FunctionName, int &start, int &end) |
CBotVar * | GetStackVars (const char *&FunctionName, int level) |
Management of the execution stack.
Actually the only thing it can do is to create an instance of a stack to use for routine CBotProgram :: Execute(CBotStack)