build_tools/ops2c.pl - Parser for .ops files
% perl build_tools/ops2c.pl trans [--help] [--no-lines] [--dynamic] [--core | input.ops [input2.ops ...]] trans := C | CGoto | CGP | CSwitch | CPrederef
For example:
% perl build_tools/ops2c.pl C --core % perl build_tools/ops2c.pl C --dynamic myops.ops
This script uses a supplied transform to create a pair of C header and implementation files from the operation definitions found in one or more *.ops files.
The first command-line argument is the last package name component of a subclass of Parrot::OpTrans. These subclasses all have full names of the form Parrot::OpTrans::*. An instance of the class is created and later consulted for various bits of information needed to generate the C code. Each creates a different type of run loop.
Parrot::OpTrans
Parrot::OpTrans::*
C
Create the function-based (slow or fast core) run loop.
CGoto
Create the goto run loop.
goto
CGP
Create the goto and predereferenced run loop.
CSwitch
Create the switched and predereferenced run loop.
switch
CPrederef
Create the predereferenced run loop.
--help
Print synopsis.
--dynamic
Indicate that the opcode library is dynamic.
--core
Build the Parrot core opcode library.
--no-lines
Do not generate #line directives in the generated C code.
#line
Parrot::OpsFile
Parrot::Op
Parrot::OpTrans::C
Parrot::OpTrans::CGoto
Parrot::OpTrans::Compiled
Parrot::OpTrans::CGP
Parrot::OpTrans::CSwitch
Parrot::OpTrans::CPrederef
To install Ruby, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Ruby
CPAN shell
perl -MCPAN -e shell install Ruby
For more information on module installation, please visit the detailed CPAN module installation guide.