Package org.antlr.mojo.antlr3
Class Antlr3Mojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.antlr.mojo.antlr3.Antlr3Mojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
public class Antlr3Mojo extends org.apache.maven.plugin.AbstractMojo
Parses ANTLR grammar files*.g
and transforms them into Java source files.- Author:
- Jim Idle
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
debug
If set to true, then the code generated by the ANTLR code generator will be set to debug mode.protected boolean
dfa
If set to true, then the ANTLR tool will generate a description of the DFA for each decision in the grammar in Dot format.protected Set<String>
excludes
A set of Ant-like exclusion patterns used to prevent certain files from being processed.protected Set<String>
includes
Provides an explicit list of all the grammars that should be included in the generate phase of the plugin.protected String
messageFormat
If this parameter is set, it indicates that any warning or error messages returned by ANLTR, should be formatted in the specified way.protected boolean
nfa
If set to true, then the ANTLR tool will generate a description of the NFA for each rule in Dot formatprotected boolean
printGrammar
If set to true, then the ANTLR tool will print a version of the input grammar(s) which are stripped of any embedded actions.protected boolean
profile
If set to true, then the generated parser will compute and report profile information at runtime.protected org.apache.maven.project.MavenProject
project
The current Maven project.protected boolean
report
If set to true, then after the tool has processed an input grammar file it will report various statistics about the parser, such as information on cyclic DFAs, which rules may use backtracking, and so on.protected Tool
tool
An instance of the ANTLR tool build.protected boolean
trace
If set to true, the generated parser code will log rule entry and exit points to stdout (System.out
for the Java target) as an aid to debugging.protected boolean
verbose
If set to true, then ANTLR will report verbose messages during the code generation process.
-
Constructor Summary
Constructors Constructor Description Antlr3Mojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute()
The main entry point for this Mojo, it is responsible for converting ANTLR 3.x grammars into the target language specified by the grammar.Set<String>
getIncludesPatterns()
File
getLibDirectory()
File
getOutputDirectory()
File
getSourceDirectory()
-
-
-
Field Detail
-
report
protected boolean report
If set to true, then after the tool has processed an input grammar file it will report various statistics about the parser, such as information on cyclic DFAs, which rules may use backtracking, and so on.
-
printGrammar
protected boolean printGrammar
If set to true, then the ANTLR tool will print a version of the input grammar(s) which are stripped of any embedded actions.
-
debug
protected boolean debug
If set to true, then the code generated by the ANTLR code generator will be set to debug mode. This means that when run, the code will 'hang' and wait for a debug connection on a TCP port (49100 by default).
-
profile
protected boolean profile
If set to true, then the generated parser will compute and report profile information at runtime.
-
nfa
protected boolean nfa
If set to true, then the ANTLR tool will generate a description of the NFA for each rule in Dot format
-
dfa
protected boolean dfa
If set to true, then the ANTLR tool will generate a description of the DFA for each decision in the grammar in Dot format.
-
trace
protected boolean trace
If set to true, the generated parser code will log rule entry and exit points to stdout (System.out
for the Java target) as an aid to debugging.
-
messageFormat
protected String messageFormat
If this parameter is set, it indicates that any warning or error messages returned by ANLTR, should be formatted in the specified way. Currently, ANTLR supports the built-in formatsantlr
,gnu
andvs2005
.
-
verbose
protected boolean verbose
If set to true, then ANTLR will report verbose messages during the code generation process. This includes the names of files, the version of ANTLR, and more.
-
includes
protected Set<String> includes
Provides an explicit list of all the grammars that should be included in the generate phase of the plugin. Note that the plugin is smart enough to realize that imported grammars should be included but not acted upon directly by the ANTLR Tool.A set of Ant-like inclusion patterns used to select files from the source directory for processing. By default, the pattern
**/*.g
is used to select grammar files.
-
excludes
protected Set<String> excludes
A set of Ant-like exclusion patterns used to prevent certain files from being processed. By default, this set is empty such that no files are excluded.
-
project
protected org.apache.maven.project.MavenProject project
The current Maven project.
-
tool
protected Tool tool
An instance of the ANTLR tool build.
-
-
Method Detail
-
getSourceDirectory
public File getSourceDirectory()
-
getOutputDirectory
public File getOutputDirectory()
-
getLibDirectory
public File getLibDirectory()
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
The main entry point for this Mojo, it is responsible for converting ANTLR 3.x grammars into the target language specified by the grammar.- Throws:
org.apache.maven.plugin.MojoExecutionException
- if a configuration or grammar error causes the code generation process to failorg.apache.maven.plugin.MojoFailureException
- if an instance of the ANTLR 3Tool
cannot be created
-
-