NAME
src/pmc/nci.pmc - NCI PMC
DESCRIPTION
The vtable functions for the Native Call Interface, to call native C functions.
Methods
- static nci_thunk_t build_func(PARROT_INTERP, PMC *obj, Parrot_NCI_attributes *nci)Actually build the NCI thunk.
- METHOD get_multisig()Return the MMD signature PMC,
if any or
- void init()Initializes the NCI with a
- void set_pmc_keyed(PMC *key, PMC *p)
- void set_pmc_keyed_str(STRING *key, PMC *p)Call the equivalent
- void set_pointer_keyed(PMC *key, void *func)Sets the specified function pointer and signature (
- void set_pointer_keyed_str(STRING *key, void *func)Sets the specified function pointer and siganture as described in the string
- void mark()Mark any referenced strings and PMCs.
- PMC *clone()Creates and returns a clone of the NCI.
- INTVAL defined()Returns whether the NCI is defined.
- opcode_t *invoke(void *next)Calls the associated C function,
returning
- INTVAL get_integer()Returns the function pointer as an integer.
- INTVAL get_bool()Returns the boolean value of the pointer.
- METHOD arity()Return the arity of the NCI (the number of arguments).
PMCNULL.
NULL function pointer.
set_pointer* function.
*key).
key.
*next.
If the invocant is a class,
the PMC arguments are shifted down.
SEE ALSO
docs/pdds/pdd03_calling_conventions.pod.
