2005-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
[mono.git] / mono / monoburg / monoburg.1
index 5edf819801f20dd2d2450b6d5fd9c3d216650ac4..8310de4d5d98541290d988a4cacff39eab27e4e2 100644 (file)
@@ -11,8 +11,12 @@ monoburg \- code generator generator
 .PP
 .B monoburg
 [\-h]  
+[\-e]  
+[\-p]
+[\-c VALUE]    
 [\-d HEADER]
-FILE
+[\-DVALUE]
+[FILE...]
 .SH DESCRIPTION
 The \fImonoburg\fP program is used to generate tree pattern matchers 
 from BURG specifications. \fImonoburg\fP accepts the following EBNF grammar.
@@ -24,6 +28,7 @@ spec:      ccode `%%' { dcl } [`%%' ccode]
 
 dcl:       `%start' nonterm
            `%term' { identifier [`=' integer] }
+           `%termprefix' { identifier }
            nonterm `:' tree [cost] [ `{' ccode `}' ] [costfunc]
 
 tree:      term `(' tree `,' tree `)'
@@ -70,7 +75,8 @@ reg:  Fetch (addr)
 .RE
 .fi
 .PP
-
+A simple pre-processor is included, consisting of: %ifdef, %else and
+%endif.  %ifdef operates on definitions from the command line.
 .SH OPTIONS
 The following options are supported:
 .TP
@@ -79,6 +85,21 @@ Displays usage instructions.
 .TP
 .I "-d HEADER"
 Writes a separate header file which contains all monoburg definitions.
+.TP
+.I "-p"
+Assume termainals are already defined. Its possible to omit the %term
+definitions in this mode if you use the %termprefix command. All symbols
+starting with a prefix specified in %termprefix are considered to be terminals.
+.TP
+.I "-e"
+Extended mode. Enables monoburg to work with DAGs.
+.TP
+.I "-c VALUE"
+Set the default costs to VALUE
+.TP
+.I "-Dvar"
+Defines the variable "var" as true.  This is used with %ifdef, %else
+and %endif in the source files to perform conditional compilation.
 .PP
 .SH AUTHOR
 monoburg was written by Dietmar Maurer. It is based on the papers from