Colobot
Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | Friends | List of all members
CBot::CBotVar Class Reference

A CBot variable. More...

#include <CBotVar.h>

Inheritance diagram for CBot::CBotVar:
Inheritance graph
[legend]

Public Member Functions

virtual void SetIdent (long UniqId)
 Associates an unique identifier to class instance. More...
 
virtual void ConstructorSet ()
 Called after constructor has been called. More...
 
CBotVarGetStaticVar ()
 If this is a static class variable, return the static var from the class. More...
 
virtual void Update (void *pUser)
 Call the class update function. More...
 
void SetUniqNum (long n)
 Set unique identifier of this variable Note: For classes, this is unique within the class only - see CBotClass:AddItem. More...
 
long GetUniqNum ()
 Return unique identifier of this variable Note: For classes, this is unique within the class only - see CBotClass:AddItem. More...
 
- Public Member Functions inherited from CBot::CBotLinkedList< CBotVar >
virtual ~CBotLinkedList ()
 Destructor. Be careful, destroys the whole linked list! More...
 
CBotVarGetNext ()
 Returns the next variable in the linked list. More...
 
void AddNext (CBotVar *elem)
 Appends a new element at the end of the linked list. More...
 

Static Public Member Functions

static long NextUniqNum ()
 Generate next unique identifier. More...
 

Protected Attributes

CBotTokenm_token
 The corresponding token, defines the variable name. More...
 
CBotTypResult m_type
 Type of value. More...
 
InitType m_binit
 Initialization status. More...
 
CBotVarClassm_pMyThis
 Corresponding this element (TODO: ?) More...
 
void * m_pUserPtr
 User pointer if specified. More...
 
bool m_bStatic
 true if the variable is static (for classes) More...
 
ProtectionLevel m_mPrivate
 Element protection level - public, protected or private (for classes) More...
 
CBotInstrm_InitExpr
 Expression describing initial value. More...
 
CBotInstrm_LimExpr
 Expression describing array limit. More...
 
long m_ident
 Identifier. More...
 
- Protected Attributes inherited from CBot::CBotLinkedList< CBotVar >
CBotVarm_next
 

Static Protected Attributes

static long m_identcpt = 0
 TODO: ? More...
 

Friends

class CBotStack
 
class CBotCStack
 
class CBotInstrCall
 
class CBotProgram
 
class CBotClass
 
class CBotVarClass
 
class CBotVarPointer
 
class CBotVarArray
 

Creation / destruction

 CBotVar ()
 Constructor. Do not call directly, use CBotVar::Create() More...
 
 CBotVar (const CBotToken &name)
 Constructor. Do not call directly, use CBotVar::Create() More...
 
virtual ~CBotVar ()
 Destructor. Do not call directly, use CBotVar::Destroy() More...
 
static CBotVarCreate (const std::string &name, CBotTypResult type)
 Creates a new variable from a type described by CBotTypResult. More...
 
static CBotVarCreate (const std::string &name, CBotClass *pClass)
 Creates a new variable of a given class type. More...
 
static CBotVarCreate (const CBotToken &name, CBotType type)
 Creates a new variable of a given type. More...
 
static CBotVarCreate (const CBotToken &name, CBotTypResult type)
 Create a new variable of a given type described by CBotTypResult. More...
 
static CBotVarCreate (const std::string &name, CBotType type, CBotClass *pClass)
 Create a new variable of a given type of given class instance. More...
 
static CBotVarCreate (CBotVar *pVar)
 Create a new variable of the same type and name as another one. More...
 
static void Destroy (CBotVar *var)
 Destroy a variable. More...
 

User pointer

void SetUserPtr (void *pUser)
 Set a custom pointer associated with this variable. More...
 
void * GetUserPtr ()
 Returns the custom pointer associated with this variable. More...
 

Variable name and type

enum  GetTypeMode { NORMAL = 0, CLASS_AS_POINTER = 1, CLASS_AS_INTRINSIC = 2 }
 Mode for GetType() and GetTypResult() More...
 
std::string GetName ()
 Returns the name of the variable. More...
 
void SetName (const std::string &name)
 SetName Changes the name of the variable. More...
 
CBotTokenGetToken ()
 Returns the CBotToken this variable is associated with. More...
 
