Package org.gradle.api.plugins.antlr
Class AntlrTask
java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.api.internal.ConventionTask
org.gradle.api.tasks.SourceTask
org.gradle.api.plugins.antlr.AntlrTask
- All Implemented Interfaces:
Comparable<Task>
,org.gradle.api.internal.DynamicObjectAware
,org.gradle.api.internal.IConventionAware
,org.gradle.api.internal.TaskInternal
,Named
,ExtensionAware
,Task
,PatternFilterable
,Configurable<Task>
Generates parsers from Antlr grammars.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.gradle.api.Named
Named.Namer
-
Field Summary
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
execute
(InputChanges inputChanges) Generate the parsers.Returns the classpath containing the Ant ANTLR task implementation.List of command-line arguments passed to the antlr processprotected abstract org.gradle.internal.file.Deleter
The maximum heap size for the forked antlr process (ex: '1g').Returns the directory to generate the parser source files into.Sets the package to be used when generating the parser source files.protected abstract ProjectLayout
Returns the source for this task, after the include and exclude patterns have been applied.protected FileCollection
The sources for incremental change detection.protected abstract org.gradle.process.internal.worker.WorkerProcessFactory
boolean
isTrace()
Specifies that all rules calltraceIn
/traceOut
.boolean
Specifies that all lexer rules calltraceIn
/traceOut
.boolean
Specifies that all parser rules calltraceIn
/traceOut
.boolean
Specifies that all tree walker rules calltraceIn
/traceOut
.protected void
setAntlrClasspath
(FileCollection antlrClasspath) Specifies the classpath containing the Ant ANTLR task implementation.void
setArguments
(List<String> arguments) void
setMaxHeapSize
(String maxHeapSize) void
setOutputDirectory
(File outputDirectory) Specifies the directory to generate the parser source files into.void
Sets the source for this task.void
Sets the source for this task.void
setTrace
(boolean trace) void
setTraceLexer
(boolean traceLexer) void
setTraceParser
(boolean traceParser) void
setTraceTreeWalker
(boolean traceTreeWalker) Methods inherited from class org.gradle.api.tasks.SourceTask
exclude, exclude, exclude, exclude, getExcludes, getIncludes, getPatternSet, getPatternSetFactory, include, include, include, include, setExcludes, setIncludes, source
Methods inherited from class org.gradle.api.internal.ConventionTask
conventionMapping, conventionMapping, getConventionMapping
Methods inherited from class org.gradle.api.DefaultTask
compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService
Methods inherited from class org.gradle.api.internal.AbstractTask
acceptServiceReferences, appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjects
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.gradle.api.Task
doNotTrackState, notCompatibleWithConfigurationCache
-
Constructor Details
-
AntlrTask
public AntlrTask()
-
-
Method Details
-
isTrace
Specifies that all rules calltraceIn
/traceOut
. -
setTrace
public void setTrace(boolean trace) -
isTraceLexer
Specifies that all lexer rules calltraceIn
/traceOut
. -
setTraceLexer
public void setTraceLexer(boolean traceLexer) -
isTraceParser
Specifies that all parser rules calltraceIn
/traceOut
. -
setTraceParser
public void setTraceParser(boolean traceParser) -
isTraceTreeWalker
Specifies that all tree walker rules calltraceIn
/traceOut
. -
setTraceTreeWalker
public void setTraceTreeWalker(boolean traceTreeWalker) -
getMaxHeapSize
The maximum heap size for the forked antlr process (ex: '1g'). -
setMaxHeapSize
-
setArguments
-
getArguments
List of command-line arguments passed to the antlr process- Returns:
- The antlr command-line arguments
-
getOutputDirectory
Returns the directory to generate the parser source files into.- Returns:
- The output directory.
-
setOutputDirectory
Specifies the directory to generate the parser source files into.- Parameters:
outputDirectory
- The output directory. Must not be null.
-
getAntlrClasspath
Returns the classpath containing the Ant ANTLR task implementation.- Returns:
- The Ant task implementation classpath.
-
setAntlrClasspath
Specifies the classpath containing the Ant ANTLR task implementation.- Parameters:
antlrClasspath
- The Ant task implementation classpath. Must not be null.
-
getWorkerProcessBuilderFactory
@Inject protected abstract org.gradle.process.internal.worker.WorkerProcessFactory getWorkerProcessBuilderFactory() -
getProjectLayout
-
execute
Generate the parsers.- Since:
- 6.0
-
setSource
Sets the source for this task. Delegates tosetSource(Object)
. If the source is of typeSourceDirectorySet
, then the relative path of each source grammar files is used to determine the relative output path of the generated source If the source is not of typeSourceDirectorySet
, then the generated source files end up flattened in the specified output directory.- Overrides:
setSource
in classSourceTask
- Parameters:
source
- The source.- Since:
- 4.0
-
setSource
Sets the source for this task. Delegates toSourceTask.setSource(Object)
. If the source is of typeSourceDirectorySet
, then the relative path of each source grammar files is used to determine the relative output path of the generated source If the source is not of typeSourceDirectorySet
, then the generated source files end up flattened in the specified output directory.- Overrides:
setSource
in classSourceTask
- Parameters:
source
- The source.
-
getSource
Returns the source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.The
PathSensitivity
for the sources is configured to bePathSensitivity.ABSOLUTE
. If your sources are less strict, please change it accordingly by overriding this method in your subclass.- Overrides:
getSource
in classSourceTask
- Returns:
- The source.
-
getStableSources
@SkipWhenEmpty @IgnoreEmptyDirectories @PathSensitive(RELATIVE) @InputFiles protected FileCollection getStableSources()The sources for incremental change detection.- Since:
- 6.0
-
getDeleter
@Inject protected abstract org.gradle.internal.file.Deleter getDeleter() -
getPackageName
Sets the package to be used when generating the parser source files. Supported only when using Antlr 4. This will add a "-package" argument to the ANTLR command line as well as adjust the target directory to generate sources into a package-specific subdirectory ofgetOutputDirectory()
. For example, if the package name is set to "com.foo.bar" and the output directory is set to "path/to/output", the sources will be generated into "path/to/output/com/foo/bar".- Since:
- 9.1.0
-