rlgen-java(1)
NAME
rlgen-java - code generator for Ragel State Machine Compiler
SYNOPSIS
rlgen-java [options] file
DESCRIPTION
This is a backend component of Ragel. This program accepts a machine
compiled by the frontend program ragel(1) and generates Java code.
Use it with the frontend option -J.
OPTIONS
- -h, -H, -?, --help
- Display help and exit.
- -v Display version information and exit.
- -o file
- Write output to file. If -o is not given, a default file name is chosen by replacing the suffix of the input. For source files ending in .rh the suffix .h is used. For all other source files a suffix based on the output language is used (.c, .cpp, .m, .dot)
- -T0 Generate a table driven FSM. This is the default code style.
- The table driven FSM represents the state machine as static data. There are tables of states, transitions, indicies and actions. The current state is stored in a variable. The execution is a loop that looks that given the current state and current character to process looks up the transition to take using a binary search, executes any actions and moves to the target state. In general, the table driven FSM produces a smaller binary and requires a less expensive host language compile but results in slower running code. The table driven FSM is suitable for any FSM.
CREDITS
Ragel was written by Adrian Thurston <thurston@cs.queensu.ca>. Contributions to Java code generation by Colin Fleming.
SEE ALSO
ragel(1), rlgen-cd(1), rlgen-ruby(1), rlgen-dot(1), re2c(1), flex(1)
- Homepage: http://www.cs.queensu.ca/~thurston/ragel/