NAME ^

src/global_setup.c - Global setup

DESCRIPTION ^

Performs all the global setting up of things. This includes the very few global variables that Parrot totes around.

What are these global variables?

Functions ^

PARROT_API void Parrot_set_config_hash_internal(NOTNULL(const unsigned char *parrot_config), unsigned int parrot_config_size)

Called by Parrot_set_config_hash with the serialised hash which will be used in subsequently created Interpreters.

static void parrot_set_config_hash_interpreter(PARROT_INTERP)

Used internally to associate the config hash with an Interpreter using the last registered config data.

void init_world_once(PARROT_INTERP)

Call init_world() if it hasn't been called before.

interp should be the root interpreter created in Parrot_new(NULL).

void init_world(PARROT_INTERP)

This is the actual initialization code called by init_world_once().

It sets up the Parrot system, running any platform-specific init code if necessary, then initializing the string subsystem, and setting up the base vtables and core PMCs.

interp should be the root interpreter created in Parrot_new(NULL).

void parrot_global_setup_2(PARROT_INTERP)

called from inmidst of PMC bootstrapping between pass 0 and 1


parrot