parrotcode: The Parrot embedding interface | |
Contents | C |
src/embed.c - The Parrot embedding interface
This file implements the Parrot embedding interface.
Parrot_Interp Parrot_new(Parrot_Interp parent)
parent
is NULL
) is the last one to get destroyed.void Parrot_init(Interp *interpreter)
void Parrot_init_stacktop(Interp *interpreter, void *stack_top)
void Parrot_set_flag(Interp *interpreter, Parrot_Interp_flag flag)
void Parrot_clear_flag(Parrot_Interp interpreter, Parrot_Interp_flag flag)
Parrot_Int Parrot_test_flag(Parrot_Interp interpreter, Parrot_Interp_flag flag)
flag
.void Parrot_set_run_core(Interp *interpreter, Parrot_Run_core_t core)
void Parrot_setwarnings(Interp *interpreter, Parrot_warnclass wc)
struct PackFile *Parrot_readbc(Interp *interpreter, const char *filename)
PackFile
structure and do fixups.void Parrot_loadbc(Interp *interpreter, struct PackFile *pf)
PackFile
returned by Parrot_readbc()
.static void setup_argv(Interp *interpreter, int argc, char ** argv)
ARGV
array in P5.void Parrot_setup_opt(Interp *interpreter, int n, char *argv)
static int prof_sort_f(const void *a, const void *b)
static const char *op_name(Parrot_Interp interpreter, int k)
static FLOATVAL calibrate(Parrot_Interp interpreter)
parrot -p
match almost these measured with time parrot -b
.static void print_profile(int status, void *p)
static void print_debug(int status, void *p)
void Parrot_runcode(Interp *interpreter, int argc, char *argv[])
ARGV
and runs the ops.static char *argv_join(char **argv)
void Parrot_debug(Interp *interpreter, int argc, char **argv)
void Parrot_disassemble(Interp *interpreter)
void Parrot_run_native(Parrot_Interp interpreter, native_func_t func)
func
through the program [enternative, end]
.
This ensures that the function is run with the same setup as in other run loops.include/parrot/embed.h and docs/embed.pod.
Initial version by Brent Dax on 2002.1.28.
|