NAME

Parrot::Pmc2c::Dumper

DESCRIPTION

Create dump file for PMCs.

FUNCTIONS

Public Functions

dump_pmc()

$return_value = dump_pmc($pmc2cMain);

Purpose: Creates a .dump file for each file listed in pmc2cMain's arg key (which can be found in the directories listed in pmc2cMain's include key).

Arguments:

Return Values: Returns 1 upon success.

Comments: Called when --dump is specified as the command-line option to pmc2c.pl.

Non-Public Methods

These functions are expressed as methods called on the Parrot::Pmc2c::Pmc2cMain object, but only because they make use of data stored in that object. They are called within the publicly available methods described above and are not intended to be publicly callable.

gen_parent_lookup_info()

$pmc2cMain->gen_parent_lookup_info($name, \%all);

Purpose: Generate an ordered list of parent classes to put in the $classes-{name}->{parents}> array, using the given directories to find parents.

Arguments: List of two arguments:

  • String holding class name.

  • Hash reference holding data structure being built up within dump_pmc().

Return Value: Returns 1 upon success.

Comments: Called within dump_pmc().

Subroutines

gen_parent_reverse_lookup_info()

$class = gen_parent_reverse_lookup_info($name, $all, $vt);

Purpose: Generate a list of inherited methods for $name by searching the inheritance tree. The method list is found in $vt.

Arguments: List of three elements:

  • String holding name of class being dumped.

  • Reference to the hash holding the data structure being built up within dump_pmc().

  • The result of a call of read_dump() on vtable.pmc.

Return Value: Returns 1 upon success.

Comments: Called within dump_pmc().