CBotType GetType (GetTypeMode mode=GetTypeMode::NORMAL)
 GetType Returns the base type of the variable (CBotType) More...
 
CBotTypResult GetTypResult (GetTypeMode mode=GetTypeMode::NORMAL)
 Returns the complete type of the variable (CBotTypResult) More...
 
void SetType (CBotTypResult &type)
 Change type of this variable. More...
 
virtual void SetClass (CBotClass *pClass)
 Set class this variable is instance of. More...
 
virtual CBotClassGetClass ()
 Return class this variable is instance of. More...
 

Initialization status

enum  InitType : int { InitType::UNDEF = 0, InitType::DEF = 1, InitType::IS_POINTER = 2, InitType::IS_NAN = 999 }
 Variable initialization status. More...
 
void SetInit (InitType initType)
 Changes variable init status. More...
 
InitType GetInit () const
 Returns the current init state of the variable. More...
 
bool IsUndefined () const
 Checks if the variable is currently "undefined". More...
 
bool IsDefined () const
 Checks if the variable is currently "defined". More...
 
bool IsNAN () const
 Checks if the variable is currently NAN. More...
 

Class member properties

enum  ProtectionLevel { ProtectionLevel::Public = 0, ProtectionLevel::ReadOnly = 1, ProtectionLevel::Protected = 2, ProtectionLevel::Private = 3 }
 Class member protection level (public/protected/private) More...
 
void SetStatic (bool bStatic)
 Marks the variable as "static". More...
 
bool IsStatic ()
 Checks if the variable is static. More...
 
void SetPrivate (ProtectionLevel mPrivate)
 Sets variable protection level. More...
 
bool IsPrivate (ProtectionLevel level=ProtectionLevel::Protected)
 Checks if the variable is accessible at the given protection level. More...
 
ProtectionLevel GetPrivate ()
 Get variable protection level. More...
 
bool IsElemOfClass (const std::string &name)
 Check if a variable belongs to a class with a given name. More...
 

Class / array member access

virtual CBotVarGetItem (const std::string &name)
 Returns class member by name. More...
 
virtual CBotVarGetItemRef (int nIdent)
 Returns class member by unique ID. More...
 
virtual CBotVarGetItem (int index, bool grow=false)
 Returns element of the array by index. More...
 
virtual CBotVarGetItemList ()
 Return all elements of this variable as a linked list. Works for both classes and arrays. More...
 

Value management

Always make sure that the variable has correct type before calling these functions!

Some variable types have multiple getters/setters and do automatic conversion.

Using one that is not implemented will result in a failed assertion.

 operator int ()
 
 operator float ()
 
 operator std::string ()
 
void operator= (const CBotVar &var)
 
void operator= (int x)
 
void operator= (float x)
 
void operator= (const std::string &x)
 
void SetVal (CBotVar *var)
 Set the value. More...
 
virtual void Copy (CBotVar *pSrc, bool bName=true)
 Copy from another variable. More...
 
virtual void SetValInt (int val, const std::string &name="")
 Set value as an integer. More...
 
virtual void SetValFloat (float val)
 Set value as float. More...
 
virtual void SetValString (const std::string &val)
 Set value as string. More...
 
virtual int GetValInt ()
 Get value as integer. More...
 
virtual float GetValFloat ()
 Get value as float. More...
 
virtual std::string GetValString ()
 Get value as string. More...
 
virtual void SetPointer (CBotVar *p)
 Set value for pointer types. More...
 
virtual CBotVarClassGetPointer ()
 Get value for pointer types. More...
 

Math operations

All these functions operate on the "left" variable, taking "right" as the argument.

The C++ equivalent would be the +=, -=, *=, /= etc. operations

virtual void Add (CBotVar *left, CBotVar *right)
 Addition. More...
 
virtual void Sub (CBotVar *left, CBotVar *right)
 Subtraction. More...
 
virtual void Mul (CBotVar *left, CBotVar *right)
 Multiplication. More...
 
virtual CBotError Div (CBotVar *left, CBotVar *right)
 Division. More...
 
virtual CBotError Modulo (CBotVar *left, CBotVar *right)
 Modulo (remainder of division) More...
 
