parrotcode: Hash PMC | |
Contents | PMCs |
src/pmc/hash.pmc - Hash PMC
These are the vtable functions for the Hash PMC.
static PMC *get_integer_pmc(Interp *interpreter, INTVAL base_type )
static PMC *get_none_pmc(Interp *interpreter, INTVAL base_type )
None
is a singleton PMCs,
it is probably cheap to call pmc_new
.static PMC *get_number_pmc(Interp *interpreter, INTVAL base_type )
static PMC *get_string_pmc(Interp *interpreter, INTVAL base_type )
static STRING *make_hash_key(Interp *interpreter, PMC *key)
*key
.void init()
void destroy()
void mark()
INTVAL type_keyed_str(STRING *key)
*key
.INTVAL type_keyed (PMC *key)
*key
.PMC *clone()
INTVAL get_integer()
INTVAL get_integer_keyed_str(STRING *key)
INTVAL get_integer_keyed_int(INTVAL key)
INTVAL get_integer_keyed(PMC *key)
*key
.FLOATVAL get_number_keyed_str(STRING *key)
FLOATVAL get_number_keyed_int(INTVAL key)
FLOATVAL get_number_keyed(PMC *key)
*key
.STRING *get_string()
STRING *get_repr()
STRING *get_string_keyed_str(STRING *key)
STRING *get_string_keyed_int(INTVAL key)
STRING *get_string_keyed(PMC *key)
*key
.INTVAL get_bool()
INTVAL elements()
PMC *get_pmc_keyed_str(STRING *key)
PMC *get_pmc_keyed_int(INTVAL key)
PMC *get_iter ()
key
PMC *get_pmc_keyed(PMC *key)
*key
.INTVAL is_same(PMC *other)
*other
.void set_integer_keyed(PMC *key, INTVAL value)
void set_integer_keyed_str(STRING *key, INTVAL value)
void set_number_keyed (PMC *key, FLOATVAL value)
void set_number_keyed_str(STRING *key, FLOATVAL value)
value
as the value for *key
.void set_string_keyed(PMC *key, STRING *value)
void set_string_keyed_str(STRING *key, STRING *value)
void set_pmc_keyed(PMC *dest_key, PMC *value)
void set_pmc_keyed_str(STRING *key, PMC *value)
*value
as the value for *key
.INTVAL is_equal(PMC *value)
==
operation.INTVAL exists_keyed_str(STRING *key)
INTVAL exists_keyed(PMC *key)
*key
exists in the hash.INTVAL defined_keyed_str(STRING *key)
INTVAL defined_keyed(PMC *key)
*key
is defined.void delete_keyed_str(STRING *key)
void delete_keyed(PMC *key)
*key
.PMC *slice (PMC *key)
key
void visit(visit_info *info)
void freeze(visit_info *info)
void thaw(visit_info *info)
docs/pdds/pdd08_keys.pod.
|