public class GoTestDescription extends Object implements DescriptionWithTargetGraph<GoTestDescriptionArg>, Flavored, MetadataProvidingDescription<GoTestDescriptionArg>, ImplicitDepsInferringDescription<com.facebook.buck.features.go.GoTestDescription.AbstractGoTestDescriptionArg>, VersionRoot<GoTestDescriptionArg>
Modifier and Type | Field and Description |
---|---|
static com.google.common.collect.ImmutableList<MacroExpander<? extends Macro,?>> |
MACRO_EXPANDERS |
Constructor and Description |
---|
GoTestDescription(GoBuckConfig goBuckConfig,
ToolchainProvider toolchainProvider) |
Modifier and Type | Method and Description |
---|---|
BuildRule |
createBuildRule(BuildRuleCreationContextWithTargetGraph context,
BuildTarget buildTarget,
BuildRuleParams params,
GoTestDescriptionArg args)
Create a
BuildRule for the given BuildRuleParams . |
<U> Optional<U> |
createMetadata(BuildTarget buildTarget,
ActionGraphBuilder graphBuilder,
CellPathResolver cellRoots,
GoTestDescriptionArg args,
Optional<com.google.common.collect.ImmutableMap<BuildTarget,Version>> selectedVersions,
Class<U> metadataClass) |
void |
findDepsForTargetFromConstructorArgs(BuildTarget buildTarget,
CellNameResolver cellRoots,
com.facebook.buck.features.go.GoTestDescription.AbstractGoTestDescriptionArg constructorArg,
com.google.common.collect.ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
com.google.common.collect.ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) |
Class<GoTestDescriptionArg> |
getConstructorArgType()
The type of the constructor argument that is used by this description to create a rule
|
boolean |
hasFlavors(com.google.common.collect.ImmutableSet<Flavor> flavors,
TargetConfiguration toolchainTargetConfiguration) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
flavorDomains
isVersionRoot
producesCacheableSubgraph
getConfigurationDeps
public static final com.google.common.collect.ImmutableList<MacroExpander<? extends Macro,?>> MACRO_EXPANDERS
public GoTestDescription(GoBuckConfig goBuckConfig, ToolchainProvider toolchainProvider)
public Class<GoTestDescriptionArg> getConstructorArgType()
BaseDescription
getConstructorArgType
in interface BaseDescription<GoTestDescriptionArg>
public boolean hasFlavors(com.google.common.collect.ImmutableSet<Flavor> flavors, TargetConfiguration toolchainTargetConfiguration)
hasFlavors
in interface Flavored
flavors
- The set of Flavor
s to consider. All must match.BuildRule
of the given Flavor
can be created.public <U> Optional<U> createMetadata(BuildTarget buildTarget, ActionGraphBuilder graphBuilder, CellPathResolver cellRoots, GoTestDescriptionArg args, Optional<com.google.common.collect.ImmutableMap<BuildTarget,Version>> selectedVersions, Class<U> metadataClass)
createMetadata
in interface MetadataProvidingDescription<GoTestDescriptionArg>
public BuildRule createBuildRule(BuildRuleCreationContextWithTargetGraph context, BuildTarget buildTarget, BuildRuleParams params, GoTestDescriptionArg args)
DescriptionWithTargetGraph
BuildRule
for the given BuildRuleParams
. Note that the BuildTarget
referred to in the params
contains the Flavor
to create.createBuildRule
in interface DescriptionWithTargetGraph<GoTestDescriptionArg>
args
- A constructor argument, of type as returned by BaseDescription.getConstructorArgType()
.BuildRule
that describes the default flavour of the rule being described.public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellNameResolver cellRoots, com.facebook.buck.features.go.GoTestDescription.AbstractGoTestDescriptionArg constructorArg, com.google.common.collect.ImmutableCollection.Builder<BuildTarget> extraDepsBuilder, com.google.common.collect.ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder)
findDepsForTargetFromConstructorArgs
in interface ImplicitDepsInferringDescription<com.facebook.buck.features.go.GoTestDescription.AbstractGoTestDescriptionArg>