RexxHashTableCollection Class Reference

#include <RexxCollection.hpp>

Inheritance diagram for RexxHashTableCollection:
[legend]

Public Member Functions

void live (size_t)
 
void liveGeneral (int reason)
 
void flatten (RexxEnvelope *)
 
RexxObjectunflatten (RexxEnvelope *)
 
RexxObjectmakeProxy (RexxEnvelope *)
 
RexxObjectcopy ()
 
RexxArraymakeArray ()
 
virtual RexxObjectmergeItem (RexxObject *, RexxObject *)
 
virtual RexxObjectremove (RexxObject *key)
 
virtual RexxObjectget (RexxObject *key)
 
virtual RexxObjectput (RexxObject *, RexxObject *)
 
virtual RexxObjectadd (RexxObject *, RexxObject *)
 
virtual RexxObjectremoveItem (RexxObject *value)
 
virtual RexxObjecthasItem (RexxObject *)
 
virtual RexxObjectgetIndex (RexxObject *value)
 
RexxObjectcopyValues (int depth)
 
RexxObjectremoveRexx (RexxObject *)
 
RexxObjectgetRexx (RexxObject *)
 
RexxObjectputRexx (RexxObject *, RexxObject *)
 
RexxObjectaddRexx (RexxObject *, RexxObject *)
 
RexxObjecthasIndexRexx (RexxObject *)
 
RexxObjecthasItemRexx (RexxObject *)
 
RexxObjectremoveItemRexx (RexxObject *value)
 
RexxObjectallAt (RexxObject *)
 
RexxObjectindexRexx (RexxObject *value)
 
RexxSuppliersupplier ()
 
RexxObjectmerge (RexxHashTableCollection *)
 
RexxArrayallItems ()
 
RexxArrayallIndexes ()
 
RexxArrayuniqueIndexes ()
 
RexxObjectempty ()
 
RexxObjectisEmpty ()
 
HashLink items ()
 
HashLink first ()
 
HashLink next (HashLink pos)
 
RexxObjectvalue (HashLink pos)
 
RexxObjectindex (HashLink pos)
 
bool available (HashLink pos)
 
- Public Member Functions inherited from RexxObject
void * operator new (size_t, RexxClass *)
 
void * operator new (size_t, RexxClass *, RexxObject **, size_t, size_t)
 
void * operator new (size_t size, void *objectPtr)
 
void operator delete (void *, void *)
 
void operator delete (void *)
 
void operator delete (void *, RexxClass *)
 
void operator delete (void *, RexxClass *, RexxObject **, size_t)
 
