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)
 
RexxObject * getVariableValue ()
 
RexxObject * getResolvedValue ()
 
RexxString * getName ()
 
void setName (RexxString *name)
 
void reset (RexxString *name)
 
void setCreator (RexxActivation *creatorActivation)
 
RexxVariable * getNext ()
 
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 ()
 
void setInRexxPackage ()
 
bool isInRexxPackage ()
 
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 ()
 
RexxBehaviour * getObjectType ()
 
bool isObjectType (RexxBehaviour *b)
 
bool isObjectType (size_t t)
 
bool isSameType (RexxInternalObject *o)
 
void setBehaviour (RexxBehaviour *b)
 
virtual RexxObject * makeProxy (RexxEnvelope *)
 
virtual RexxObject * copy ()
 
virtual RexxObject * evaluate (RexxActivation *, RexxExpressionStack *)
 
virtual RexxObject * getValue (RexxActivation *)
 
virtual RexxObject * getValue (RexxVariableDictionary *)
 
virtual RexxObject * getRealValue (RexxActivation *)
 
virtual RexxObject * getRealValue (RexxVariableDictionary *)
 
virtual void uninit ()
 
virtual HashCode hash ()
 
virtual HashCode getHashValue ()
 
HashCode identityHash ()
 
virtual bool truthValue (int)
 
virtual bool logicalValue (logical_t &)
 
virtual RexxString * makeString ()
 
virtual RexxText * makeText ()
 
virtual void copyIntoTail (RexxCompoundTail *buffer)
 
virtual RexxString * primitiveMakeString ()
 
virtual RexxText * primitiveMakeText ()
 
virtual RexxArray * makeArray ()
 
virtual RexxString * stringValue ()
 
virtual RexxText * textValue ()
 
virtual RexxInteger * integerValue (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 RexxNumberString * numberString ()
 
virtual bool isEqual (RexxObject *)
 
virtual bool isInstanceOf (RexxClass *)
 
virtual RexxMethod * instanceMethod (RexxString *)
 
virtual RexxSupplier * instanceMethods (RexxClass *)
 
virtual RexxObject * dynamicTarget (RexxObject **arguments, size_t count, size_t named_count)
 
void hasUninit ()
 
void removedUninit ()
 
void printObject ()
 
RexxObject * clone ()
 
- Public Member Functions inherited from RexxVirtualBase
virtual RexxObject * unflatten (RexxEnvelope *)
 

Static Public Member Functions

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

Protected Attributes

RexxString * variable_name
 
RexxObject * variableValue
 
RexxActivation * creator
 
RexxIdentityTable * dependents
 

Additional Inherited Members

- Public Attributes inherited from RexxInternalObject
ObjectHeader header
 
RexxBehaviour * behaviour
 
- 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: