src/pmc/resizableintegerarray.pmc - resizable array for integers only


This class, ResizableIntegerArray, implements an array of resizable size, which stores INTVALs. It uses Integer PMCs for all of the conversions.


INTVAL get_integer_keyed_int(INTVAL key)
Returns the integer value of the element at index key.
void set_integer_keyed_int(INTVAL key, INTVAL value)
Sets the integer value of the element at index key to value.
void set_integer_native(INTVAL size)
Resizes the array to size elements.
void push_integer(INTVAL value)
Extends the array by adding an element of value value to the end of the array.
INTVAL pop_integer()
Removes and returns the last element in the array.
INTVAL shift_integer()
Removes and returns an item from the start of the array.
void unshift_integer(INTVAL value)
Add an integer to the start of the array.
void delete_keyed_int(INTVAL key)
Removes the element at key.
PMC *clone()
Creates and returns a copy of the array.
void freeze(PMC *info)
Used to archive the array.
void thaw(PMC *info)
Used to unarchive the array.




Initial version - Matt Fowles 2004-06-11 Changed allocator to double size - Matt Fowles 2004-06-15 Added push_integer - Bernhard Schmalhofer 2004-10-17 moved available size to int_val2 - Matt Fowles 2005-07-22