RexxObjectnewRexx (RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxObjectnewObject ()
 
 operator RexxInternalObject * ()
 
 RexxObject ()
 
 RexxObject (RESTORETYPE restoreType)
 
void initializeNewObject (size_t size, size_t mark, void *vft, RexxBehaviour *b)
 
void initializeNewObject (size_t mark, void *vft, RexxBehaviour *b)
 
virtual ~RexxObject ()
 
virtual RexxObjectdefMethod (RexxString *, RexxMethod *, RexxString *a=OREF_NULL)
 
virtual RexxStringdefaultName ()
 
virtual RexxObjectunknown (RexxString *msg, RexxArray *args, RexxDirectory *named_args)
 
virtual RexxIntegerhasMethod (RexxString *msg)
 
bool hasUninitMethod ()
 
RexxObjectinit ()
 
void uninit ()
 
HashCode hash ()
 
bool truthValue (int)
 
virtual bool logicalValue (logical_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)
 
RexxNumberStringnumberString ()
 
RexxIntegerintegerValue (size_t)
 
RexxStringmakeString ()
 
RexxTextmakeText ()
 
void copyIntoTail (RexxCompoundTail *buffer)
 
RexxStringstringValue ()
 
RexxTexttextValue ()
 
RexxStringrequestString ()
 
RexxStringrequestStringNoNOSTRING ()
 
RexxTextrequestText ()
 
RexxIntegerrequestInteger (size_t)
 
bool requestNumber (wholenumber_t &, size_t)
 
bool requestUnsignedNumber (stringsize_t &, size_t)
 
RexxArrayrequestArray ()
 
RexxDirectoryrequestDirectory ()
 
RexxStringrequiredString (RexxString *kind, size_t)
 
RexxStringrequiredString (RexxString *kind, const char *)
 
RexxStringrequiredString ()
 
RexxIntegerrequiredInteger (RexxString *kind, size_t, size_t)
 
wholenumber_t requiredNumber (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
stringsize_t requiredPositive (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
stringsize_t requiredNonNegative (RexxString *kind, size_t position, size_t precision=Numerics::ARGUMENT_DIGITS)
 
bool isEqual (RexxObject *)
 
bool isInstanceOf (RexxClass *)
 
RexxObjectisInstanceOfRexx (RexxClass *)
 
RexxObjectisNilRexx ()
 
RexxMethodinstanceMethod (RexxString *)
 
RexxSupplierinstanceMethods (RexxClass *)
 
RexxMethodinstanceMethodRexx (RexxString *)
 
RexxSupplierinstanceMethodsRexx (RexxClass *)
 
RexxObjectdynamicTargetRexx (RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxStringobjectName ()
 
RexxObjectobjectNameEquals (RexxObject *)
 
RexxClassclassObject ()
 
RexxObjectsetMethod (RexxString *, RexxMethod *, RexxString *a=OREF_NULL)
 
RexxObjectunsetMethod (RexxString *)
 
RexxObjectrequestRexx (RexxString *)
 
RexxMessagestart (RexxObject **, size_t, size_t)
 
RexxMessagestartWith (RexxObject *, RexxArray *, RexxObject **, size_t)
 
RexxObjectsend (RexxObject **, size_t, size_t)
 
RexxObjectsendWith (RexxObject *, RexxArray *, RexxObject **, size_t)
 
RexxMessagestartCommon (RexxObject *message, RexxObject **arguments, size_t argCount, size_t named_argCount)
 
RexxStringoref ()
 
RexxObjectpmdict ()
 
RexxObjectrun (RexxObject **, size_t, size_t)
 
bool messageSend (RexxString *, RexxObject **, size_t, size_t, ProtectedObject &, bool processUnknown=true, bool dynamicTarget=true)
 
bool messageSend (RexxString *, RexxObject **, size_t, size_t, RexxObject *, ProtectedObject &, bool processUnknown=true, bool dynamicTarget=true)
 
RexxMethodcheckPrivate (RexxMethod *, RexxErrorCodes &)
 
RexxMethodcheckPackage (RexxMethod *, RexxErrorCodes &)
 
void processUnknown (RexxErrorCodes, RexxString *, RexxObject **, size_t, size_t, ProtectedObject &)
 
void processProtectedMethod (RexxString *, RexxMethod *, RexxObject **, size_t, size_t, ProtectedObject &)
 
void sendMessage (RexxString *, RexxArray *, RexxDirectory *, ProtectedObject &)
 
void sendMessage (RexxString *message, RexxObject **args, size_t argCount, size_t named_argCount, ProtectedObject &result)
 
void sendMessage (RexxString *message, ProtectedObject &result)
 
void sendMessage (RexxString *message, RexxObject *argument1, ProtectedObject &result)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
void sendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, ProtectedObject &)
 
RexxObjectsendMessage (RexxString *, RexxArray *, RexxDirectory *=OREF_NULL)
 
RexxObjectsendMessage (RexxString *message, RexxObject **args, size_t argCount, size_t named_argCount)
 
RexxObjectsendMessage (RexxString *message)
 
RexxObjectsendMessage (RexxString *message, RexxObject *argument1)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectsendMessage (RexxString *, RexxObject *, RexxObject *, RexxObject *, RexxObject *, RexxObject *)
 
RexxObjectdefMethods (RexxDirectory *)
 
void setObjectVariable (RexxString *, RexxObject *, RexxObject *)
 
RexxObjectgetObjectVariable (RexxString *)
 
RexxObjectgetObjectVariable (RexxString *, RexxObject *)
 
void addObjectVariables (RexxVariableDictionary *)
 
void copyObjectVariables (RexxObject *newObject)
 
RexxObjectsuperScope (RexxObject *)
 
RexxMethodsuperMethod (RexxString *, RexxObject *)
 
RexxObjectmdict ()
 
RexxObjectsetMdict (RexxObject *)
 
RexxBehaviourbehaviourObject ()
 
const char * idString ()
 
RexxStringid ()
 
RexxMethodmethodLookup (RexxString *name)
 
RexxVariableDictionarygetObjectVariables (RexxObject *)
 
void guardOn (RexxActivity *activity, RexxObject *scope)
 
void guardOff (RexxActivity *activity, RexxObject *scope)
 
RexxObjectequal (RexxObject *)
 
RexxObjectnotEqual (RexxObject *other)
 
RexxObjectstrictEqual (RexxObject *)
 
RexxObjectstrictNotEqual (RexxObject *other)
 
RexxIntegeridentityHashRexx ()
 
RexxObjecthashCode ()
 
RexxStringstringRexx ()
 
RexxStringconcatRexx (RexxObject *)
 
RexxStringconcatBlank (RexxObject *)
 
RexxObjectmakeStringRexx ()
 
RexxObjectmakeArrayRexx ()
 
RexxStringdefaultNameRexx ()
 
RexxObjectcopyRexx ()
 
RexxObjectunknownRexx (RexxString *, RexxArray *, RexxObject **, size_t)
 
RexxObjecthasMethodRexx (RexxString *)
 
void * getCSelf ()
 
void * getCSelf (RexxObject *scope)
 
bool equalValue (RexxObject *other)
 
virtual wholenumber_t compareTo (RexxObject *)
 
 koper (operator_plus) koper(operator_minus) koper(operator_multiply) koper(operator_divide) koper(operator_integerDivide) koper(operator_remainder) koper(operator_power) koper(operator_abuttal) koper(operator_concat) koper(operator_concatBlank) koper(operator_equal) koper(operator_notEqual) koper(operator_isGreaterThan) koper(operator_isBackslashGreaterThan) koper(operator_isLessThan) koper(operator_isBackslashLessThan) koper(operator_isGreaterOrEqual) koper(operator_isLessOrEqual) koper(operator_strictEqual) koper(operator_strictNotEqual) koper(operator_strictGreaterThan) koper(operator_strictBackslashGreaterThan) koper(operator_strictLessThan) koper(operator_strictBackslashLessThan) koper(operator_strictGreaterOrEqual) koper(operator_strictLessOrEqual) koper(operator_lessThanGreaterThan) koper(operator_greaterThanLessThan) koper(operator_and) koper(operator_or) koper(operator_xor) koper(operator_not) RexxVariableDictionary *objectVariables
 
- 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 RexxObjectevaluate (RexxActivation *, RexxExpressionStack *)
 
virtual RexxObjectgetValue (RexxActivation *)
 
virtual RexxObjectgetValue (RexxVariableDictionary *)
 
virtual RexxObjectgetRealValue (RexxActivation *)
 
virtual RexxObjectgetRealValue (RexxVariableDictionary *)
 
virtual HashCode getHashValue ()
 
HashCode identityHash ()
 
virtual RexxStringprimitiveMakeString ()
 
virtual RexxTextprimitiveMakeText ()
 
virtual RexxObjectdynamicTarget (RexxObject **arguments, size_t count, size_t named_count)
 
void hasUninit ()
 
void removedUninit ()
 
void printObject ()
 
RexxObjectclone ()
 

Public Attributes

RexxHashTablecontents
 
- Public Attributes inherited from RexxInternalObject
ObjectHeader header
 
RexxBehaviourbehaviour
 

Additional Inherited Members

- 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 inherited from RexxObject
static PCPPM operatorMethods []
 
static RexxClassclassInstance = OREF_NULL
 
- Protected Member Functions inherited from RexxVirtualBase
virtual ~RexxVirtualBase ()
 
virtual void baseVirtual ()
 

Detailed Description

Definition at line 49 of file RexxCollection.hpp.

Member Function Documentation

◆ add()

RexxObject * RexxHashTableCollection::add ( RexxObject _value,
RexxObject _index 
)
virtual

Reimplemented in RexxIdentityTable.

Definition at line 305 of file RexxCollection.cpp.

References RexxHashTable::add(), contents, OREF_NULL, and OrefSet.

Referenced by addRexx().

◆ addRexx()

RexxObject * RexxHashTableCollection::addRexx ( RexxObject _value,
RexxObject _index 
)

Definition at line 291 of file RexxCollection.cpp.

References add(), ARG_ONE, ARG_TWO, and requiredArgument().

◆ allAt()

RexxObject * RexxHashTableCollection::allAt ( RexxObject _index)

Definition at line 196 of file RexxCollection.cpp.

References ARG_ONE, contents, RexxHashTable::getAll(), and requiredArgument().

Referenced by RexxMemory::createImage().

◆ allIndexes()

RexxArray * RexxHashTableCollection::allIndexes ( void  )

◆ allItems()

RexxArray * RexxHashTableCollection::allItems ( )

Definition at line 485 of file RexxCollection.cpp.

References RexxHashTable::allItems(), and contents.

Referenced by RexxMemory::createImage().

◆ available()

◆ copy()

◆ copyValues()

RexxObject * RexxHashTableCollection::copyValues ( int  depth)

◆ empty()

RexxObject * RexxHashTableCollection::empty ( )

Empty a hash table collection.

Returns
nothing

Definition at line 517 of file RexxCollection.cpp.

References contents, RexxHashTable::empty(), and OREF_NULL.

Referenced by RexxMemory::createImage(), RexxMemory::lastChanceUninit(), RexxDirectory::reset(), and InterpreterInstance::terminate().

◆ first()

◆ flatten()

void RexxHashTableCollection::flatten ( RexxEnvelope envelope)
virtual

Reimplemented from RexxObject.

Reimplemented in RexxDirectory.

Definition at line 70 of file RexxCollection.cpp.

References cleanUpFlatten, flatten_reference, and setUpFlatten.

◆ get()

RexxObject * RexxHashTableCollection::get ( RexxObject key)
virtual

Retrieve an item from a hash collection using a key. This is the base virtual implementation, which uses equality semantics for the retrieveal. Other implementations may override this.

Parameters
keyThe target key.
Returns
The retrieved object. Returns OREF_NULL if the object was not found.

Reimplemented in RexxIdentityTable.

Definition at line 242 of file RexxCollection.cpp.

References contents, and RexxHashTable::get().

Referenced by ClassDirective::checkDuplicateMethod(), ExtensionDirective::checkDuplicateMethod(), PackageManager::checkRequiresCache(), InterpreterInstance::getRequiresFile(), getRexx(), and hasIndexRexx().

◆ getIndex()

RexxObject * RexxHashTableCollection::getIndex ( RexxObject target)
virtual

Retrieve an index for a given item. Which index is returned is indeterminate.

Parameters
targetThe target object.
Returns
The index for the target object, or .nil if no object was found.

Reimplemented in RexxIdentityTable.

Definition at line 412 of file RexxCollection.cpp.

References contents, and RexxHashTable::getIndex().

Referenced by indexRexx().

◆ getRexx()

RexxObject * RexxHashTableCollection::getRexx ( RexxObject _index)

Exported get() accessor for a hash table collection. This delegates to a virtual method defined by the target collection.

Parameters
_indexThe target index.
Returns
The fetched object, or .nil if the index does not exist in the collection.

Definition at line 219 of file RexxCollection.cpp.

References ARG_ONE, get(), OREF_NULL, requiredArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ hasIndexRexx()

RexxObject * RexxHashTableCollection::hasIndexRexx ( RexxObject _index)

Test for the existence of an index in the collection. This uses the get() virtual function to determine if the item exists.

Parameters
_indexThe target index.
Returns
True if the index exists, false if the index does not exist.

Definition at line 369 of file RexxCollection.cpp.

References ARG_ONE, get(), OREF_NULL, requiredArgument(), TheFalseObject, and TheTrueObject.

Referenced by RexxMemory::createImage().

◆ hasItem()

RexxObject * RexxHashTableCollection::hasItem ( RexxObject target)
virtual

Test if a given item exists in the collection.

Parameters
targetThe target object.
Returns
.true if the object exists, .false otherwise.

Reimplemented in RexxDirectory, and RexxIdentityTable.

Definition at line 470 of file RexxCollection.cpp.

References contents, and RexxHashTable::hasItem().

Referenced by hasItemRexx().

◆ hasItemRexx()

RexxObject * RexxHashTableCollection::hasItemRexx ( RexxObject target)

Test if a given item exists in the collection.

Parameters
targetThe target object.
Returns
.true if the object exists, .false otherwise.

Definition at line 456 of file RexxCollection.cpp.

References ARG_ONE, hasItem(), and requiredArgument().

Referenced by RexxMemory::createImage().

◆ index()

◆ indexRexx()

RexxObject * RexxHashTableCollection::indexRexx ( RexxObject target)

Retrieve an index for a given item. Which index is returned is indeterminate.

Parameters
targetThe target object.
Returns
The index for the target object, or .nil if no object was found.

Definition at line 388 of file RexxCollection.cpp.

References ARG_ONE, getIndex(), OREF_NULL, requiredArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ isEmpty()

RexxObject * RexxHashTableCollection::isEmpty ( )

Test if a HashTableCollection is empty.

Returns

Definition at line 529 of file RexxCollection.cpp.

References contents, RexxHashTable::isEmpty(), TheFalseObject, and TheTrueObject.

Referenced by RexxMemory::createImage().

◆ items()

HashLink RexxHashTableCollection::items ( void  )
inline

◆ live()

void RexxHashTableCollection::live ( size_t  liveMark)
virtual

Reimplemented from RexxObject.

Reimplemented in RexxDirectory.

Definition at line 52 of file RexxCollection.cpp.

References contents, and memory_mark.

Referenced by RexxDirectory::live().

◆ liveGeneral()

void RexxHashTableCollection::liveGeneral ( int  reason)
virtual

Reimplemented from RexxObject.

Reimplemented in RexxDirectory.

Definition at line 61 of file RexxCollection.cpp.

References contents, and memory_mark_general.

Referenced by RexxDirectory::liveGeneral().

◆ makeArray()

RexxArray * RexxHashTableCollection::makeArray ( void  )
virtual

Reimplemented from RexxObject.

Reimplemented in RexxDirectory.

Definition at line 132 of file RexxCollection.cpp.

References contents, and RexxHashTable::makeArray().

Referenced by RexxSource::getGuard(), and RexxTable::requestArray().

◆ makeProxy()

RexxObject * RexxHashTableCollection::makeProxy ( RexxEnvelope envelope)
virtual

Reimplemented from RexxInternalObject.

Definition at line 92 of file RexxCollection.cpp.

References Interpreter::logicError(), new_proxy(), OREF_NULL, TheEnvironment, TheKernel, and TheSystem.

◆ merge()

RexxObject * RexxHashTableCollection::merge ( RexxHashTableCollection target)

◆ mergeItem()

RexxObject * RexxHashTableCollection::mergeItem ( RexxObject _value,
RexxObject _index 
)
virtual

Reimplemented in RexxDirectory.

Definition at line 140 of file RexxCollection.cpp.

References contents, OREF_NULL, OrefSet, and RexxHashTable::putNodupe().

Referenced by RexxHashTable::merge().

◆ next()

◆ put()

RexxObject * RexxHashTableCollection::put ( RexxObject _value,
RexxObject _index 
)
virtual

Place an item into a hash collection using a key. This is the base virtual implementation, which uses equality semantics for the retrieveal. Other implementations may override this.

Parameters
_valueThe inserted value.
_indexThe insertion key.
Returns
The retrieved object. Returns OREF_NULL if the object was not found.

Reimplemented in RexxIdentityTable, and RexxRelation.

Definition at line 279 of file RexxCollection.cpp.

References contents, OREF_NULL, OrefSet, and RexxHashTable::put().

Referenced by ClassDirective::addMethod(), ExtensionDirective::addMethod(), putRexx(), RexxDirectory::supplier(), and RexxHashTable::uniqueIndexes().

◆ putRexx()

RexxObject * RexxHashTableCollection::putRexx ( RexxObject _value,
RexxObject _index 
)

Exported Rexx method for adding an item to a collection. The put operation is delegated to the implementing class virtual function.

Parameters
_valueThe value to add.
_indexThe index for the added item.
Returns
Always returns OREF_NULL.

Definition at line 258 of file RexxCollection.cpp.

References ARG_ONE, ARG_TWO, put(), and requiredArgument().

Referenced by RexxMemory::createImage().

◆ remove()

RexxObject * RexxHashTableCollection::remove ( RexxObject _index)
virtual

Base virtual function for a table remove operation. This applies object equality semantics to the operation.

Parameters
_indexThe object index.
Returns
The removed object.

Reimplemented in RexxIdentityTable.

Definition at line 190 of file RexxCollection.cpp.

References contents, and RexxHashTable::remove().

Referenced by RexxBehaviour::addMethod(), RexxBehaviour::deleteMethod(), RexxClass::deleteMethod(), RexxDirectory::put(), RexxDirectory::remove(), RexxBehaviour::removeMethod(), removeRexx(), RexxActivity::removeRunningRequires(), RexxDirectory::setEntry(), and RexxDirectory::setMethod().

◆ removeItem()

RexxObject * RexxHashTableCollection::removeItem ( RexxObject target)
virtual

Remove an item specified by value.

Parameters
targetThe target object.
Returns
The target object again.

Reimplemented in RexxDirectory, and RexxIdentityTable.

Definition at line 442 of file RexxCollection.cpp.

References contents, and RexxHashTable::removeItem().

Referenced by removeItemRexx().

◆ removeItemRexx()

RexxObject * RexxHashTableCollection::removeItemRexx ( RexxObject target)

Exported method to remove an item specified by value.

Parameters
targetThe target object.
Returns
The target object again.

Definition at line 426 of file RexxCollection.cpp.

References ARG_ONE, removeItem(), and requiredArgument().

Referenced by RexxMemory::createImage().

◆ removeRexx()

RexxObject * RexxHashTableCollection::removeRexx ( RexxObject _index)

The exported remove() method for hash collection classes. This is the Rexx stub method. The removal operation is delegated to the virtual method defined by the implementing class.

Parameters
_indexThe target removal index.
Returns
The removed object, or .nil if the index was not found.

Definition at line 168 of file RexxCollection.cpp.

References ARG_ONE, OREF_NULL, remove(), requiredArgument(), and TheNilObject.

Referenced by RexxMemory::createImage().

◆ supplier()

RexxSupplier * RexxHashTableCollection::supplier ( void  )

◆ unflatten()

RexxObject * RexxHashTableCollection::unflatten ( RexxEnvelope envelope)
virtual

Reimplemented from RexxVirtualBase.

Reimplemented in RexxDirectory.

Definition at line 83 of file RexxCollection.cpp.

References RexxEnvelope::addTable().

◆ uniqueIndexes()

RexxArray * RexxHashTableCollection::uniqueIndexes ( )

Return the unique indexes in a hash collection.

Returns
The set of uniqueIndexes

Definition at line 506 of file RexxCollection.cpp.

References contents, and RexxHashTable::uniqueIndexes().

Referenced by RexxMemory::createImage().

◆ value()

Member Data Documentation

◆ contents

RexxHashTable* RexxHashTableCollection::contents

Definition at line 93 of file RexxCollection.hpp.

Referenced by RexxIdentityTable::add(), add(), RexxTable::addOffset(), RexxRelation::allAt(), allAt(), RexxIdentityTable::allAt(), RexxTable::allAt(), RexxRelation::allIndex(), RexxDirectory::allIndexes(), allIndexes(), RexxDirectory::allIndexesItems(), RexxDirectory::allItems(), allItems(), RexxDirectory::appendAllIndexesItemsTo(), RexxDirectory::at(), available(), copy(), copyValues(), empty(), RexxDirectory::fastAt(), RexxIdentityTable::findSuperScope(), first(), RexxIdentityTable::get(), get(), RexxIdentityTable::getIndex(), getIndex(), RexxDirectory::hasEntry(), RexxDirectory::hasIndex(), hasItem(), RexxRelation::hasItem(), RexxIdentityTable::hasItem(), index(), RexxDirectory::indexRexx(), isEmpty(), RexxDirectory::items(), items(), RexxTable::itemsRexx(), RexxRelation::itemsRexx(), live(), liveGeneral(), makeArray(), merge(), mergeItem(), RexxHashTable::newInstance(), next(), RexxEnvelope::pack(), RexxDirectory::pushAllIndexesItemsTo(), RexxIdentityTable::put(), RexxRelation::put(), put(), RexxDirectory::put(), RexxTable::putNodupe(), RexxTable::reHash(), RexxIdentityTable::remove(), remove(), RexxDirectory::remove(), RexxRelation::removeAll(), RexxRelation::removeItem(), RexxIdentityTable::removeItem(), removeItem(), RexxRelation::removeItemRexx(), RexxTable::replace(), RexxDirectory::reset(), RexxTable::reset(), RexxDirectory::setEntry(), RexxDirectory::setMethod(), RexxTable::stringAdd(), RexxTable::stringGet(), RexxTable::stringGetAll(), RexxTable::stringPut(), RexxDirectory::supplier(), supplier(), RexxRelation::supplier(), uniqueIndexes(), and value().


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