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:
java.lang.Comparable<Task>
,org.gradle.api.internal.DynamicObjectAware
,org.gradle.api.internal.IConventionAware
,org.gradle.api.internal.TaskInternal
,Named
,ExtensionAware
,Task
,PatternFilterable
,Configurable<Task>
@NonNullApi @CacheableTask public abstract class AntlrTask extends SourceTask
Generates parsers from Antlr grammars.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.gradle.api.Task
Task.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 Constructor Description AntlrTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute(InputChanges inputChanges)
Generate the parsers.FileCollection
getAntlrClasspath()
Returns the classpath containing the Ant ANTLR task implementation.java.util.List<java.lang.String>
getArguments()
List of command-line arguments passed to the antlr processprotected org.gradle.internal.file.Deleter
getDeleter()
java.lang.String
getMaxHeapSize()
The maximum heap size for the forked antlr process (ex: '1g').java.io.File
getOutputDirectory()
Returns the directory to generate the parser source files into.protected ProjectLayout
getProjectLayout()
FileTree
getSource()
Returns the source for this task, after the include and exclude patterns have been applied.protected FileCollection
getStableSources()
The sources for incremental change detection.protected org.gradle.process.internal.worker.WorkerProcessFactory
getWorkerProcessBuilderFactory()
boolean
isTrace()
Specifies that all rules calltraceIn
/traceOut
.boolean
isTraceLexer()
Specifies that all lexer rules calltraceIn
/traceOut
.boolean
isTraceParser()
Specifies that all parser rules calltraceIn
/traceOut
.boolean
isTraceTreeWalker()
Specifies that all tree walker rules calltraceIn
/traceOut
.protected void
setAntlrClasspath(FileCollection antlrClasspath)
Specifies the classpath containing the Ant ANTLR task implementation.void
setArguments(java.util.List<java.lang.String> arguments)
void
setMaxHeapSize(java.lang.String maxHeapSize)
void
setOutputDirectory(java.io.File outputDirectory)
Specifies the directory to generate the parser source files into.void
setSource(java.lang.Object source)
Sets the source for this task.void
setSource(FileTree source)
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, getConvention, 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, getConvention, notCompatibleWithConfigurationCache
-
-
-
-
Method Detail
-
isTrace
@Input public boolean isTrace()
Specifies that all rules calltraceIn
/traceOut
.
-
setTrace
public void setTrace(boolean trace)
-
isTraceLexer
@Input public boolean isTraceLexer()
Specifies that all lexer rules calltraceIn
/traceOut
.
-
setTraceLexer
public void setTraceLexer(boolean traceLexer)
-
isTraceParser
@Input public boolean isTraceParser()
Specifies that all parser rules calltraceIn
/traceOut
.
-
setTraceParser
public void setTraceParser(boolean traceParser)
-
isTraceTreeWalker
@Input public boolean isTraceTreeWalker()
Specifies that all tree walker rules calltraceIn
/traceOut
.
-
setTraceTreeWalker
public void setTraceTreeWalker(boolean traceTreeWalker)
-
getMaxHeapSize
@Internal public java.lang.String getMaxHeapSize()
The maximum heap size for the forked antlr process (ex: '1g').
-
setMaxHeapSize
public void setMaxHeapSize(java.lang.String maxHeapSize)
-
setArguments
public void setArguments(java.util.List<java.lang.String> arguments)
-
getArguments
@Input public java.util.List<java.lang.String> getArguments()
List of command-line arguments passed to the antlr process- Returns:
- The antlr command-line arguments
-
getOutputDirectory
@OutputDirectory public java.io.File getOutputDirectory()
Returns the directory to generate the parser source files into.- Returns:
- The output directory.
-
setOutputDirectory
public void setOutputDirectory(java.io.File outputDirectory)
Specifies the directory to generate the parser source files into.- Parameters:
outputDirectory
- The output directory. Must not be null.
-
getAntlrClasspath
@Classpath public FileCollection getAntlrClasspath()
Returns the classpath containing the Ant ANTLR task implementation.- Returns:
- The Ant task implementation classpath.
-
setAntlrClasspath
protected void setAntlrClasspath(FileCollection antlrClasspath)
Specifies the classpath containing the Ant ANTLR task implementation.- Parameters:
antlrClasspath
- The Ant task implementation classpath. Must not be null.
-
getWorkerProcessBuilderFactory
@Inject protected org.gradle.process.internal.worker.WorkerProcessFactory getWorkerProcessBuilderFactory()
-
getProjectLayout
@Inject protected ProjectLayout getProjectLayout()
-
execute
public void execute(InputChanges inputChanges)
Generate the parsers.- Since:
- 6.0
-
setSource
public void setSource(FileTree source)
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
public void setSource(java.lang.Object source)
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
@Internal("tracked via stableSources") public FileTree 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 org.gradle.internal.file.Deleter getDeleter()
-
-