#include <ExpressionStack.hpp>
Public Member Functions | |
void * | operator new (size_t size, void *ptr) |
RexxExpressionStack (RexxObject **frames, size_t items) | |
RexxExpressionStack () | |
void | live (size_t) |
void | liveGeneral (int reason) |
void | flatten (RexxEnvelope *) |
void | migrate (RexxActivity *) |
void | setFrame (RexxObject **frames, size_t items) |
void | send (RexxString *message, RexxObject *scope, size_t count, size_t namedCount, ProtectedObject &result) |
void | send (RexxString *message, size_t count, size_t namedCount, ProtectedObject &result) |
void | push (RexxObject *value) |
RexxObject * | pop () |
RexxObject * | fastPop () |
RexxArray * | argumentArray (size_t count) |
RexxObject ** | arguments (size_t count) |
void | replace (size_t offset, RexxObject *value) |
size_t | getSize () |
RexxObject * | getTop () |
void | operatorResult (RexxObject *value) |
void | prefixResult (RexxObject *value) |
void | popn (size_t c) |
void | clear () |
RexxObject * | peek (size_t v) |
RexxObject ** | pointer (size_t v) |
size_t | location () |
void | setTop (size_t v) |
void | toss () |
RexxObject ** | getFrame () |
Protected Attributes | |
size_t | size |
RexxObject ** | top |
RexxObject ** | stack |
Definition at line 53 of file ExpressionStack.hpp.
|
inline |
Definition at line 57 of file ExpressionStack.hpp.
|
inline |
|
inline |
Definition at line 73 of file ExpressionStack.hpp.
References top.
|
inline |
Definition at line 74 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionFunction::evaluate(), and RexxInstructionCall::execute().
|
inline |
Definition at line 81 of file ExpressionStack.hpp.
Referenced by RexxInstructionGuard::execute(), and RexxActivation::run().
|
inline |
Definition at line 72 of file ExpressionStack.hpp.
References top.
void RexxExpressionStack::flatten | ( | RexxEnvelope * | envelope | ) |
Definition at line 79 of file ExpressionStack.cpp.
References cleanUpFlatten, flatten_reference, setUpFlatten, stack, and top.
|
inline |
Definition at line 87 of file ExpressionStack.hpp.
References stack.
Referenced by RexxActivation::run(), and RexxActivation::termination().
|
inline |
Definition at line 76 of file ExpressionStack.hpp.
References size.
|
inline |
Definition at line 77 of file ExpressionStack.hpp.
References top.
void RexxExpressionStack::live | ( | size_t | liveMark | ) |
Definition at line 52 of file ExpressionStack.cpp.
References memory_mark, stack, and top.
Referenced by RexxActivation::live().
void RexxExpressionStack::liveGeneral | ( | int | reason | ) |
Definition at line 66 of file ExpressionStack.cpp.
References memory_mark_general, stack, and top.
Referenced by RexxActivation::liveGeneral().
|
inline |
Definition at line 84 of file ExpressionStack.hpp.
Referenced by RexxExpressionFunction::evaluate(), RexxExpressionList::evaluate(), and RexxTarget::init().
void RexxExpressionStack::migrate | ( | RexxActivity * | activity | ) |
Definition at line 99 of file ExpressionStack.cpp.
References RexxActivity::allocateStackFrame(), size, and stack.
Referenced by RexxActivation::run().
|
inline |
Definition at line 56 of file ExpressionStack.hpp.
|
inline |
Definition at line 78 of file ExpressionStack.hpp.
References top.
Referenced by RexxBinaryOperator::evaluate().
|
inline |
Definition at line 82 of file ExpressionStack.hpp.
References top.
|
inline |
Definition at line 83 of file ExpressionStack.hpp.
References top.
|
inline |
Definition at line 71 of file ExpressionStack.hpp.
References top.
Referenced by RexxActivation::callExternalRexx(), RexxInstructionUseStrict::executeNamedArguments(), RexxInstructionUseStrict::executePositionalArguments(), and RexxTrigger::parse().
|
inline |
Definition at line 80 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionMessage::assign(), RexxExpressionMessage::evaluate(), and RexxInstructionMessage::execute().
|
inline |
Definition at line 79 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionMessage::evaluate(), and RexxUnaryOperator::evaluate().
|
inline |
Definition at line 70 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionMessage::assign(), RexxActivation::callExternalRexx(), RexxSourceLiteral::evaluate(), RexxInteger::evaluate(), RexxNumberString::evaluate(), RexxString::evaluate(), RexxCompoundVariable::evaluate(), RexxDotVariable::evaluate(), RexxExpressionFunction::evaluate(), RexxExpressionList::evaluate(), RexxExpressionMessage::evaluate(), RexxStemVariable::evaluate(), RexxParseVariable::evaluate(), RexxInstructionCall::execute(), RexxInstructionMessage::execute(), RexxInstructionParse::execute(), RexxInstructionRaise::execute(), RexxActivation::internalCallTrap(), RexxVariableReference::list(), RexxTarget::next(), and RexxDirectory::pushAllIndexesItemsTo().
|
inline |
Definition at line 75 of file ExpressionStack.hpp.
References top.
Referenced by RexxInstructionForward::execute().
|
inline |
Definition at line 66 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionMessage::assign(), RexxExpressionMessage::evaluate(), and RexxInstructionMessage::execute().
|
inline |
Definition at line 68 of file ExpressionStack.hpp.
References top.
|
inline |
Definition at line 64 of file ExpressionStack.hpp.
References OREF_NULL, size, stack, and top.
Referenced by RexxActivity::allocateStackFrame().
|
inline |
Definition at line 85 of file ExpressionStack.hpp.
Referenced by RexxExpressionFunction::evaluate(), RexxExpressionList::evaluate(), and RexxTarget::next().
|
inline |
Definition at line 86 of file ExpressionStack.hpp.
References top.
Referenced by RexxExpressionMessage::assign(), RexxExpressionMessage::evaluate(), RexxInstructionCall::execute(), RexxInstructionForward::execute(), RexxInstructionMessage::execute(), and RexxVariableReference::list().
|
protected |
Definition at line 91 of file ExpressionStack.hpp.
Referenced by getSize(), migrate(), RexxExpressionStack(), and setFrame().
|
protected |
Definition at line 93 of file ExpressionStack.hpp.
Referenced by clear(), flatten(), getFrame(), live(), liveGeneral(), location(), migrate(), RexxExpressionStack(), setFrame(), and setTop().
|
protected |
Definition at line 92 of file ExpressionStack.hpp.
Referenced by argumentArray(), arguments(), clear(), fastPop(), flatten(), getTop(), live(), liveGeneral(), location(), operatorResult(), peek(), pointer(), pop(), popn(), prefixResult(), push(), replace(), RexxExpressionStack(), send(), setFrame(), setTop(), and toss().