#include <ObjectClass.hpp>
Static Public Member Functions | |
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 PCPPM | operatorMethods [] |
static RexxClass * | classInstance = OREF_NULL |
Additional Inherited Members | |
Public Attributes inherited from RexxInternalObject | |
ObjectHeader | header |
RexxBehaviour * | behaviour |
Protected Member Functions inherited from RexxVirtualBase | |
virtual | ~RexxVirtualBase () |
virtual void | baseVirtual () |
Definition at line 323 of file ObjectClass.hpp.
|
inline |
Definition at line 339 of file ObjectClass.hpp.
Referenced by newObject(), and newRexx().
|
inline |
Definition at line 344 of file ObjectClass.hpp.
|
inlinevirtual |
Definition at line 380 of file ObjectClass.hpp.
void RexxObject::addObjectVariables | ( | RexxVariableDictionary * | dictionary | ) |
Definition at line 2368 of file ObjectClass.cpp.
References OrefSet, and RexxVariableDictionary::setNextDictionary().
Referenced by copyObjectVariables().
|
inline |
Definition at line 491 of file ObjectClass.hpp.
References RexxInternalObject::behaviour.
Referenced by id().
RexxMethod * RexxObject::checkPrivate | ( | RexxMethod * | method | ) |
Definition at line 572 of file ObjectClass.cpp.
References ActivityManager::currentActivity, RexxActivationBase::getReceiver(), RexxMethod::getScope(), RexxActivity::getTopStackFrame(), isInstanceOf(), isOfClassType, and OREF_NULL.
Referenced by messageSend().
RexxClass * RexxObject::classObject | ( | ) |
Definition at line 1630 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, and RexxBehaviour::getOwningClass().
Referenced by RexxMemory::createImage(), RexxString::divide(), RexxString::integerDivide(), isInstanceOf(), RexxString::minus(), RexxString::multiply(), RexxString::plus(), RexxString::power(), RexxString::remainder(), and RexxMemory::runUninits().
|
virtual |
Wrapper around the compareTo() method that validates and extracts integer value.
other | The other comparison object |
Reimplemented in RexxInteger, RexxNumberString, and RexxString.
Definition at line 190 of file ObjectClass.cpp.
References Error_Invalid_whole_number_compareto, Error_No_result_object_message, numberValue(), OREF_NULL, reportException(), and sendMessage().
Referenced by BaseSortComparator::compare(), and RexxString::compareTo().
RexxString * RexxObject::concatBlank | ( | RexxObject * | otherObj | ) |
Blank concatentation operation supported by the Object class. This converts the object into a string form, then asks the converted object to perform the concatenaton.
otherObj | The object to concatenate. |
Definition at line 2693 of file ObjectClass.cpp.
References RexxString::concatBlank(), and REQUEST_STRING().
Referenced by RexxMemory::createImage().
RexxString * RexxObject::concatRexx | ( | RexxObject * | otherObj | ) |
Concatentation operation supported by the Object class. This converts the object into a string form, then asks the converted object to perform the concatenaton.
otherObj | The object to concatenate. |
Definition at line 2676 of file ObjectClass.cpp.
References RexxString::concatRexx(), and REQUEST_STRING().
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxArray, RexxDirectory, RexxList, RexxStem, and RexxHashTableCollection.
Definition at line 524 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, RexxInternalObject::clone(), RexxBehaviour::copy(), copyObjectVariables(), RexxBehaviour::getInstanceMethodDictionary(), OREF_NULL, and RexxInternalObject::setBehaviour().
Referenced by BUILTIN(), RexxArray::copy(), RexxList::copy(), RexxStem::copy(), RexxHashTableCollection::copy(), copyRexx(), RexxVariableDictionary::copyValues(), RexxHashTableCollection::copyValues(), RexxContext::getCondition(), RexxMethod::newScope(), BaseExecutable::setSourceObject(), RexxString::stringTrace(), and RexxString::x2dC2d().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger.
Definition at line 1131 of file ObjectClass.cpp.
References RexxString::copyIntoTail(), and REQUEST_STRING().
Referenced by RexxCompoundTail::buildTail(), and RexxCompoundTail::buildUnresolvedTail().
void RexxObject::copyObjectVariables | ( | RexxObject * | newObject | ) |
Definition at line 549 of file ObjectClass.cpp.
References addObjectVariables(), RexxVariableDictionary::copy(), RexxVariableDictionary::copyValues(), RexxVariableDictionary::getNextDictionary(), and OREF_NULL.
Referenced by copy().
RexxObject * RexxObject::copyRexx | ( | ) |
Definition at line 2733 of file ObjectClass.cpp.
References copy().
Referenced by RexxMemory::createImage().
|
static |
Create initial class object at bootstrap time.
Definition at line 72 of file ObjectClass.cpp.
References CLASS_CREATE.
Referenced by RexxMemory::createImage().
|
static |
A static method that can be used to decode the various message argument varieties used with start(), startWith(), and the Message class new.
message | The input message. This can be a message name or an array containing a message name/startscope pairing. |
messageName | |
startScope |
Definition at line 1965 of file ObjectClass.cpp.
References ARG_ONE, ARG_TWO, arrayArgument(), ActivityManager::currentActivity, Error_Execution_super, Error_Incorrect_method_message, RexxArray::get(), RexxArray::getDimension(), RexxActivationBase::getReceiver(), RexxActivity::getTopStackFrame(), isOfClass, OREF_NULL, reportException(), requiredArgument(), RexxArray::size(), stringArgument(), and RexxString::upper().
Referenced by RexxMessage::newRexx(), send(), sendWith(), and startCommon().
|
virtual |
Reimplemented in RexxClass.
Definition at line 1583 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, RexxString::concatToCstring(), RexxString::getCharC(), RexxClass::getId(), RexxBehaviour::getOwningClass(), and RexxBehaviour::isEnhanced().
Referenced by defaultNameRexx(), RexxActivity::messageSubstitution(), and objectName().
RexxString * RexxObject::defaultNameRexx | ( | ) |
Definition at line 2725 of file ObjectClass.cpp.
References defaultName().
Referenced by RexxMemory::createImage().
|
virtual |
Definition at line 2229 of file ObjectClass.cpp.
References RexxBehaviour::addMethod(), RexxInternalObject::behaviour, RexxBehaviour::copy(), Error_Incorrect_call_list, RexxBehaviour::getInstanceMethodDictionary(), RexxBehaviour::getOwningClass(), RexxString::getStringData(), RexxInternalObject::hasUninit(), IntegerThree, new_string(), RexxMethod::newScope(), OREF_NULL, OrefSet, reportException(), Utilities::strCaselessCompare(), RexxString::strCompare(), TheNilObject, and RexxString::upper().
Referenced by setMethod().
RexxObject * RexxObject::defMethods | ( | RexxDirectory * | methods | ) |
Definition at line 2196 of file ObjectClass.cpp.
References RexxHashTableCollection::available(), RexxInternalObject::behaviour, RexxBehaviour::copy(), RexxBehaviour::define(), RexxHashTableCollection::first(), RexxHashTableCollection::index(), RexxMethod::newScope(), RexxHashTableCollection::next(), OREF_NULL, OrefSet, TheNilObject, RexxString::upper(), and RexxHashTableCollection::value().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, RexxStem, and RexxString.
Definition at line 1046 of file ObjectClass.cpp.
References RexxString::doubleValue(), and requestString().
Referenced by RexxStem::doubleValue(), RexxNativeActivation::getDoubleValue(), and RexxNativeActivation::objectToValue().
RexxObject * RexxObject::equal | ( | RexxObject * | other | ) |
Definition at line 405 of file ObjectClass.cpp.
References ARG_ONE, requiredArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 525 of file ObjectClass.hpp.
References isEqual().
Referenced by RexxStem::findByValue(), RexxArray::findSingleIndexItem(), RexxList::hasItem(), RexxList::index(), RexxQueue::index(), RexxDirectory::indexRexx(), and RexxList::removeItem().
|
virtual |
Reimplemented from RexxVirtualBase.
Reimplemented in RexxArray, RexxBlock, RexxClosure, RexxClass, RexxContext, RexxDirectory, RexxInteger, RexxList, RexxMessage, RexxNumberString, StackFrameClass, RexxStem, RexxHashTableCollection, and WeakReference.
Definition at line 94 of file ObjectClass.cpp.
References cleanUpFlatten, flatten_reference, and setUpFlatten.
Referenced by RexxEnvelope::pack().
void * RexxObject::getCSelf | ( | ) |
Attempt to get a CSELF value from an object instance for a native context.
Definition at line 2802 of file ObjectClass.cpp.
References getObjectVariable(), isInstanceOf(), OREF_NULL, TheBufferClass, and ThePointerClass.
Referenced by RexxNativeActivation::cself().
void * RexxObject::getCSelf | ( | RexxObject * | scope | ) |
Attempt to get a CSELF value from an object instance, starting from a given scope value and checking each of the super scopes for the class
scope | The starting scope for the search. |
Definition at line 2834 of file ObjectClass.cpp.
References getObjectVariable(), isInstanceOf(), OREF_NULL, superScope(), TheBufferClass, TheNilObject, and ThePointerClass.
RexxObject * RexxObject::getObjectVariable | ( | RexxString * | name | ) |
Search through all of the scopes looking for a variable of the given name. This will return the first match.
name | The target name. |
Definition at line 2312 of file ObjectClass.cpp.
References RexxVariableDictionary::getNextDictionary(), OREF_NULL, and RexxVariableDictionary::realValue().
Referenced by getCSelf(), and objectName().
RexxObject * RexxObject::getObjectVariable | ( | RexxString * | name, |
RexxObject * | scope | ||
) |
Definition at line 2331 of file ObjectClass.cpp.
References getObjectVariables(), OREF_NULL, and RexxVariableDictionary::realValue().
RexxVariableDictionary * RexxObject::getObjectVariables | ( | RexxObject * | scope | ) |
Definition at line 2399 of file ObjectClass.cpp.
References RexxVariableDictionary::getNextDictionary(), RexxVariableDictionary::isScope(), new_objectVariableDictionary(), OREF_NULL, OrefSet, RexxInternalObject::setHasReferences(), and RexxVariableDictionary::setNextDictionary().
Referenced by getObjectVariable(), RexxActivation::getObjectVariables(), RexxActivation::getVariableDictionary(), guardOff(), RexxActivation::guardOn(), RexxNativeActivation::guardOn(), guardOn(), RexxNativeActivation::methodVariables(), AttributeGetterCode::run(), AttributeSetterCode::run(), RexxActivation::run(), and setObjectVariable().
void RexxObject::guardOff | ( | RexxActivity * | activity, |
RexxObject * | scope | ||
) |
Release a guard lock on the target object at the given scope.
activity | The activity we're running on. |
scope | The scope that needs to be released. |
Definition at line 2445 of file ObjectClass.cpp.
References getObjectVariables(), and RexxVariableDictionary::release().
Referenced by GuardLock::~GuardLock().
void RexxObject::guardOn | ( | RexxActivity * | activity, |
RexxObject * | scope | ||
) |
Obtain a guard lock on the target object at the given scope.
activity | The activity we're running on. |
scope | The scope that needs to be locked. |
Definition at line 2432 of file ObjectClass.cpp.
References getObjectVariables(), and RexxVariableDictionary::reserve().
Referenced by GuardLock::GuardLock().
|
virtual |
Hash an exported object. Of we're a non-primitive one, this will require us to send the HASHCODE message to request a hash value.
Reimplemented from RexxInternalObject.
Reimplemented in RexxClass.
Definition at line 376 of file ObjectClass.cpp.
References RexxInternalObject::getHashValue(), RexxInternalObject::isBaseClass(), and sendMessage().
Referenced by RexxInteger::hashCode(), RexxNumberString::hashCode(), RexxHashTable::hashIndex(), and RexxHashTable::hashStringIndex().
RexxObject * RexxObject::hashCode | ( | ) |
Default implementation of the HASHCODE method.
Definition at line 360 of file ObjectClass.cpp.
References RexxInternalObject::getHashValue(), and new_string().
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 1621 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, RexxBehaviour::methodLookup(), OREF_NULL, TheFalseObject, and TheTrueObject.
Referenced by RexxInteger::hasMethod(), RexxNumberString::hasMethod(), hasMethodRexx(), hasUninitMethod(), and uninit().
RexxObject * RexxObject::hasMethodRexx | ( | RexxString * | message | ) |
Definition at line 2760 of file ObjectClass.cpp.
References ARG_ONE, hasMethod(), stringArgument(), and RexxString::upper().
Referenced by RexxMemory::createImage().
bool RexxObject::hasUninitMethod | ( | ) |
Definition at line 2520 of file ObjectClass.cpp.
References hasMethod(), and TheTrueObject.
Referenced by RexxClass::subclass().
RexxString * RexxObject::id | ( | void | ) |
Definition at line 2469 of file ObjectClass.cpp.
References behaviourObject(), RexxClass::getId(), RexxBehaviour::getOwningClass(), and OREF_NULL.
Referenced by idString(), RexxMemory::orphanCheckMark(), and requestRexx().
RexxInteger * RexxObject::identityHashRexx | ( | ) |
Return a unique identity hash value for this object. This hash will be unique among the set of currently active Rexx objects.
Definition at line 2502 of file ObjectClass.cpp.
References RexxInternalObject::identityHash(), and new_integer().
Referenced by RexxMemory::createImage().
const char * RexxObject::idString | ( | void | ) |
Definition at line 2453 of file ObjectClass.cpp.
References RexxString::getStringData(), id(), and OREF_NULL.
RexxObject * RexxObject::init | ( | void | ) |
Definition at line 2486 of file ObjectClass.cpp.
References OREF_NULL.
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 366 of file ObjectClass.hpp.
References RexxInternalObject::clearObject(), RexxInternalObject::header, ObjectHeader::initHeader(), RexxInternalObject::setBehaviour(), and RexxInternalObject::setVirtualFunctions().
|
inline |
Definition at line 352 of file ObjectClass.hpp.
References RexxInternalObject::clearObject(), RexxInternalObject::header, ObjectHeader::initHeader(), RexxInternalObject::setBehaviour(), and RexxInternalObject::setVirtualFunctions().
Referenced by RexxMemory::newObject(), RexxMemory::newObjects(), RexxMemory::oldObject(), and RexxMemory::temporaryObject().
|
virtual |
Retrieve the method instance for an object's defined method.
method_name | The method name. |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 273 of file ObjectClass.cpp.
References ARG_ONE, RexxInternalObject::behaviour, RexxBehaviour::getMethodDictionary(), OREF_NULL, stringArgument(), RexxTable::stringGet(), TheNilObject, and RexxString::upper().
Referenced by RexxInteger::instanceMethod(), RexxNumberString::instanceMethod(), instanceMethodRexx(), requestRexx(), and SecurityManager::SecurityManager().
RexxMethod * RexxObject::instanceMethodRexx | ( | RexxString * | method_name | ) |
Retrieve the method instance for an object's defined method.
method_name | The method name. |
Definition at line 332 of file ObjectClass.cpp.
References instanceMethod().
Referenced by RexxMemory::createImage().
|
virtual |
Return a supplier containing the methods implemented by an object. Depending on the argument, this is either A) all of the methods, B) just the explicitly set instance methods, or C) the methods provided by a given class.
class_object | The target class object (optional). |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 317 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, and RexxBehaviour::getMethods().
Referenced by RexxInteger::instanceMethods(), RexxNumberString::instanceMethods(), and instanceMethodsRexx().
RexxSupplier * RexxObject::instanceMethodsRexx | ( | RexxClass * | class_object | ) |
Return a supplier containing the methods implemented by an object. Depending on the argument, this is either A) all of the methods, B) just the explicitly set instance methods, or C) the methods provided by a given class.
class_object | The target class object (optional). |
Definition at line 349 of file ObjectClass.cpp.
References instanceMethods().
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, and RexxStem.
Definition at line 1055 of file ObjectClass.cpp.
References RexxString::integerValue(), and REQUEST_STRING().
Referenced by RexxInstructionDo::controlSetup(), RexxStem::integerValue(), requestInteger(), and requiredInteger().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxClass, RexxInteger, and RexxNumberString.
Definition at line 131 of file ObjectClass.cpp.
References Error_Logical_value_method, Error_No_result_object_message, RexxInternalObject::isBaseClass(), OREF_NULL, reportException(), and sendMessage().
Referenced by EQUAL_VALUE(), and equalValue().
|
virtual |
Test if a Rexx object is an instance of a given class.
other | The other test class. |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 230 of file ObjectClass.cpp.
References classObject(), and RexxClass::isCompatibleWith().
Referenced by checkPrivate(), classArgument(), RexxNativeActivation::findCallerClass(), RexxNativeActivation::findClass(), PackageClass::findClass(), RexxActivation::findClass(), getCSelf(), RexxClass::inherit(), RexxInteger::isInstanceOf(), RexxNumberString::isInstanceOf(), isInstanceOfRexx(), IsOfType(), RexxNativeActivation::objectToValue(), RexxNativeActivation::pointer(), RexxNativeActivation::processArguments(), and RexxClass::subclass().
RexxObject * RexxObject::isInstanceOfRexx | ( | RexxClass * | other | ) |
The Rexx external version of the instance of.
other | The other test class. |
Definition at line 244 of file ObjectClass.cpp.
References ARG_ONE, isInstanceOf(), requiredArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject::koper | ( | operator_plus | ) |
|
virtual |
Reimplemented from RexxVirtualBase.
Reimplemented in RexxArray, RexxBlock, RexxClosure, RexxClass, RexxContext, RexxDirectory, RexxInteger, RexxIntegerClass, RexxList, RexxMessage, RexxNumberString, StackFrameClass, RexxStem, RexxHashTableCollection, and WeakReference.
Definition at line 78 of file ObjectClass.cpp.
References memory_mark.
Referenced by RexxMemory::markObjectsMain().
|
virtual |
Reimplemented from RexxVirtualBase.
Reimplemented in RexxArray, RexxBlock, RexxClosure, RexxClass, RexxContext, RexxDirectory, RexxInteger, RexxIntegerClass, RexxList, RexxMessage, RexxNumberString, StackFrameClass, RexxStem, RexxHashTableCollection, and WeakReference.
Definition at line 86 of file ObjectClass.cpp.
References memory_mark_general.
Referenced by RexxMemory::killOrphans(), RexxEnvelope::puff(), and RexxMemory::saveImage().
|
virtual |
Convert an object to a logical value without raising an error.
result | The converted value. |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, and RexxString.
Definition at line 456 of file ObjectClass.cpp.
References RexxString::logicalValue(), and REQUEST_STRING().
Referenced by RexxNativeActivation::objectToValue().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxArray, RexxDirectory, RexxInteger, RexxList, RexxNumberString, RexxStem, and RexxHashTableCollection.
Definition at line 1159 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), sendMessage(), and TheNilObject.
Referenced by makeArrayRexx(), and requestArray().
RexxObject * RexxObject::makeArrayRexx | ( | ) |
Definition at line 2717 of file ObjectClass.cpp.
References makeArray().
Referenced by RexxMemory::createImage(), RexxMutableBuffer::makeArray(), and RexxString::makeArray().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, and StackFrameClass.
Definition at line 1117 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), sendMessage(), and TheNilObject.
Referenced by RexxMemory::createImage(), makeStringRexx(), RexxMethod::newMethodObject(), RoutineClass::newRoutineObject(), and requiredString().
RexxObject * RexxObject::makeStringRexx | ( | ) |
Definition at line 2709 of file ObjectClass.cpp.
References makeString().
Referenced by RexxMemory::createImage().
RexxObject* RexxObject::mdict | ( | ) |
bool RexxObject::messageSend | ( | RexxString * | msgname, |
RexxObject ** | arguments, | ||
size_t | count, | ||
size_t | named_count, | ||
ProtectedObject & | result, | ||
bool | processUnknown = true |
||
) |
Definition at line 787 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, checkPrivate(), RexxActivity::checkStackSpace(), ActivityManager::currentActivity, RexxMethod::isPrivate(), RexxMethod::isProtected(), RexxMethod::isSpecial(), RexxBehaviour::methodLookup(), OREF_NULL, processProtectedMethod(), processUnknown(), and RexxMethod::run().
Referenced by RexxInteger::andOp(), RexxString::andOp(), RexxNumberString::comp(), RexxString::comp(), RexxString::concatBlank(), RexxString::concatRexx(), RexxNumberString::divide(), RexxString::divide(), RexxActivation::forward(), RexxNativeActivation::forwardMessage(), Interpreter::initLocal(), RexxNumberString::integerDivide(), RexxString::integerDivide(), RexxNumberString::minus(), RexxString::minus(), RexxNumberString::multiply(), RexxString::multiply(), RexxInteger::orOp(), RexxString::orOp(), RexxNumberString::plus(), RexxString::plus(), RexxNumberString::power(), RexxString::power(), RexxNumberString::remainder(), RexxString::remainder(), RexxMessage::send(), send(), sendMessage(), sendWith(), Interpreter::startInterpreter(), RexxString::strictComp(), RexxString::strictEqual(), RexxString::strictNotEqual(), RexxInteger::xorOp(), and RexxString::xorOp().
bool RexxObject::messageSend | ( | RexxString * | msgname, |
RexxObject ** | arguments, | ||
size_t | count, | ||
size_t | named_count, | ||
RexxObject * | startscope, | ||
ProtectedObject & | result, | ||
bool | processUnknown = true |
||
) |
Definition at line 832 of file ObjectClass.cpp.
References checkPrivate(), RexxActivity::checkStackSpace(), ActivityManager::currentActivity, RexxMethod::isPrivate(), RexxMethod::isProtected(), OREF_NULL, processProtectedMethod(), processUnknown(), RexxMethod::run(), and superMethod().
RexxMethod * RexxObject::methodLookup | ( | RexxString * | name | ) |
Definition at line 944 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, and RexxBehaviour::methodLookup().
|
inline |
Definition at line 336 of file ObjectClass.hpp.
References RexxObject().
RexxObject * RexxObject::newRexx | ( | RexxObject ** | arguments, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 2528 of file ObjectClass.cpp.
References RexxObject().
Referenced by RexxMemory::createImage(), and RexxArray::toString().
RexxObject * RexxObject::notEqual | ( | RexxObject * | other | ) |
Definition at line 425 of file ObjectClass.cpp.
References ARG_ONE, requiredArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, and RexxStem.
Definition at line 1065 of file ObjectClass.cpp.
References RexxString::numberString(), and requestString().
Referenced by RexxSource::addText(), RexxNumberString::comp(), RexxString::comp(), RexxSource::constantDirective(), RexxNumberString::divide(), Numerics::int64Object(), RexxNumberString::integerDivide(), RexxNumberString::maxMin(), RexxNumberString::minus(), RexxNumberString::multiply(), RexxStem::numberString(), Numerics::objectToInt64(), Numerics::objectToSignedInteger(), Numerics::objectToStringSize(), Numerics::objectToUnsignedInt64(), Numerics::objectToUnsignedInteger(), Numerics::objectToWholeNumber(), RexxNumberString::plus(), and RexxNumberString::remainder().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, RexxStem, and RexxString.
Definition at line 1019 of file ObjectClass.cpp.
References RexxString::numberValue(), and REQUEST_STRING().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, RexxStem, and RexxString.
Definition at line 1010 of file ObjectClass.cpp.
References RexxString::numberValue(), and REQUEST_STRING().
Referenced by BUILTIN(), RexxActivation::command(), compareTo(), RexxActivity::displayCondition(), RexxActivity::errorNumber(), RexxStem::numberValue(), RexxNumberString::power(), requestNumber(), and requiredNumber().
RexxString * RexxObject::objectName | ( | ) |
Definition at line 1542 of file ObjectClass.cpp.
References defaultName(), getObjectVariable(), RexxMethod::getScope(), RexxInternalObject::isBaseClass(), lastMethod(), OREF_NULL, and sendMessage().
Referenced by RexxMemory::createImage().
RexxObject * RexxObject::objectNameEquals | ( | RexxObject * | name | ) |
Definition at line 1567 of file ObjectClass.cpp.
References ARG_ONE, RexxMethod::getScope(), lastMethod(), OREF_NULL, requiredArgument(), setObjectVariable(), and stringArgument().
Referenced by RexxMemory::createImage().
|
inline |
Definition at line 329 of file ObjectClass.hpp.
|
inline |
Definition at line 330 of file ObjectClass.hpp.
|
inline |
Definition at line 331 of file ObjectClass.hpp.
|
inline |
Definition at line 328 of file ObjectClass.hpp.
|
inline |
Definition at line 327 of file ObjectClass.hpp.
SUBTRACT DIVIDE REMAINDER NULLSTRING BLANK BACKSLASH_EQUAL BACKSLASH_GREATERTHAN BACKSLASH_LESSTHAN LESSTHAN_EQUAL STRICT_BACKSLASH_EQUAL STRICT_BACKSLASH_GREATERTHAN STRICT_BACKSLASH_LESSTHAN STRICT_LESSTHAN_EQUAL GREATERTHAN_LESSTHAN OR BACKSLASH void * RexxObject::operator new | ( | size_t | size, |
RexxClass * | classObject | ||
) |
Definition at line 2633 of file ObjectClass.cpp.
References RexxInternalObject::hasUninit(), new_object(), and RexxInternalObject::setBehaviour().
void * RexxObject::operator new | ( | size_t | size, |
RexxClass * | classObject, | ||
RexxObject ** | args, | ||
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 2654 of file ObjectClass.cpp.
|
inline |
Definition at line 338 of file ObjectClass.hpp.
RexxString * RexxObject::oref | ( | ) |
Definition at line 2016 of file ObjectClass.cpp.
References new_string().
RexxObject* RexxObject::pmdict | ( | ) |
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 1143 of file ObjectClass.cpp.
References TheNilObject.
Referenced by requestString(), and requestStringNoNOSTRING().
void RexxObject::processProtectedMethod | ( | RexxString * | messageName, |
RexxMethod * | targetMethod, | ||
RexxObject ** | arguments, | ||
size_t | count, | ||
size_t | named_count, | ||
ProtectedObject & | result | ||
) |
Definition at line 876 of file ObjectClass.cpp.
References SecurityManager::checkProtectedMethod(), ActivityManager::currentActivity, RexxActivity::getEffectiveSecurityManager(), and RexxMethod::run().
Referenced by messageSend().
void RexxObject::processUnknown | ( | RexxString * | messageName, |
RexxObject ** | arguments, | ||
size_t | count, | ||
size_t | named_count, | ||
ProtectedObject & | result | ||
) |
Definition at line 899 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, ActivityManager::currentActivity, RexxDirectory::fromIndexItemArray(), RexxBehaviour::methodLookup(), new_array(), OREF_NULL, RexxArray::put(), reportNomethod(), RexxMethod::run(), and TheNilObject.
Referenced by messageSend().
RexxArray * RexxObject::requestArray | ( | ) |
Definition at line 1515 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), isOfClass, makeArray(), and sendMessage().
Referenced by arrayArgument(), RexxMethod::newMethodObject(), RoutineClass::newRoutineObject(), and REQUEST_ARRAY().
RexxDirectory * RexxObject::requestDirectory | ( | ) |
Definition at line 1533 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), isOfClass, and sendMessage().
Referenced by RoutineClass::callWithRexx(), RexxInstructionForward::execute(), run(), sendWith(), RexxContext::setArgs(), startWith(), and RexxStem::unknown().
RexxInteger * RexxObject::requestInteger | ( | size_t | precision | ) |
Definition at line 1345 of file ObjectClass.cpp.
References RexxString::integerValue(), integerValue(), RexxInternalObject::isBaseClass(), and requestString().
Referenced by RexxSource::addText(), and REQUEST_INTEGER().
bool RexxObject::requestNumber | ( | wholenumber_t & | result, |
size_t | precision | ||
) |
Request an object to convert itself into a number value.
result | The numeric result value. |
precision | The precision used for the conversion. |
Definition at line 1403 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), and numberValue().
Referenced by RexxInstructionDo::controlSetup(), RexxInstructionDo::execute(), optionalIntegerArg(), requiredIntegerArg(), and RexxSource::traceNew().
RexxObject * RexxObject::requestRexx | ( | RexxString * | className | ) |
Definition at line 1699 of file ObjectClass.cpp.
References ARG_ONE, RexxString::concatToCstring(), id(), instanceMethod(), sendMessage(), RexxString::strictEqual(), stringArgument(), TheNilObject, TheTrueObject, and RexxString::upper().
Referenced by RexxMemory::createImage().
RexxString * RexxObject::requestString | ( | ) |
Definition at line 1172 of file ObjectClass.cpp.
References ActivityManager::currentActivity, Error_No_result_object_message, RexxInternalObject::isBaseClass(), OREF_NULL, primitiveMakeString(), RexxActivity::raiseCondition(), reportException(), sendMessage(), stringValue(), and TheNilObject.
Referenced by RexxString::createNumberString(), InternalActivationFrame::createStackFrame(), RexxNativeActivation::createStackFrame(), doubleValue(), RexxActivation::formatSourcelessTraceLine(), RexxString::hash(), RexxString::logicalValue(), RexxMethod::newRexx(), numberString(), RexxString::numberString(), RexxString::numberValue(), optionalStringArg(), RexxNativeActivation::processArguments(), REQUEST_STRING(), requestInteger(), requiredStringArg(), RexxActivation::RexxActivation(), RexxActivation::traceEntry(), RexxString::truthValue(), and RexxString::unsignedNumberValue().
RexxString * RexxObject::requestStringNoNOSTRING | ( | ) |
Definition at line 1234 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), primitiveMakeString(), sendMessage(), stringValue(), and TheNilObject.
bool RexxObject::requestUnsignedNumber | ( | stringsize_t & | result, |
size_t | precision | ||
) |
Request an object to convert itself into a number value.
result | The numeric result value. |
precision | The precision used for the conversion. |
Definition at line 1427 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), and unsignedNumberValue().
Referenced by RexxInstructionNumeric::execute(), RexxTrigger::integerTrigger(), RexxSource::optionsDirective(), and RexxSource::useNew().
RexxInteger * RexxObject::requiredInteger | ( | RexxString * | kind, |
size_t | position, | ||
size_t | precision | ||
) |
Definition at line 1364 of file ObjectClass.cpp.
References Error_Incorrect_method_whole, RexxString::integerValue(), integerValue(), RexxInternalObject::isBaseClass(), reportException(), requiredString(), and TheNilObject.
stringsize_t RexxObject::requiredNonNegative | ( | RexxString * | kind, |
size_t | position, | ||
size_t | precision = Numerics::ARGUMENT_DIGITS |
||
) |
Definition at line 1495 of file ObjectClass.cpp.
References Error_Incorrect_method_nonnegative, reportException(), and unsignedNumberValue().
Referenced by RexxArray::allIndexes(), RexxArray::allItems(), RexxString::copies(), RexxArray::createMultidimensional(), RexxArray::operator new(), optionalNonNegative(), RexxList::section(), RexxQueue::section(), RexxArray::sectionRexx(), and RexxArray::supplier().
wholenumber_t RexxObject::requiredNumber | ( | RexxString * | kind, |
size_t | position, | ||
size_t | precision = Numerics::ARGUMENT_DIGITS |
||
) |
Definition at line 1443 of file ObjectClass.cpp.
References Error_Incorrect_method_whole, RexxInternalObject::isBaseClass(), isOfClass, numberValue(), reportException(), and requiredString().
stringsize_t RexxObject::requiredPositive | ( | RexxString * | kind, |
size_t | position, | ||
size_t | precision = Numerics::ARGUMENT_DIGITS |
||
) |
Definition at line 1475 of file ObjectClass.cpp.
References Error_Incorrect_method_positive, reportException(), and unsignedNumberValue().
Referenced by RexxArray::dimension(), RexxArray::extendMulti(), optionalPositive(), and RexxArray::validateIndex().
RexxString * RexxObject::requiredString | ( | ) |
Handle a string request for a required string value where the caller wishes to handle the error itself.
Definition at line 1330 of file ObjectClass.cpp.
References RexxInternalObject::isBaseClass(), makeString(), and sendMessage().
Referenced by requiredInteger(), and requiredNumber().
RexxString * RexxObject::requiredString | ( | RexxString * | kind, |
const char * | name | ||
) |
Definition at line 1296 of file ObjectClass.cpp.
References Error_Invalid_argument_string, RexxInternalObject::isBaseClass(), makeString(), reportException(), sendMessage(), and TheNilObject.
RexxString * RexxObject::requiredString | ( | RexxString * | kind, |
size_t | position | ||
) |
Definition at line 1268 of file ObjectClass.cpp.
References Error_Incorrect_method_nostring, RexxInternalObject::isBaseClass(), makeString(), reportException(), sendMessage(), and TheNilObject.
Referenced by RexxArray::toString().
RexxObject * RexxObject::run | ( | RexxObject ** | arguments, |
size_t | argumentsCount, | ||
size_t | named_argumentsCount | ||
) |
Definition at line 2038 of file ObjectClass.cpp.
References RexxDirectory::appendAllIndexesItemsTo(), ARG_ONE, ARG_THREE, ARG_TWO, NamedArguments::check(), RexxArray::copy(), ActivityManager::currentActivity, RexxArray::data(), Error_Execution_user_defined, Error_Incorrect_method_maxarg, Error_Incorrect_method_noarray, Error_Incorrect_method_option, RexxString::getCharC(), RexxArray::getDimension(), IntegerOne, IntegerThree, isOfClass, RexxDirectory::items(), missingArgument(), new_array(), RexxMethod::newMethodObject(), RexxMethod::newScope(), OREF_NULL, reportException(), REQUEST_ARRAY(), requestDirectory(), requiredArgument(), RexxMethod::run(), RexxArray::size(), stringArgument(), and TheNilObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxObject::send | ( | RexxObject ** | arguments, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Do a dynamic invocation of an object method.
arguments | The variable arguments passed to the method. The first argument is a required message target, which can be either a string method name or an array containing a name/scope pair. The remainder of the arguments are the message arguments. |
argCount |
Definition at line 1818 of file ObjectClass.cpp.
References ARG_ONE, decodeMessageName(), messageSend(), missingArgument(), and OREF_NULL.
Referenced by RexxMemory::createImage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxArray * | arguments, | ||
RexxDirectory * | named_arguments, | ||
ProtectedObject & | result | ||
) |
Definition at line 676 of file ObjectClass.cpp.
References RexxDirectory::appendAllIndexesItemsTo(), RexxArray::copy(), RexxArray::data(), messageSend(), new_array(), OREF_NULL, RexxArray::size(), and TheNilObject.
Referenced by BUILTIN(), SecurityManager::callSecurityManager(), RexxList::classOf(), RexxActivation::closeStreams(), WithSortComparator::compare(), compareTo(), RexxArray::createMultidimensional(), RexxClass::enhanced(), Interpreter::getCurrentQueue(), hash(), RexxString::hash(), ClassDirective::install(), ExtensionDirective::install(), RexxClass::isEqual(), RexxInteger::isEqual(), RexxNumberString::isEqual(), isEqual(), RexxString::isEqual(), RexxActivity::lineIn(), makeArray(), makeString(), RexxClass::methodDictionaryCreate(), RexxClass::methods(), RexxMethod::newFileRexx(), RoutineClass::newFileRexx(), RexxIdentityTable::newRexx(), RexxList::newRexx(), RexxMessage::newRexx(), RexxMethod::newRexx(), RexxMutableBufferClass::newRexx(), RexxQueue::newRexx(), RexxRelation::newRexx(), RoutineClass::newRexx(), RexxStem::newRexx(), RexxSupplierClass::newRexx(), RexxTable::newRexx(), WeakReference::newRexx(), RexxClass::newRexx(), RexxDirectory::newRexx(), RexxActivation::novalueHandler(), objectName(), RexxArray::of(), RexxQueue::ofRexx(), RexxArray::operator new(), RexxSource::processInstall(), RexxActivity::pullInput(), RexxActivity::queue(), RexxStem::request(), RexxDirectory::requestArray(), RexxList::requestArray(), requestArray(), RexxTable::requestArray(), requestDirectory(), requestRexx(), requestString(), requestStringNoNOSTRING(), requiredString(), RexxActivation::resolveStream(), RexxSourceLiteral::RexxSourceLiteral(), MessageDispatcher::run(), RexxActivity::sayOutput(), RexxList::sectionSubclass(), RexxQueue::sectionSubclass(), RexxArray::sectionSubclass(), sendMessage(), stringValue(), RexxClass::subclass(), RexxActivity::traceInput(), RexxActivity::traceOutput(), uninit(), RexxInteger::unknown(), RexxNumberString::unknown(), and RexxStem::unknown().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxArray * | args, | ||
RexxDirectory * | named_args = OREF_NULL |
||
) |
Definition at line 615 of file ObjectClass.cpp.
References sendMessage().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2 | ||
) |
Definition at line 644 of file ObjectClass.cpp.
References sendMessage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
ProtectedObject & | result | ||
) |
Definition at line 707 of file ObjectClass.cpp.
References messageSend().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3 | ||
) |
Definition at line 652 of file ObjectClass.cpp.
References sendMessage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3, | ||
ProtectedObject & | result | ||
) |
Definition at line 724 of file ObjectClass.cpp.
References messageSend().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3, | ||
RexxObject * | argument4 | ||
) |
Definition at line 660 of file ObjectClass.cpp.
References sendMessage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3, | ||
RexxObject * | argument4, | ||
ProtectedObject & | result | ||
) |
Definition at line 743 of file ObjectClass.cpp.
References messageSend().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3, | ||
RexxObject * | argument4, | ||
RexxObject * | argument5 | ||
) |
Definition at line 668 of file ObjectClass.cpp.
References sendMessage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
RexxObject * | argument2, | ||
RexxObject * | argument3, | ||
RexxObject * | argument4, | ||
RexxObject * | argument5, | ||
ProtectedObject & | result | ||
) |
Definition at line 764 of file ObjectClass.cpp.
References messageSend().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message | ) |
Definition at line 629 of file ObjectClass.cpp.
References sendMessage().
|
inline |
Definition at line 461 of file ObjectClass.hpp.
References messageSend(), and OREF_NULL.
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject ** | args, | ||
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Definition at line 622 of file ObjectClass.cpp.
References sendMessage().
|
inline |
Definition at line 459 of file ObjectClass.hpp.
References messageSend().
RexxObject * RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1 | ||
) |
Definition at line 636 of file ObjectClass.cpp.
References sendMessage().
void RexxObject::sendMessage | ( | RexxString * | message, |
RexxObject * | argument1, | ||
ProtectedObject & | result | ||
) |
Definition at line 700 of file ObjectClass.cpp.
References messageSend().
RexxObject * RexxObject::sendWith | ( | RexxObject * | message, |
RexxArray * | arguments, | ||
RexxObject ** | named_arglist, | ||
size_t | named_argcount | ||
) |
Do a dynamic invocation of an object method.
message | The target message. This can be either a string message name or a string/scope pair to do a qualified invocation. |
arguments | An array of arguments to used with the message invocation. |
Definition at line 1744 of file ObjectClass.cpp.
References RexxDirectory::appendAllIndexesItemsTo(), ARG_TWO, arrayArgument(), NamedArguments::check(), RexxArray::copy(), RexxArray::data(), decodeMessageName(), Error_Execution_user_defined, RexxDirectory::items(), messageSend(), OREF_NULL, reportException(), requestDirectory(), RexxArray::size(), and TheNilObject.
Referenced by RexxMemory::createImage().
RexxObject* RexxObject::setMdict | ( | RexxObject * | ) |
RexxObject * RexxObject::setMethod | ( | RexxString * | msgname, |
RexxMethod * | methobj, | ||
RexxString * | a = OREF_NULL |
||
) |
Definition at line 1639 of file ObjectClass.cpp.
References ARG_ONE, ARG_THREE, defMethod(), Error_Incorrect_call_list, RexxString::getStringData(), IntegerThree, IntegerTwo, isOfClass, new_string(), RexxMethod::newMethodObject(), OREF_NULL, reportException(), Utilities::strCaselessCompare(), stringArgument(), TheNilObject, and RexxString::upper().
Referenced by RexxMemory::createImage().
void RexxObject::setObjectVariable | ( | RexxString * | name, |
RexxObject * | value, | ||
RexxObject * | scope | ||
) |
Definition at line 2350 of file ObjectClass.cpp.
References getObjectVariables(), OREF_NULL, and RexxVariableDictionary::set().
Referenced by objectNameEquals().
RexxMessage * RexxObject::start | ( | RexxObject ** | arguments, |
size_t | argCount, | ||
size_t | named_argCount | ||
) |
Run a message send in another thread.
arguments | The list of arguments. This is an open-ended argument list. The first argument is the message, the remaining arguments are the message arguments. |
argCount | The number of arguments we were invoked with. |
Definition at line 1914 of file ObjectClass.cpp.
References ARG_ONE, missingArgument(), requiredArgument(), and startCommon().
Referenced by RexxArray::arraycopy(), RexxStem::arraycopy(), and RexxMemory::createImage().
RexxMessage * RexxObject::startCommon | ( | RexxObject * | message, |
RexxObject ** | arguments, | ||
size_t | argCount, | ||
size_t | named_argCount | ||
) |
A common method to process either a start() or a startWith() method call.
message | The message name (which might be an array form) |
arguments | The array of arguments. |
argCount | The number of passed arguments. |
Definition at line 1939 of file ObjectClass.cpp.
References decodeMessageName(), OREF_NULL, and RexxMessage::start().
Referenced by start(), and startWith().
RexxMessage * RexxObject::startWith | ( | RexxObject * | message, |
RexxArray * | arguments, | ||
RexxObject ** | named_arglist, | ||
size_t | named_argcount | ||
) |
Perform a start() using arguments provided in an array wrapper.
message | The target message. This can be either a string, or an array containing a string/scope coupling. |
arguments | The message arguments. |
Definition at line 1854 of file ObjectClass.cpp.
References RexxDirectory::appendAllIndexesItemsTo(), ARG_ONE, ARG_TWO, arrayArgument(), NamedArguments::check(), RexxArray::copy(), RexxArray::data(), Error_Execution_user_defined, RexxDirectory::items(), OREF_NULL, reportException(), requestDirectory(), requiredArgument(), RexxArray::size(), startCommon(), and TheNilObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxObject::strictEqual | ( | RexxObject * | other | ) |
Definition at line 394 of file ObjectClass.cpp.
References ARG_ONE, requiredArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxObject * RexxObject::strictNotEqual | ( | RexxObject * | other | ) |
Definition at line 416 of file ObjectClass.cpp.
References ARG_ONE, requiredArgument(), TheFalseObject, and TheTrueObject.
Referenced by RexxMemory::createImage().
RexxString * RexxObject::stringRexx | ( | ) |
Definition at line 2701 of file ObjectClass.cpp.
References stringValue().
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxNumberString, RexxPointer, StackFrameClass, and RexxStem.
Definition at line 1083 of file ObjectClass.cpp.
References sendMessage().
Referenced by RexxCompoundTail::buildUnresolvedTail(), RexxNativeActivation::callRegisteredRoutine(), RexxActivation::command(), RexxNativeActivation::copyValue(), RexxNativeActivation::cstring(), RexxString::divide(), RexxString::integerDivide(), RexxActivity::messageSubstitution(), RexxString::minus(), RexxString::multiply(), RexxNativeActivation::objectToValue(), RexxString::plus(), RexxNativeActivation::pointerString(), RexxString::power(), RexxString::remainder(), requestString(), requestStringNoNOSTRING(), stringRexx(), RexxStem::stringValue(), RexxActivation::traceCompoundValue(), RexxActivation::traceOperatorValue(), RexxActivation::traceTaggedValue(), and RexxActivation::traceValue().
RexxMethod * RexxObject::superMethod | ( | RexxString * | msgName, |
RexxObject * | startScope | ||
) |
Definition at line 2389 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, and RexxBehaviour::superMethod().
Referenced by messageSend().
RexxObject * RexxObject::superScope | ( | RexxObject * | startScope | ) |
Definition at line 2380 of file ObjectClass.cpp.
References RexxInternalObject::behaviour, and RexxBehaviour::superScope().
Referenced by getCSelf(), RexxNativeActivation::getSuper(), and RexxActivation::run().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, and RexxNumberString.
Definition at line 473 of file ObjectClass.cpp.
References REQUEST_STRING(), and RexxString::truthValue().
Referenced by RexxInteger::andOp(), RexxString::andOp(), SecurityManager::callSecurityManager(), RexxExpressionLogical::evaluate(), RexxInstructionGuard::execute(), RexxInstructionIf::execute(), RexxInteger::isEqual(), RexxNumberString::isEqual(), RexxString::isEqual(), RexxMethod::newRexx(), RoutineClass::newRexx(), RexxInteger::orOp(), RexxString::orOp(), RexxNativeActivation::processArguments(), RexxMemory::setDump(), RexxInstructionDo::untilCondition(), RexxInstructionDo::whileCondition(), RexxInteger::xorOp(), and RexxString::xorOp().
|
virtual |
Reimplemented from RexxInternalObject.
Definition at line 2508 of file ObjectClass.cpp.
References hasMethod(), sendMessage(), and TheTrueObject.
Referenced by UninitDispatcher::run().
|
inlinevirtual |
Reimplemented in RexxDirectory, RexxInteger, RexxNumberString, and RexxStem.
Definition at line 385 of file ObjectClass.hpp.
References OREF_NULL.
Referenced by unknownRexx().
RexxObject * RexxObject::unknownRexx | ( | RexxString * | message, |
RexxArray * | arguments, | ||
RexxObject ** | named_arglist, | ||
size_t | named_argcount | ||
) |
Definition at line 2741 of file ObjectClass.cpp.
References NamedArguments::check(), TheNilObject, and unknown().
Referenced by RexxMemory::createImage().
RexxObject * RexxObject::unsetMethod | ( | RexxString * | msgname | ) |
Definition at line 1685 of file ObjectClass.cpp.
References ARG_ONE, RexxInternalObject::behaviour, OREF_NULL, RexxBehaviour::removeMethod(), stringArgument(), and RexxString::upper().
Referenced by RexxMemory::createImage().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxStem, RexxNumberString, and RexxString.
Definition at line 1037 of file ObjectClass.cpp.
References REQUEST_STRING(), and RexxString::unsignedNumberValue().
|
virtual |
Reimplemented from RexxInternalObject.
Reimplemented in RexxInteger, RexxStem, RexxNumberString, and RexxString.
Definition at line 1028 of file ObjectClass.cpp.
References REQUEST_STRING(), and RexxString::unsignedNumberValue().
Referenced by lengthArgument(), positionArgument(), requestUnsignedNumber(), requiredNonNegative(), requiredPositive(), RexxStem::sort(), and RexxStem::unsignedNumberValue().
Definition at line 571 of file ObjectClass.hpp.
|
static |
Definition at line 568 of file ObjectClass.hpp.
Referenced by RexxBehaviour::copy().