Package org.apache.tools.ant.taskdefs.optional

# Class ANTLR

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.ANTLR

All Implemented Interfaces:
  `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

Constructors
Constructor
Description
`ANTLR()`
Constructor for ANTLR task.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`addClasspathEntry(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(File d)`
The working directory of the process
`void`
`setFork(boolean s)`
`void`
`setGlib(File superGrammar)`
Sets an optional super grammar file
`void`
`setGlib(String superGrammar)`
Deprecated.
since ant 1.6
`void`
`setHtml(boolean enable)`
If true, emit html
`void`
`setOutputdirectory(File outputDirectory)`
The directory to write the generated files to.
`void`
`setTarget(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 Details

### ANTLR

public ANTLR()
Constructor for ANTLR task.

## Method Details

### setTarget

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

Parameters:
  `target` - the grammar file

### setOutputdirectory

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

Parameters:
  `outputDirectory` - the output directory

### setGlib

@Deprecated public void setGlib(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(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(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(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