org.antlr.mojo.antlr3
Class Antlr3Mojo

java.lang.Object
  extended by org.apache.maven.plugin.AbstractMojo
      extended by 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

Goal that picks up all the ANTLR grammars in a project and moves those that are required for generation of the compilable sources into the location that we use to compile them, such as target/generated-sources/antlr3 ...

Author:
Jim Idle

Field Summary
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  java.util.Set excludes
          Provides an explicit list of any grammars that should be excluded from the generate phase of the plugin.
protected  java.util.Set includes
          Provides an explicit list of all the grammars that should be included in the generate phase of the plugin.
protected  java.lang.String messageFormat
          If this parameter is set, it indicates that any warning or error messages returned by ANLTR, shoould 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 format
protected  boolean printGrammar
          If set to true, then the ANTLR tool will print a version of the input grammar which is devoid of any actions that may be present in the input file.
protected  boolean profile
          If set to true, then then the generated parser will compute and report on profile information at runtime.
protected  org.apache.maven.project.MavenProject project
           
protected  boolean report
          If set to true, then after the tool has processed an input grammar file it will report variaous 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 as an aid to debugging.
protected  boolean verbose
          If this parameter is set to true, then ANTLR will report all sorts of things about what it is doing such as the names of files and the version of ANTLR and so on.
 
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
 
Constructor Summary
Antlr3Mojo()
           
 
Method Summary
 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.
 java.util.Set getIncludesPatterns()
           
 java.io.File getLibDirectory()
           
 java.io.File getOutputDirectory()
           
 java.io.File getSourceDirectory()
           
 
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

report

protected boolean report
If set to true, then after the tool has processed an input grammar file it will report variaous 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 which is devoid of any actions that may be present in the input file.


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 then the generated parser will compute and report on 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 as an aid to debugging.


messageFormat

protected java.lang.String messageFormat
If this parameter is set, it indicates that any warning or error messages returned by ANLTR, shoould be formatted in the specified way. Currently, ANTLR suports the built-in formats of antlr, gnu and vs2005.


verbose

protected boolean verbose
If this parameter is set to true, then ANTLR will report all sorts of things about what it is doing such as the names of files and the version of ANTLR and so on.


includes

protected java.util.Set 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. Unless otherwise specified, the include list scans for and includes all files that end in ".g" in any directory beneath src/main/antlr3. Note that this version of the plugin looks for the directory antlr3 and not the directory antlr, so as to avoid clashes and confusion for projects that use both v2 and v3 grammars such as ANTLR itself.


excludes

protected java.util.Set excludes
Provides an explicit list of any grammars that should be excluded from the generate phase of the plugin. Files listed here will not be sent for processing by the ANTLR tool.


project

protected org.apache.maven.project.MavenProject project

tool

protected Tool tool
An instance of the ANTLR tool build

Constructor Detail

Antlr3Mojo

public Antlr3Mojo()
Method Detail

getSourceDirectory

public java.io.File getSourceDirectory()

getOutputDirectory

public java.io.File getOutputDirectory()

getLibDirectory

public java.io.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 - When something is disvocered such as a missing source
org.apache.maven.plugin.MojoFailureException - When something really bad happesn such as not being able to create the ANTLR Tool

getIncludesPatterns

public java.util.Set getIncludesPatterns()


Copyright © 2011. All Rights Reserved.