Colobot
Loading...
Searching...
No Matches
CBot::CBotWhile Class Reference

The "while" loop - while (condition) { ... }. More...

#include <src/CBot/CBotInstr/CBotWhile.h>

Inheritance diagram for CBot::CBotWhile:

Public Member Functions

 CBotWhile ()
 CBotWhile.
 ~CBotWhile ()
 ~CBotWhile
bool Execute (CBotStack *&pj) override
 Execute.
void RestoreState (CBotStack *&pj, bool bMain) override
 RestoreState.
Public Member Functions inherited from CBot::CBotInstr
 CBotInstr ()
 Constructor.
virtual ~CBotInstr ()
 Destructor.
virtual bool Execute (CBotStack *&pj, CBotVar *pVar)
 Execute.
virtual bool ExecuteVar (CBotVar *&pVar, CBotCStack *&pile)
 ExecuteVar.
virtual bool ExecuteVar (CBotVar *&pVar, CBotStack *&pile, CBotToken *prevToken, bool bStep, bool bExtend)
 ExecuteVar.
virtual void RestoreStateVar (CBotStack *&pile, bool bMain)
 RestoreStateVar.
void SetToken (CBotToken *p)
 SetToken Set the token corresponding to the instruction.
int GetTokenType ()
 GetTokenType Return the type of the token assicated with the instruction.
CBotToken * GetToken ()
 GetToken Return associated token.
void AddNext (CBotInstr *n)
 AddNext Adds the statement following the other.
CBotInstr * GetNext ()
 GetNext Returns next statement.
void AddNext3 (CBotInstr *n)
 AddNext3.
CBotInstr * GetNext3 ()
 GetNext3.
void AddNext3b (CBotInstr *n)
 AddNext3b.
CBotInstr * GetNext3b ()
 GetNext3b.
virtual bool HasReturn ()
 Check a list of instructions for a return statement.

Static Public Member Functions

static CBotInstr * Compile (CBotToken *&p, CBotCStack *pStack)
 Compile.
Static Public Member Functions inherited from CBot::CBotInstr
static CBotInstr * Compile (CBotToken *&p, CBotCStack *pStack)
 Compile an instruction.
static CBotInstr * CompileArray (CBotToken *&p, CBotCStack *pStack, CBotTypResult type, bool first=true)
 CompileArray.
static void IncLvl (std::string &label)
 IncLvl Adds a level with a label.
static void IncLvl ()
 IncLvl Adds a level (switch statement).
static void DecLvl ()
 DecLvl Free a level.
static bool ChkLvl (const std::string &label, int type)
 ChkLvl Control validity of break and continue.

Protected Member Functions

virtual const std::string GetDebugName () override
 Returns the name of this class.
virtual std::string GetDebugData () override
 Returns additional data associated with this instruction for debugging purposes.
virtual std::map< std::string, CBotInstr * > GetDebugLinks () override

Additional Inherited Members

Protected Attributes inherited from CBot::CBotInstr
CBotToken m_token
 Keeps the token.
CBotInstr * m_next
 Linked command.
CBotInstr * m_next2b
 Second list definition chain.
CBotInstr * m_next3
 Third list for indices and fields.
CBotInstr * m_next3b
 Necessary for reporting tables.
Static Protected Attributes inherited from CBot::CBotInstr
static int m_LoopLvl = 0
 Counter of nested loops, to determine the break and continue valid.

Detailed Description

The "while" loop - while (condition) { ... }.

Constructor & Destructor Documentation

◆ CBotWhile()

CBot::CBotWhile::CBotWhile ( )

◆ ~CBotWhile()

CBot::CBotWhile::~CBotWhile ( )

~CBotWhile

Member Function Documentation

◆ Compile()

CBotInstr * CBot::CBotWhile::Compile ( CBotToken *& p,
CBotCStack * pStack )
static

Compile.

Parameters
p
pStack
Returns

◆ Execute()

bool CBot::CBotWhile::Execute ( CBotStack *& pj)
overridevirtual

Execute.

Parameters
pj
Returns

Reimplemented from CBot::CBotInstr.

◆ RestoreState()

void CBot::CBotWhile::RestoreState ( CBotStack *& pj,
bool bMain )
overridevirtual

RestoreState.

Parameters
pj
bMain

Reimplemented from CBot::CBotInstr.

◆ GetDebugName()

virtual const std::string CBot::CBotWhile::GetDebugName ( )
inlineoverrideprotectedvirtual

Returns the name of this class.

See also
CBotDebug

Implements CBot::CBotInstr.

◆ GetDebugData()

std::string CBot::CBotWhile::GetDebugData ( )
overrideprotectedvirtual

Returns additional data associated with this instruction for debugging purposes.

See also
CBotDebug

Reimplemented from CBot::CBotInstr.

◆ GetDebugLinks()

std::map< std::string, CBotInstr * > CBot::CBotWhile::GetDebugLinks ( )
overrideprotectedvirtual

Returns a map of all instructions connected with this one

See also
CBotDebug

Reimplemented from CBot::CBotInstr.


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