virtual void Power (CBotVar *left, CBotVar *right)
 Power. More...
 

Comparation functions

virtual bool Lo (CBotVar *left, CBotVar *right)
 left < right More...
 
virtual bool Hi (CBotVar *left, CBotVar *right)
 left > right More...
 
virtual bool Ls (CBotVar *left, CBotVar *right)
 left <= right More...
 
virtual bool Hs (CBotVar *left, CBotVar *right)
 left >= right More...
 
virtual bool Eq (CBotVar *left, CBotVar *right)
 left == right More...
 
virtual bool Ne (CBotVar *left, CBotVar *right)
 left != right More...
 

Logical or bitwise functions

Can be either depending on variable type.

For boolean, those are logical functions, for int they are bitwise.

virtual void And (CBotVar *left, CBotVar *right)
 left && right or left & right More...
 
virtual void Or (CBotVar *left, CBotVar *right)
 left || right or left | right More...
 
virtual void XOr (CBotVar *left, CBotVar *right)
 left ^ right (also for boolean!) More...
 
virtual void Not ()
 !this or ~this More...
 

Bitwise shift

virtual void ASR (CBotVar *left, CBotVar *right)
 left >> right More...
 
virtual void SR (CBotVar *left, CBotVar *right)
 left >>> right More...
 
virtual void SL (CBotVar *left, CBotVar *right)
 left << right More...
 

Negation / increment / decrement

virtual void Neg ()
 -this More...
 
virtual void Inc ()
 ++this More...
 
virtual void Dec ()
 –this More...
 

Save / restore state

virtual bool Save0State (FILE *pf)
 Save common variable header (name, type, etc.) More...
 
virtual bool Save1State (FILE *pf)
 Save variable data. More...
 
static bool RestoreState (FILE *pf, CBotVar *&pVar)
 Restore variable. More...
 

Detailed Description

A CBot variable.

Member Enumeration Documentation

Mode for GetType() and GetTypResult()

enum CBot::CBotVar::InitType : int
strong

Variable initialization status.

See also
GetInit()
Enumerator
UNDEF 

the variable value is currently not defined

DEF 

the variable value is defined

IS_POINTER 

the variable value is as a pointer

IS_NAN 

the variable value is NAN

Class member protection level (public/protected/private)

Enumerator
Public 

public variable

ReadOnly 

