#include <ContextClass.hpp>
Static Public Member Functions | |
static void | createInstance () |
Static Public Member Functions inherited from RexxObject | |
static void | decodeMessageName (RexxObject *target, RexxObject *message, RexxString *&messageName, RexxObject *&startScope) |
static void | createInstance () |
Static Public Member Functions inherited from RexxInternalObject | |
static size_t | getObjectHeaderSize () |
Static Public Attributes | |
static RexxClass * | classInstance = OREF_NULL |
Static Public Attributes inherited from RexxObject | |
static PCPPM | operatorMethods [] |
static RexxClass * | classInstance = OREF_NULL |
Protected Member Functions | |
void | checkValid () |
Protected Member Functions inherited from RexxVirtualBase | |
virtual | ~RexxVirtualBase () |
virtual void | baseVirtual () |
Protected Attributes | |
RexxActivation * | activation |
Additional Inherited Members | |
Public Attributes inherited from RexxInternalObject | |
ObjectHeader | header |
RexxBehaviour * | behaviour |
Definition at line 53 of file ContextClass.hpp.
RexxContext::RexxContext | ( | RexxActivation * | a | ) |
Constructor for a RexxContext object.
a | The activation we're attached to. |
Definition at line 80 of file ContextClass.cpp.
References activation.
|
inline |
Definition at line 66 of file ContextClass.hpp.
|
protected |
Check that the backing RexxActivation is still available.
Definition at line 155 of file ContextClass.cpp.
References activation, Error_Execution_context_not_active, OREF_NULL, and reportException().
Referenced by getArgs(), getCondition(), getDigits(), getDigitsPropagate(), getExecutable(), getForm(), getFuzz(), getLine(), getName(), getNamedArgs(), getPackage(), getParentContextObject(), getRS(), getStackFrames(), getVariables(), and setArgs().
RexxObject * RexxContext::copyRexx | ( | ) |
An override for the copy method to keep RexxContext objects from being copied.
Definition at line 144 of file ContextClass.cpp.
References Error_Unsupported_copy_method, reportException(), and TheNilObject.
Referenced by RexxMemory::createImage().
|
static |
Create initial bootstrap objects
Definition at line 55 of file ContextClass.cpp.
References CLASS_CREATE.
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 95 of file ContextClass.hpp.
References activation, and OREF_NULL.
Referenced by RexxActivation::termination().
|
virtual |
Reimplemented from RexxObject.
Definition at line 122 of file ContextClass.cpp.
References cleanUpFlatten, OREF_NULL, and setUpFlatten.
RexxObject * RexxContext::getArgs | ( | ) |
Return the positional arguments used to invoke the current context
Definition at line 255 of file ContextClass.cpp.
References activation, checkValid(), RexxActivation::getMethodArgumentCount(), and RexxActivation::getMethodArgumentList().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getCondition | ( | ) |
Return the current executable condition information
Definition at line 323 of file ContextClass.cpp.
References activation, checkValid(), RexxObject::copy(), RexxActivation::getConditionObj(), OREF_NULL, and TheNilObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getDigits | ( | ) |
Return the current digits setting for the running context
Definition at line 182 of file ContextClass.cpp.
References activation, checkValid(), RexxActivation::digits(), and new_integer().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getDigitsPropagate | ( | ) |
Return the current digits propagate setting for the running context
Definition at line 194 of file ContextClass.cpp.
References activation, checkValid(), RexxActivation::propagateNumericSettings(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getExecutable | ( | ) |
Return the executable backing the current context
Definition at line 243 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivationBase::getExecutable().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getForm | ( | ) |
Return the current form setting for the running context
Definition at line 218 of file ContextClass.cpp.
References activation, checkValid(), RexxActivation::form(), and Numerics::FORM_SCIENTIFIC.
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getFuzz | ( | ) |
Return the current fuzz setting for the running context
Definition at line 206 of file ContextClass.cpp.
References activation, checkValid(), RexxActivation::fuzz(), and new_integer().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getLine | ( | ) |
Return the execution context current line position.
Definition at line 337 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getContextLine().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getName | ( | ) |
Retrieve the name associated with the current context. If this is the top level, then the name of the package is returned. For internal call contexts, the label name is returned, and for routines or methods, the name used to invoke the code is returned.
Definition at line 375 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getCallname().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getNamedArgs | ( | ) |
Return the named arguments used to invoke the current context
Definition at line 269 of file ContextClass.cpp.
References activation, checkValid(), RexxDirectory::fromIndexItemArray(), RexxActivation::getMethodArgumentCount(), RexxActivation::getMethodArgumentList(), RexxActivation::getMethodNamedArgumentCount(), new_directory(), and OREF_NULL.
Referenced by RexxMemory::createImage().
PackageClass * RexxContext::getPackage | ( | ) |
Return the package object for the code that's currently executing.
Definition at line 170 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getPackage().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getParentContextObject | ( | ) |
Definition at line 359 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getParentContextObject().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getRS | ( | ) |
Return the execution context return status
Definition at line 349 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getContextReturnStatus().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getStackFrames | ( | ) |
Retrieve the stack frames from the current context.
Definition at line 386 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getStackFrames().
Referenced by RexxMemory::createImage().
RexxObject * RexxContext::getVariables | ( | ) |
Return a supplier for all of the variables in the current context.
Definition at line 231 of file ContextClass.cpp.
References activation, checkValid(), and RexxActivation::getAllLocalVariables().
Referenced by RexxMemory::createImage(), and RexxBlock::RexxBlock().
|
virtual |
Reimplemented from RexxObject.
Definition at line 104 of file ContextClass.cpp.
References activation, and memory_mark.
|
virtual |
Reimplemented from RexxObject.
Definition at line 113 of file ContextClass.cpp.
References activation, and memory_mark_general.
RexxObject * RexxContext::newRexx | ( | RexxObject ** | args, |
size_t | argc, | ||
size_t | named_argc | ||
) |
The Rexx accessible class NEW method. This raises an error because RexxContext objects can only be created by the internal interpreter.
args | The NEW args |
argc | The count of arguments |
Definition at line 96 of file ContextClass.cpp.
References Error_Unsupported_new_method, reportException(), and TheNilObject.
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 59 of file ContextClass.hpp.
|
inline |
Definition at line 57 of file ContextClass.hpp.
void * RexxContext::operator new | ( | size_t | size | ) |
Allocate a new RexxContext object
size | The size of the object. |
Definition at line 68 of file ContextClass.cpp.
References new_object(), and T_RexxContext.
|
inline |
Definition at line 56 of file ContextClass.hpp.
RexxObject * RexxContext::setArgs | ( | RexxObject * | positionalArguments, |
RexxObject ** | named_arglist, | ||
size_t | named_argcount | ||
) |
Set the positional & named arguments used to invoke the current context
Definition at line 288 of file ContextClass.cpp.
References activation, ARG_ONE, arrayArgument(), checkValid(), Error_Execution_user_defined, NamedArguments::match(), OREF_NULL, reportException(), RexxObject::requestDirectory(), RexxActivation::setArguments(), and TheNilObject.
Referenced by RexxMemory::createImage().
|
protected |
Definition at line 103 of file ContextClass.hpp.
Referenced by checkValid(), detach(), getArgs(), getCondition(), getDigits(), getDigitsPropagate(), getExecutable(), getForm(), getFuzz(), getLine(), getName(), getNamedArgs(), getPackage(), getParentContextObject(), getRS(), getStackFrames(), getVariables(), live(), liveGeneral(), RexxContext(), and setArgs().
Definition at line 98 of file ContextClass.hpp.