Invokes the CUP Parser Generator for Java on a grammar file.
This task only invokes JavaCUP if the grammar file is newer than the generated Java files.
Attribute | Description | Required |
input | The name of the file from which to read the JavaCUP specification. | Yes |
srcdir | The name of the root folder of the java class hierarchy. Default is the current folder. | No |
package | The name of the package generated classes go in. If not
specified, this is deduced from the path of input , relative
to srcdir . |
No |
parserClass | The full name of the parser class.
If not specified, the class is derived from the input file: for example,
if input is "src/com/foo/MyParser.cup", and srcdir
is "src", the class will be "com.foo.MyParser". |
No |
symbolsClass | The name of the class which holds the symbols constants. If not specified, this is the parser class name with "Sym" appended, for example "com.foo.MyParserSym". | No |
interface | If true, emit the symbol constant interface, rather than class. | No |
nonterms | If true, put non-terminals in symbol constant class. | No |
expect | Number of conflicts expected/allowed. Default is 0. | No |
compactRed | If true, compact tables by defaulting to most frequent reduce. | No |
warn | If true, warn about useless productions, etc. Default is true. | No |
summary | If true, print a summary of parser states, etc. Default is true. | No |
progress | If true, print messages to indicate progress of the system. Default is false. | No |
time | If true, print time usage summary. | No |
dumpGrammar | If true, produce a dump of the symbols and grammar. Default is false. | No |
dumpStates | If true, produce a dump of the parse state machine. Default is false. | No |
dumpTables | If true, produce a dump of the parse tables. Default is false. | No |
dump | If true, switch on dumpGrammar , dumpStates ,
and dumpTables . Default is false. |
No |
debug | If true, turn on debugging messages within JavaCUP. Default is false. | No |
positions | If true, generate positions code. Default is true. | No |
scanner | If false, don't refer to java_cup.runtime.Scanner in the parser
(for compatibility with old runtimes). Default is true. |
No |
version | If true, print version information for JavaCUP and halt. | No |
<javacup input="src/com/foo/Parser.cup" warn="false" summary="false"/>
This invokes JavaCUP on grammar file src/com/foo/Parser.cup, generating src/com/foo/Parser.java and src/com/foo/ParserSym.java.