parrotcode: CPointer | |
Contents | PMCs |
src/pmc/cpointer.pmc - CPointer
The CPointer PMC creates a PMC abstraction for a typed C pointer.
It is particularly used by the CallSignature
PMC,
for the return values of a C-level PCC invocation using a CallSignature
to pass the arguments and fetch the results.
A CPointer PMC has two attributes:
void *
pointer to an integer,
number,
string,
or PMC.
I a Parrot integer (INTVAL) N a Parrot number (FLOATVAL) S a Parrot string (STRING *) P a Parrot object (PMC *)
These are the vtable functions for the CPointer class.
void init()
void mark()
void destroy()
PMC *clone()
void *get_pointer()
void set_pointer(void *)
STRING *get_string_keyed_str(STRING *key)
void set_string_keyed_str(STRING *key, STRING *value)
INTVAL get_integer()
void set_integer_native(INTVAL value)
FLOATVAL get_number()
void set_number_native(FLOATVAL value)
STRING *get_string()
void set_string_native(STRING *value)
PMC *get_pmc()
void set_pmc(PMC *value)
INTVAL get_bool()
NULL
.
INTVAL is_same(PMC *pmc2)
*pmc2
.
|