NAME
Parrot::Pmc2c::UtilFunctions
DESCRIPTION
Various utility functions used in PMC to C transformations. All functions are exported on request only.
SUBROUTINES
passable_args_from_parameter_list( $parms )-
Given $parms like
const STRING *foo, int bar, returns, foo, bar. It's handy for passing into function calls. args_from_parameter_list( $parms )-
Returns two arrayrefs of arg types and var names.
count_newlines($string)-
Returns the number of newlines (
\n) in$string. dont_edit($pmcfile)-
Returns the "DO NOT EDIT THIS FILE" warning text.
$pmcfileis the name of the original source *.pmc file. return_statement($method, $body)-
Generate the C code for a
returnstatement, if the body is empty then make a cast if needed.This method is imported by subclasses.
dynext_load_code($library_name, %classes)-
$library_nameis the name of the dynamic library to be created.%classesis a map from the PMC names for which code is to be generated, to dump info (PMC metadata).This function is exported.
_flatten_class_hierarchy($classes)-
Flattens and returns the given dynpmc hierarchy into a list where all parents appear before their children. Internal use only.
c_code_coda()-
Returns the Parrot C code coda