NAME ^

Parrot::Vtable - Functions for manipulating vtables

SYNOPSIS ^

    use Parrot::Vtable;

DESCRIPTION ^

Parrot::Vtable provides a collection of functions for manipulating PMC vtables. It is used by tools/build/jit2c.pl, tools/build/pmc2c.pl, tools/build/vtable_h.pl, tools/dev/gen_class.pl, and src/pmc/null.pl.

Functions ^

The following functions are exported:

parse_vtable($file)

Returns a reference to an array containing

  [ return_type method_name parameters section MMD_type attributes ]
for each vtable method defined in $file. If $file is unspecified it defaults to vtable.tbl. If it is not an MMD method, MMD_type is -1.

vtbl_defs($vtable)

Returns the C typedef definitions for the elements in the referenced vtable array.

vtbl_struct($vtable)

Returns the C struct definitions for the elements in the referenced vtable array.

vtbl_macros($vtable)

Returns the C #define definitions for the elements in the referenced vtable array.

vtbl_embed($vtable)

Returns the C function definitions to call the vtable methods on a PMC for the elements in the referenced vtable array.

%s %s(%s)

SEE ALSO ^

tools/build/jit2c.pl

tools/build/pmc2c.pl

tools/build/vtable_h.pl

tools/dev/gen_class.pl

src/pmc/null.pl

1;

# Local Variables: # mode: cperl # cperl-indent-level: 4 # fill-column: 100 # End: # vim: expandtab shiftwidth=4:


parrot