public class SkylarkDescription extends Object implements RuleDescriptionWithInstanceName<SkylarkDescriptionArg>
Actions.| Constructor and Description |
|---|
SkylarkDescription() |
| Modifier and Type | Method and Description |
|---|---|
Class<SkylarkDescriptionArg> |
getConstructorArgType()
The type of the constructor argument that is used by this description to create a rule
|
String |
getRuleName(SkylarkDescriptionArg args) |
boolean |
producesCacheableSubgraph()
Whether or not the build rule subgraph produced by this
Description is safe to cache in
IncrementalActionGraphGenerator
for incremental action graph generation. |
ProviderInfoCollection |
ruleImpl(RuleAnalysisContext context,
BuildTarget target,
SkylarkDescriptionArg args)
Runs the rule implementation during the analysis phase.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetConfigurationDepspublic boolean producesCacheableSubgraph()
DescriptionDescription is safe to cache in
IncrementalActionGraphGenerator
for incremental action graph generation.producesCacheableSubgraph in interface Description<SkylarkDescriptionArg>producesCacheableSubgraph in interface RuleDescription<SkylarkDescriptionArg>public ProviderInfoCollection ruleImpl(RuleAnalysisContext context, BuildTarget target, SkylarkDescriptionArg args) throws RuleAnalysisException, ActionCreationException
RuleDescriptionProviders and corresponding
InfoInterfaces, and register its corresponding
actions.ruleImpl in interface RuleDescription<SkylarkDescriptionArg>context - a RuleAnalysisContext containing all the information usable by this rule
for it's analysis and constructive of its corresponding Provider and BuildRule graph.target - the BuildTarget of this ruleargs - The args of type T that this rule uses to rule its analysisProviderInfoCollection that contains all the Provider and the corresponding InfoInterface to be propagated by this rule.RuleAnalysisException - If the rule implementation could not run as expected. e.g. if the
implementation method of a User Defined Rule fails to evalActionCreationException - If an action cannot be created correctlypublic String getRuleName(SkylarkDescriptionArg args)
getRuleName in interface RuleDescriptionWithInstanceName<SkylarkDescriptionArg>DescriptionCache.getRuleType(BaseDescription)public Class<SkylarkDescriptionArg> getConstructorArgType()
BaseDescriptiongetConstructorArgType in interface BaseDescription<SkylarkDescriptionArg>