org.apache.tools.ant.taskdefs.optional
Class ANTLR

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.optional.ANTLR
All Implemented Interfaces:
java.lang.Cloneable

public class ANTLR
extends Task

Invokes the ANTLR Translator generator on a grammar file.


Field Summary
 
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
ANTLR()
          Constructor for ANTLR task.
 
Method Summary
protected  void addClasspathEntry(java.lang.String resource)
          Search for the given resource and add the directory or archive that contains it to the classpath.
 Path createClasspath()
          Adds a classpath to be set because a directory might be given for Antlr debug.
 Commandline.Argument createJvmarg()
          Adds a new JVM argument.
 void execute()
          Execute the task.
 void init()
          Adds the jars or directories containing Antlr this should make the forked JVM work without having to specify it directly.
protected  boolean is272()
          Whether the antlr version is 2.7.2 (or higher).
 void setDebug(boolean enable)
          Sets a flag to enable ParseView debugging
 void setDiagnostic(boolean enable)
          Sets a flag to emit diagnostic text
 void setDir(java.io.File d)
          The working directory of the process
 void setFork(boolean s)
           
 void setGlib(java.io.File superGrammar)
          Sets an optional super grammar file
 void setGlib(java.lang.String superGrammar)
          Deprecated. since ant 1.6
 void setHtml(boolean enable)
          If true, emit html
 void setOutputdirectory(java.io.File outputDirectory)
          The directory to write the generated files to.
 void setTarget(java.io.File target)
          The grammar file to process.
 void setTrace(boolean enable)
          If true, enables all tracing.
 void setTraceLexer(boolean enable)
          If true, enables lexer tracing.
 void setTraceParser(boolean enable)
          If true, enables parser tracing.
 void setTraceTreeWalker(boolean enable)
          Sets a flag to allow the user to enable tree walker tracing
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ANTLR

public ANTLR()
Constructor for ANTLR task.

Method Detail

setTarget

public void setTarget(java.io.File target)
The grammar file to process.

Parameters:
target - the gramer file

setOutputdirectory

public void setOutputdirectory(java.io.File outputDirectory)
The directory to write the generated files to.

Parameters:
outputDirectory - the output directory

setGlib

public void setGlib(java.lang.String superGrammar)
Deprecated. since ant 1.6

Sets an optional super grammar file. Use setGlib(File superGrammar) instead.

Parameters:
superGrammar - the super grammar filename

setGlib

public void setGlib(java.io.File superGrammar)
Sets an optional super grammar file

Parameters:
superGrammar - the super grammar file
Since:
ant 1.6

setDebug

public void setDebug(boolean enable)
Sets a flag to enable ParseView debugging

Parameters:
enable - a boolean value

setHtml

public void setHtml(boolean enable)
If true, emit html

Parameters:
enable - a boolean value

setDiagnostic

public void setDiagnostic(boolean enable)
Sets a flag to emit diagnostic text

Parameters:
enable - a boolean value

setTrace

public void setTrace(boolean enable)
If true, enables all tracing.

Parameters:
enable - a boolean value

setTraceParser

public void setTraceParser(boolean enable)
If true, enables parser tracing.

Parameters:
enable - a boolean value

setTraceLexer

public void setTraceLexer(boolean enable)
If true, enables lexer tracing.

Parameters:
enable - a boolean value

setTraceTreeWalker

public void setTraceTreeWalker(boolean enable)
Sets a flag to allow the user to enable tree walker tracing

Parameters:
enable - a boolean value

setFork

public void setFork(boolean s)
Parameters:
s - a boolean value

setDir

public void setDir(java.io.File d)
The working directory of the process

Parameters:
d - the working directory

createClasspath

public Path createClasspath()
Adds a classpath to be set because a directory might be given for Antlr debug.

Returns:
a path to be configured

createJvmarg

public Commandline.Argument createJvmarg()
Adds a new JVM argument.

Returns:
create a new JVM argument so that any argument can be passed to the JVM.
See Also:
setFork(boolean)

init

public void init()
          throws BuildException
Adds the jars or directories containing Antlr this should make the forked JVM work without having to specify it directly.

Overrides:
init in class Task
Throws:
BuildException - on error

addClasspathEntry

protected void addClasspathEntry(java.lang.String resource)
Search for the given resource and add the directory or archive that contains it to the classpath.

Doesn't work for archives in JDK 1.1 as the URL returned by getResource doesn't contain the name of the archive.

Parameters:
resource - the resource name to search for

execute

public void execute()
             throws BuildException
Execute the task.

Overrides:
execute in class Task
Throws:
BuildException - on error

is272

protected boolean is272()
Whether the antlr version is 2.7.2 (or higher).

Returns:
true if the version of Antlr present is 2.7.2 or later.
Since:
Ant 1.6