44 #ifndef Included_RexxList
45 #define Included_RexxList
49 #define INITIAL_LIST_SIZE 5
50 #define EXTEND_LIST_SIZE 5
53 #define TABLE_SIZE(n) ((n)*sizeof(LISTENTRY))
56 #define ENTRY_COUNT(n) ((n)/sizeof(LISTENTRY))
58 #define ENTRY_POINTER(n) (this->table->getData() + n)
59 #define ENTRY_INDEX(p) (p - this->table->getData())
60 #define LIST_END ((size_t)-1)
61 #define NOT_ACTIVE ((size_t)-2)
66 void *
operator new(size_t);
67 inline void *
operator new(
size_t size,
void *objectPtr) {
return objectPtr; };
RexxObject * removeIndex(size_t i)
size_t previousIndex(size_t i)
RexxObject * append(RexxObject *)
RexxObject * value(RexxObject *)
void partitionBuffer(size_t, size_t)
RexxArray * makeArrayIndices()
RexxObject * next(RexxObject *)
RexxObject * removeObject(RexxObject *)
RexxObject * sectionSubclass(LISTENTRY *, size_t)
size_t nextIndex(size_t i)
RexxObject * hasIndex(RexxObject *)
void flatten(RexxEnvelope *)
RexxObject * insert(RexxObject *, RexxObject *)
RexxObject * removeLast()
RexxObject * previous(RexxObject *)
RexxObject * removeItem(RexxObject *)
RexxObject * primitiveRemove(LISTENTRY *)
LISTENTRY * getEntry(RexxObject *, RexxObject *)
RexxList * classOf(RexxObject **, size_t, size_t)
RexxArray * weakReferenceArray()
RexxObject * add(RexxObject *, RexxObject *)
RexxObject * removeLastItem()
RexxObject * hasItem(RexxObject *)
void liveGeneral(int reason)
RexxObject * put(RexxObject *, RexxObject *)
RexxObject * index(RexxObject *)
RexxObject * remove(RexxObject *)
RexxList * newRexx(RexxObject **, size_t, size_t)
RexxArray * requestArray()
RexxObject * section(RexxObject *, RexxObject *)
static RexxClass * classInstance
RexxList(RESTORETYPE restoreType)
RexxObject * removeFirst()
RexxObject * indexOfValue(RexxObject *)
static void createInstance()
RexxObject * insertRexx(RexxObject *, RexxObject *)
RexxObject * getValue(size_t i)
void addLast(RexxObject *value)
RexxSupplier * supplier()
void addFirst(RexxObject *value)
RexxObject * removeFirstItem()