Open Object Rexx - Interpreter Source Files

# Open Object Rexx - Files

# Interpreter Class Support Source Files

This directory contains support files used to implement the classes that are exported to the ooRexx programmer. These classes are not directly visible to the ooRexx programmer, but are used internally by various exported classes. Most of the classes here are subclasses of RexxInternalObject. They are allocated from the ooRexx memory heap, but can never be made visible to the ooRexx programmer. directly altered.

The following is a partial list of the files to be found in this subdirectory.

ProgramMetaData.*
  Support methods used by the MethodClass and the RoutineClass for saving/restoring a translated program.
RexxCollection.*
  RexxCollection is the base C++ class for mapped collection classes that are based on a hash table implementation (Table, Relation, IdentityTable, Directory).
RexxHashTable.*
  The hash table that holds the index-item mappings for a RexxCollecton based map class. Each RexxCollection instance holds a reference to a backing HashTable instance. Whenever it's necessary for a collection to expand its capacity, a larger hash table is allocated and the items are rehashed into the new table.
RexxListTable.*
  A backing table used to manage List and Queue class items. This is similar to the hash table used for the RexxCollection classes, but a list table only contains an ordered list of items.
StringUtil.*
  Utility methods used by both the String and MutableBuffer classes for implementing methods common to both classes.
RexxCompoundTable.*
  A table used to store elements of a Stem object. This table manages the individual variables as a balanced binary tree of RexxCompoundElement items (see below).
RexxCompoundElement.*
  A class used to represent the nodes of a RexxConmpountTable.
RexxCompoundTail.*
  A utility class used to construct and manager lookups for compount tail elements. This class is NOT a subclass of RexxInternalObject, but is rather intended to be created as a variable in a local stackframe.
RexxDateTime.*
  A utility class used by the Date() and Time() bifs. This also provides a lot of the logic behind the DateTime and TimeSpan classes.