| 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.
|
|
|