read only (can't be set from CBot, only from the engine)

Protected 

protected

Private 

private

Constructor & Destructor Documentation

CBot::CBotVar::CBotVar ( )

Constructor. Do not call directly, use CBotVar::Create()

CBot::CBotVar::CBotVar ( const CBotToken name)

Constructor. Do not call directly, use CBotVar::Create()

CBot::CBotVar::~CBotVar ( )
virtual

Destructor. Do not call directly, use CBotVar::Destroy()

Member Function Documentation

CBotVar * CBot::CBotVar::Create ( const std::string &  name,
CBotTypResult  type 
)
static

Creates a new variable from a type described by CBotTypResult.

Parameters
nameVariable name
typeVariable type
CBotVar * CBot::CBotVar::Create ( const std::string &  name,
CBotClass pClass 
)
static

Creates a new variable of a given class type.

This is equivalent to:

CBotVar::Create(name, CBotTypResult(CBotTypClass, pClass))
Parameters
nameVariable name
pClassClass type
CBotVar * CBot::CBotVar::Create ( const CBotToken name,
CBotType  type 
)
static

Creates a new variable of a given type.

This is equivalent to:

CBotVar::Create(name, CBotTypResult(type))
Parameters
nameVariable name token
typeVariable type
CBotVar * CBot::CBotVar::Create ( const CBotToken name,
CBotTypResult  type 
)
static

Create a new variable of a given type described by CBotTypResult.

Parameters
nameVariable name token
typeVariable type
CBotVar * CBot::CBotVar::Create ( const std::string &  name,
CBotType  type,
CBotClass pClass 
)
static

Create a new variable of a given type of given class instance.

This is equivalent to:

Create(name, CBotTypResult(type, pClass))
Parameters
nameVariable name
typeVariable type
pClassClass
Returns
CBotVar * CBot::CBotVar::Create ( CBotVar pVar)
static

Create a new variable of the same type and name as another one.

Contents of the variable are NOT copied.

Parameters
pVarother variable to take type and name from
void CBot::CBotVar::Destroy ( CBotVar var)
static

Destroy a variable.

Parameters
varvariable to be destroyed
void CBot::CBotVar::SetIdent ( long  UniqId)
virtual

Associates an unique identifier to class instance.

Used only by classes

Parameters
UniqIdNew unique identifier
See also
SetUniqNum() for another identifier, used for all variable types

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

void CBot::CBotVar::SetUserPtr ( void *  pUser)

Set a custom pointer associated with this variable.

Parameters
pUsercustom pointer to set
void * CBot::CBotVar::GetUserPtr ( )

Returns the custom pointer associated with this variable.

Returns
A pointer set with SetUserPtr()
std::string CBot::CBotVar::GetName ( )

Returns the name of the variable.

Returns
The name of the variable, empty string if unknown
void CBot::CBotVar::SetName ( const std::string &  name)

SetName Changes the name of the variable.

Parameters
nameNew name
CBotToken * CBot::CBotVar::GetToken ( )

Returns the CBotToken this variable is associated with.

This token is either passed in CBotVar::Create() or created from name string

CBotType CBot::CBotVar::GetType ( GetTypeMode  mode = GetTypeMode::NORMAL)

GetType Returns the base type of the variable (CBotType)

Parameters
modeMode, see GetTypeMode enum
CBotTypResult CBot::CBotVar::GetTypResult ( GetTypeMode  mode = GetTypeMode::NORMAL)

Returns the complete type of the variable (CBotTypResult)

Parameters
modeMode, see GetTypeMode enum
void CBot::CBotVar::SetType ( CBotTypResult type)

Change type of this variable.

Parameters
typenew type
void CBot::CBotVar::SetClass ( CBotClass pClass)
virtual

Set class this variable is instance of.

Used by instance variables, NOT class members

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

CBotClass * CBot::CBotVar::GetClass ( )
virtual

Return class this variable is instance of.

Used by instance variables, NOT class members

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

void CBot::CBotVar::SetInit ( CBotVar::InitType  initType)

Changes variable init status.

Parameters
initTypeNew init status
CBotVar::InitType CBot::CBotVar::GetInit ( ) const

Returns the current init state of the variable.

bool CBot::CBotVar::IsUndefined ( ) const
inline

Checks if the variable is currently "undefined".

See also
InitType::UNDEF
bool CBot::CBotVar::IsDefined ( ) const
inline

Checks if the variable is currently "defined".

See also
InitType::DEF
bool CBot::CBotVar::IsNAN ( ) const
inline

Checks if the variable is currently NAN.

Returns
InitType::NAN
void CBot::CBotVar::SetStatic ( bool  bStatic)

Marks the variable as "static".

Useful only for class members

Parameters
bStaticstatic or not
bool CBot::CBotVar::IsStatic ( )

Checks if the variable is static.

Useful only for class members

Returns
true for static variables
void CBot::CBotVar::SetPrivate ( ProtectionLevel  mPrivate)

Sets variable protection level.

Useful only for class members

Parameters
mPrivateNew protection level
bool CBot::CBotVar::IsPrivate ( ProtectionLevel  level = ProtectionLevel::Protected)

Checks if the variable is accessible at the given protection level.

This means that the variable protection level is greater or equal to given level

Parameters
levelProtection level to check access at
CBotVar::ProtectionLevel CBot::CBotVar::GetPrivate ( )

Get variable protection level.

Returns
Variable protection level
bool CBot::CBotVar::IsElemOfClass ( const std::string &  name)

Check if a variable belongs to a class with a given name.

Works correctly with inheritance.

Parameters
nameClass name to check
Returns
true if this variable name matches any member of given class or any of the parent classes
void CBot::CBotVar::ConstructorSet ( )
virtual

Called after constructor has been called.

This is used internally by the engine to mark the constructor as called.

This allows the destructor to be called later.

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

CBotVar * CBot::CBotVar::GetStaticVar ( )

If this is a static class variable, return the static var from the class.

Returns
Static variable from CBotClass instance if this variable is static, or this otherwise
void CBot::CBotVar::Update ( void *  pUser)
virtual

Call the class update function.

Parameters
pUserUser pointer to pass to the update function
See also
CBotClass::SetUpdateFunc()

Reimplemented in CBot::CBotVarPointer, and CBot::CBotVarClass.

void CBot::CBotVar::SetUniqNum ( long  n)

Set unique identifier of this variable Note: For classes, this is unique within the class only - see CBotClass:AddItem.

Parameters
nNew identifier
long CBot::CBotVar::GetUniqNum ( )

Return unique identifier of this variable Note: For classes, this is unique within the class only - see CBotClass:AddItem.

Returns
unique identifier
See also
SetUniqNum()
long CBot::CBotVar::NextUniqNum ( )
static

Generate next unique identifier.

Used by both variables (CBotVar) and functions (CBotFunction)

CBotVar * CBot::CBotVar::GetItem ( const std::string &  name)
virtual

Returns class member by name.

Parameters
nameName of member to get
Returns
CBotVar representing the class member

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

CBotVar * CBot::CBotVar::GetItemRef ( int  nIdent)
virtual

Returns class member by unique ID.

Parameters
nIdentUnique ID of the class member to return
Returns
CBotVar representing the class member
See also
GetUniqNum()

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarPointer.

CBotVar * CBot::CBotVar::GetItem ( int  index,
bool  grow = false 
)
virtual

Returns element of the array by index.

TODO: Appears to be also implemented in CBotVarClass, but I'm not sure what is it used for there. Looks like CBotVarArray stores data internally in CBotVarClass or something like that. Needs futher investigation.

Parameters
indexIndex of the element to get
growtrue to grow the array automatically if the index is out of range
Returns
CBotVar representing the array element, or nullptr on error (for example going out of range)

Reimplemented in CBot::CBotVarClass, and CBot::CBotVarArray.

CBotVar * CBot::CBotVar::GetItemList ( )
virtual

Return all elements of this variable as a linked list. Works for both classes and arrays.

Returns
CBotVar representing the first object in the linked list. Use CBotVar::GetNext() to access next ones.

Reimplemented in CBot::CBotVarClass, CBot::CBotVarArray, and CBot::CBotVarPointer.

void CBot::CBotVar::SetVal ( CBotVar var)

Set the value.

Parameters
varAnother variable to copy value from
void CBot::CBotVar::Copy ( CBotVar pSrc,
bool  bName = true 
)
virtual
void CBot::CBotVar::SetValInt ( int  val,
const std::string &  name = "" 
)
virtual

Set value as an integer.

This one should be used for boolean values, too

Parameters
valNew value
nameUsed when you assign a constant value - makes the value appear as "name" instead of number in the debugger

Reimplemented in CBot::CBotVarNumberBase< T, type >, CBot::CBotVarNumberBase< bool, CBotTypBoolean >, CBot::CBotVarNumberBase< float, type >, CBot::CBotVarNumberBase< int, type >, CBot::CBotVarString, and CBot::CBotVarInt.

void CBot::CBotVar::SetValFloat ( float  val)
virtual
void CBot::CBotVar::SetValString ( const std::string &  val)
virtual
int CBot::CBotVar::GetValInt ( )
virtual
float CBot::CBotVar::GetValFloat ( )
virtual
std::string CBot::CBotVar::GetValString ( )
virtual

Get value as string.

This one is supported by most types of variables.

Automatically converts the value to string if needed.

Returns
Current value

Reimplemented in CBot::CBotVarValue< T, type >, CBot::CBotVarValue< std::string, CBotTypString >, CBot::CBotVarValue< bool, type >, CBot::CBotVarValue< float, type >, CBot::CBotVarValue< int, type >, CBot::CBotVarClass, CBot::CBotVarArray, CBot::CBotVarPointer, and CBot::CBotVarInt.

void CBot::CBotVar::SetPointer ( CBotVar p)
virtual

Set value for pointer types.

Parameters
pVariable to point to

Reimplemented in CBot::CBotVarPointer, and CBot::CBotVarArray.

CBotVarClass * CBot::CBotVar::GetPointer ( )
virtual

Get value for pointer types.

Returns
Variable that this variable points to

Reimplemented in CBot::CBotVarClass, CBot::CBotVarPointer, and CBot::CBotVarArray.

void CBot::CBotVar::Add ( CBotVar left,
CBotVar right 
)
virtual
void CBot::CBotVar::Sub ( CBotVar left,
CBotVar right 
)
virtual
void CBot::CBotVar::Mul ( CBotVar left,
CBotVar right 
)
virtual
CBotError CBot::CBotVar::Div ( CBotVar left,
CBotVar right 
)
virtual
CBotError CBot::CBotVar::Modulo ( CBotVar left,
CBotVar right 
)
virtual
void CBot::CBotVar::Power ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Lo ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Hi ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Ls ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Hs ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Eq ( CBotVar left,
CBotVar right 
)
virtual
bool CBot::CBotVar::Ne ( CBotVar left,
CBotVar right 
)
virtual
void CBot::CBotVar::And ( CBotVar left,
CBotVar right 
)
virtual

left && right or left & right

Reimplemented in CBot::CBotVarInt, and CBot::CBotVarBoolean.

void CBot::CBotVar::Or ( CBotVar left,
CBotVar right 
)
virtual

left || right or left | right

Reimplemented in CBot::CBotVarInt, and CBot::CBotVarBoolean.

void CBot::CBotVar::XOr ( CBotVar left,
CBotVar right 
)
virtual

left ^ right (also for boolean!)

Reimplemented in CBot::CBotVarInt, and CBot::CBotVarBoolean.

void CBot::CBotVar::Not ( )
virtual

!this or ~this

Reimplemented in CBot::CBotVarInt, and CBot::CBotVarBoolean.

void CBot::CBotVar::ASR ( CBotVar left,
CBotVar right 
)
virtual

left >> right

Reimplemented in CBot::CBotVarInt.

void CBot::CBotVar::SR ( CBotVar left,
CBotVar right 
)
virtual

left >>> right

This is unsigned shift to right

Reimplemented in CBot::CBotVarInt.

void CBot::CBotVar::SL ( CBotVar left,
CBotVar right 
)
virtual

left << right

Reimplemented in CBot::CBotVarInt.

void CBot::CBotVar::Neg ( )
virtual
void CBot::CBotVar::Inc ( )
virtual
void CBot::CBotVar::Dec ( )
virtual
bool CBot::CBotVar::Save0State ( FILE *  pf)
virtual

Save common variable header (name, type, etc.)

Parameters
pffile pointer
Returns
false on write error

Reimplemented in CBot::CBotVarInt.

bool CBot::CBotVar::Save1State ( FILE *  pf)
virtual

Save variable data.

Overriden in child classes

Parameters
pffile pointer
Returns
false on write error

Reimplemented in CBot::CBotVarString, CBot::CBotVarPointer, CBot::CBotVarClass, CBot::CBotVarArray, CBot::CBotVarInt, CBot::CBotVarBoolean, and CBot::CBotVarFloat.

bool CBot::CBotVar::RestoreState ( FILE *  pf,
CBotVar *&  pVar 
)
static

Restore variable.

Parameters
pffile pointer
[out]pVarPointer to recieve the variable
Returns
false on read error

Member Data Documentation

CBotToken* CBot::CBotVar::m_token
protected

The corresponding token, defines the variable name.

CBotTypResult CBot::CBotVar::m_type
protected

Type of value.

InitType CBot::CBotVar::m_binit
protected

Initialization status.

CBotVarClass* CBot::CBotVar::m_pMyThis
protected

Corresponding this element (TODO: ?)

void* CBot::CBotVar::m_pUserPtr
protected

User pointer if specified.

See also
SetUserPtr()
GetUserPtr()
bool CBot::CBotVar::m_bStatic
protected

true if the variable is static (for classes)

ProtectionLevel CBot::CBotVar::m_mPrivate
protected

Element protection level - public, protected or private (for classes)

CBotInstr* CBot::CBotVar::m_InitExpr
protected

Expression describing initial value.

CBotInstr* CBot::CBotVar::m_LimExpr
protected

Expression describing array limit.

long CBot::CBotVar::m_ident
protected

Identifier.

See also
SetUniqNum()
GetUniqNum()
long CBot::CBotVar::m_identcpt = 0
staticprotected

TODO: ?


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