parrotcode: fixed size array for PMCs only | |
Contents | PMCs |
src/pmc/fixedpmcarray.pmc - fixed size array for PMCs only
This class, FixedPMCArray, implements an array of fixed size which stores PMCs. It puts things into Integer, Float, or String PMCs as appropriate
The flag PObj_private0_FLAG
is used in the NameSpace
PMC and should never be set for user arrays.
METHOD void sort(PMC *cmp_func)
void init()
void morph(INTVAL type)
morph()
.void destroy()
PMC *clone()
INTVAL get_bool()
INTVAL elements()
INTVAL get_integer()
FLOATVAL get_number()
STRING *get_string()
STRING *get_repr()
INTVAL get_integer_keyed_int(INTVAL key)
key
.INTVAL get_integer_keyed(PMC *key)
*key
.FLOATVAL get_number_keyed_int(INTVAL key)
key
.FLOATVAL get_number_keyed(PMC *key)
*key
.STRING *get_string_keyed_int(INTVAL key)
key
.STRING *get_string_keyed(PMC *key)
*key
.PMC *get_pmc_keyed_int(INTVAL key)
key
.PMC *get_pmc_keyed(PMC *key)
*key
.void set_integer_native(INTVAL size)
size
elements.
Can't be used to resize an array.void set_integer_keyed_int(INTVAL key, INTVAL value)
key
to value
.void set_integer_keyed(PMC *key, INTVAL value)
key
to value
.void set_number_keyed_int(INTVAL key, FLOATVAL value)
key
to value
.void set_number_keyed(PMC *key, FLOATVAL value)
key
to value
.void set_string_keyed_int(INTVAL key, STRING *value)
key
to value
.void set_string_keyed(PMC *key, STRING *value)
key
to value
.void set_pmc_keyed_int(INTVAL key, PMC *src)
key
to *src
.void set_pmc_keyed(PMC *key, PMC *value)
key
to value
.INTVAL is_equal(PMC *value)
==
operation.
Compares two array to hold equal elements.PMC *slice(PMC *key, INTVAL f)
key
if f == 0.PMC *get_iter()
INTVAL exists_keyed_int(INTVAL key)
INTVAL exists_keyed_int(PMC *key)
key
exists; otherwise returns false.void visit(visit_info *info)
*info
is the visit info,
(see include/parrot/pmc_freeze.h).void freeze(visit_info *info)
void thaw(visit_info *info)
INTVAL defined_keyed_int(INTVAL key)
key
is defined; otherwise returns false.docs/pdds/pdd17_basic_types.pod.
Initial version 2004.06.11 by Matt Fowles
|