RexxExpressionOperator Class Reference

#include <ExpressionOperator.hpp>

Inheritance diagram for RexxExpressionOperator:
[legend]

Public Member Functions

 RexxExpressionOperator ()
 
 RexxExpressionOperator (int, RexxObject *, RexxObject *)
 
 RexxExpressionOperator (RESTORETYPE restoreType)
 
void live (size_t)
 
void liveGeneral (int reason)
 
void flatten (RexxEnvelope *)
 
const char * operatorName ()
 
- 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 ()
 
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 RexxTextmakeText ()
 
virtual void copyIntoTail (RexxCompoundTail *buffer)
 
virtual RexxStringprimitiveMakeString ()
 
virtual RexxTextprimitiveMakeText ()
 
virtual RexxArraymakeArray ()
 
virtual RexxStringstringValue ()
 
virtual RexxTexttextValue ()
 
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 *)
 
virtual RexxObjectdynamicTarget (RexxObject **arguments, size_t count, size_t named_count)
 
void hasUninit ()
 
void removedUninit ()
 
void printObject ()
 
RexxObjectclone ()
 
- Public Member Functions inherited from RexxVirtualBase
virtual RexxObjectunflatten (RexxEnvelope *)
 

Protected Attributes

int oper
 
RexxObjectright_term
 
RexxObjectleft_term
 

Static Protected Attributes

static const char * operatorNames []
 

Additional Inherited Members

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

Detailed Description

Definition at line 47 of file ExpressionOperator.hpp.

Constructor & Destructor Documentation

◆ RexxExpressionOperator() [1/3]

RexxExpressionOperator::RexxExpressionOperator ( )
inline

Definition at line 49 of file ExpressionOperator.hpp.

◆ RexxExpressionOperator() [2/3]

RexxExpressionOperator::RexxExpressionOperator ( int  op,
RexxObject left,
RexxObject right 
)

Definition at line 87 of file ExpressionOperator.cpp.

References left_term, oper, OrefSet, and right_term.

◆ RexxExpressionOperator() [3/3]

RexxExpressionOperator::RexxExpressionOperator ( RESTORETYPE  restoreType)
inline

Definition at line 52 of file ExpressionOperator.hpp.

Member Function Documentation

◆ flatten()

void RexxExpressionOperator::flatten ( RexxEnvelope envelope)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 157 of file ExpressionOperator.cpp.

References cleanUpFlatten, flatten_reference, and setUpFlatten.

◆ live()

void RexxExpressionOperator::live ( size_t  liveMark)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 139 of file ExpressionOperator.cpp.

References left_term, memory_mark, and right_term.

◆ liveGeneral()

void RexxExpressionOperator::liveGeneral ( int  reason)
virtual

Reimplemented from RexxVirtualBase.

Definition at line 148 of file ExpressionOperator.cpp.

References left_term, memory_mark_general, and right_term.

◆ operatorName()

const char* RexxExpressionOperator::operatorName ( )
inline

Definition at line 57 of file ExpressionOperator.hpp.

References oper, and operatorNames.

Referenced by RexxBinaryOperator::evaluate(), and RexxUnaryOperator::evaluate().

Member Data Documentation

◆ left_term

RexxObject* RexxExpressionOperator::left_term
protected

◆ oper

int RexxExpressionOperator::oper
protected

◆ operatorNames

const char * RexxExpressionOperator::operatorNames
staticprotected

Definition at line 61 of file ExpressionOperator.hpp.

Referenced by operatorName().

◆ right_term

RexxObject* RexxExpressionOperator::right_term
protected

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