RexxVariable Class Reference

#include <RexxVariable.hpp>

Inheritance diagram for RexxVariable:
[legend]

Public Member Functions

void * operator new (size_t size, void *ptr)
 
void operator delete (void *)
 
void operator delete (void *, void *)
 
 RexxVariable ()
 
 RexxVariable (RESTORETYPE restoreType)
 
void live (size_t)
 
void liveGeneral (int reason)
 
void flatten (RexxEnvelope *)
 
void inform (RexxActivity *)
 
void drop ()
 
void notify ()
 
void uninform (RexxActivity *)
 
void set (RexxObject *value)
 
RexxObjectgetVariableValue ()
 
RexxObjectgetResolvedValue ()
 
RexxStringgetName ()
 
void setName (RexxString *name)
 
void reset (RexxString *name)
 
void setCreator (RexxActivation *creatorActivation)
 
RexxVariablegetNext ()
 
void cache (RexxVariable *next)
 
bool isLocal (RexxActivation *act)
 
bool isStem ()
 
- Public Member Functions inherited from RexxInternalObject
void * operator new (size_t, RexxClass *)
 
void * operator new (size_t, RexxClass *, RexxObject **, size_t, size_t)
 
void * operator new (size_t size, void *ptr)
 
void operator delete (void *)
 
void operator delete (void *p, void *ptr)
 
 RexxInternalObject ()
 
 RexxInternalObject (RESTORETYPE restoreType)
 
virtual ~RexxInternalObject ()
 
 operator RexxObject * ()
 
size_t getObjectSize ()
 
void setObjectSize (size_t s)
 
size_t getObjectDataSize ()
 
void * getObjectDataSpace ()
 
void clearObject ()
 
void clearObject (size_t l)
 
void setVirtualFunctions (void *t)
 
void setInitHeader (size_t s, size_t markword)
 
void setInitHeader (size_t markword)
 
void setObjectLive (size_t markword)
 
void setHasReferences ()
 
void setHasNoReferences ()
 
bool hasReferences ()
 
bool hasNoReferences ()
 
void setPrimitive ()
 
void setNonPrimitive ()
 
bool isPrimitive ()
 
bool isNonPrimitive ()
 
bool isObjectMarked (size_t markword)
 
void setObjectMark (size_t markword)
 
void clearObjectMark ()
 
bool isObjectLive (size_t mark)
 
bool isObjectDead (size_t mark)
 
bool isOldSpace ()
 
bool isNewSpace ()
 
void setNewSpace ()
 
void setOldSpace ()
 
void makeProxiedObject ()
 
bool isProxyObject ()
 
bool isSubClassOrEnhanced ()
 
bool isBaseClass ()
 
size_t getObjectTypeNumber ()
 
RexxBehaviourgetObjectType ()
 
bool isObjectType (RexxBehaviour *b)
 
bool isObjectType (size_t t)
 
bool isSameType (RexxInternalObject *o)
 
void setBehaviour (RexxBehaviour *b)
 
virtual RexxObjectmakeProxy (RexxEnvelope *)
 
virtual RexxObjectcopy ()
 
virtual RexxObjectevaluate (RexxActivation *, RexxExpressionStack *)
 
virtual RexxObjectgetValue (RexxActivation *)
 
virtual RexxObjectgetValue (RexxVariableDictionary *)
 
virtual RexxObjectgetRealValue (RexxActivation *)
 
virtual RexxObjectgetRealValue (RexxVariableDictionary *)
 
virtual void uninit ()
 
virtual HashCode hash ()
 
virtual HashCode getHashValue ()
 
HashCode identityHash ()
 
virtual bool truthValue (int)
 
virtual bool logicalValue (logical_t &)
 
virtual RexxStringmakeString ()
 
virtual void copyIntoTail (RexxCompoundTail *buffer)
 
virtual RexxStringprimitiveMakeString ()
 
virtual RexxArraymakeArray ()
 
virtual RexxStringstringValue ()
 
virtual RexxIntegerintegerValue (size_t)
 
virtual bool numberValue (wholenumber_t &result, size_t precision)
 
virtual bool numberValue (wholenumber_t &result)
 
virtual bool unsignedNumberValue (stringsize_t &result, size_t precision)
 
virtual bool unsignedNumberValue (stringsize_t &result)
 
virtual bool doubleValue (double &result)
 
virtual RexxNumberStringnumberString ()
 
virtual bool isEqual (RexxObject *)
 
virtual bool isInstanceOf (RexxClass *)
 
virtual RexxMethodinstanceMethod (RexxString *)
 
virtual RexxSupplierinstanceMethods (RexxClass *)
 
void hasUninit ()
 
void removedUninit ()
 
void printObject ()
 
RexxObjectclone ()
 
- Public Member Functions inherited from RexxVirtualBase
virtual RexxObjectunflatten (RexxEnvelope *)
 

Static Public Member Functions

static RexxVariablenewInstance (RexxString *name)
 
- Static Public Member Functions inherited from RexxInternalObject
static size_t getObjectHeaderSize ()
 

Protected Attributes

RexxStringvariable_name
 
RexxObjectvariableValue
 
RexxActivationcreator
 
RexxIdentityTabledependents
 

Additional Inherited Members

- Public Attributes inherited from RexxInternalObject
ObjectHeader header
 
RexxBehaviourbehaviour
 
- Protected Member Functions inherited from RexxVirtualBase
virtual ~RexxVirtualBase ()
 
virtual void baseVirtual ()
 

Detailed Description

Definition at line 49 of file RexxVariable.hpp.

Constructor & Destructor Documentation

◆ RexxVariable() [1/2]

RexxVariable::RexxVariable ( )
inline

Definition at line 55 of file RexxVariable.hpp.

◆ RexxVariable() [2/2]

RexxVariable::RexxVariable ( RESTORETYPE  restoreType)
inline

Definition at line 56 of file RexxVariable.hpp.

Member Function Documentation

◆ cache()

void RexxVariable::cache ( RexxVariable next)
inline

Definition at line 89 of file RexxVariable.hpp.

References OREF_NULL, reset(), and variableValue.

Referenced by RexxActivation::cacheLocalVariable().

◆ drop()

◆ flatten()

void RexxVariable::flatten ( RexxEnvelope envelope)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 69 of file RexxVariable.cpp.

References cleanUpFlatten, flatten_reference, and setUpFlatten.

◆ getName()

◆ getNext()

RexxVariable* RexxVariable::getNext ( )
inline

Definition at line 88 of file RexxVariable.hpp.

References variableValue.

Referenced by RexxActivation::newLocalVariable().

◆ getResolvedValue()

RexxObject* RexxVariable::getResolvedValue ( )
inline

Definition at line 73 of file RexxVariable.hpp.

References OREF_NULL, variable_name, and variableValue.

◆ getVariableValue()

◆ inform()

◆ isLocal()

bool RexxVariable::isLocal ( RexxActivation act)
inline

Definition at line 90 of file RexxVariable.hpp.

References creator.

Referenced by RexxActivation::cleanupLocalVariables().

◆ isStem()

bool RexxVariable::isStem ( )
inline

Definition at line 91 of file RexxVariable.hpp.

References RexxString::endsWith(), and variable_name.

Referenced by RexxNativeActivation::fetchNext().

◆ live()

void RexxVariable::live ( size_t  liveMark)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 49 of file RexxVariable.cpp.

References dependents, memory_mark, variable_name, and variableValue.

◆ liveGeneral()

void RexxVariable::liveGeneral ( int  reason)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 59 of file RexxVariable.cpp.

References dependents, memory_mark_general, variable_name, and variableValue.

◆ newInstance()

RexxVariable * RexxVariable::newInstance ( RexxString name)
static

Definition at line 149 of file RexxVariable.cpp.

References creator, dependents, new_object(), OREF_NULL, T_Variable, variable_name, and variableValue.

Referenced by new_variable().

◆ notify()

◆ operator delete() [1/2]

void RexxVariable::operator delete ( void *  )
inline

Definition at line 52 of file RexxVariable.hpp.

◆ operator delete() [2/2]

void RexxVariable::operator delete ( void *  ,
void *   
)
inline

Definition at line 53 of file RexxVariable.hpp.

◆ operator new()

void* RexxVariable::operator new ( size_t  size,
void *  ptr 
)
inline

Definition at line 51 of file RexxVariable.hpp.

◆ reset()

void RexxVariable::reset ( RexxString name)
inline

Definition at line 77 of file RexxVariable.hpp.

References creator, dependents, OREF_NULL, variable_name, and variableValue.

Referenced by cache(), and RexxActivation::newLocalVariable().

◆ set()

◆ setCreator()

void RexxVariable::setCreator ( RexxActivation creatorActivation)
inline

Definition at line 87 of file RexxVariable.hpp.

References creator.

Referenced by RexxActivation::newLocalVariable().

◆ setName()

void RexxVariable::setName ( RexxString name)
inline

Definition at line 75 of file RexxVariable.hpp.

References OrefSet, and variable_name.

◆ uninform()

Member Data Documentation

◆ creator

RexxActivation* RexxVariable::creator
protected

Definition at line 99 of file RexxVariable.hpp.

Referenced by isLocal(), newInstance(), reset(), and setCreator().

◆ dependents

◆ variable_name

◆ variableValue


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