public interface RuleAnalysisContext extends DependencyOnlyRuleAnalysisContext
Description's
rule implementation so that the rule analysis can be performed. This context will be used to
create the rule's Provider, and register
corresponding Actions. Actions will be BuildRules for now,
but we will eventually migrate to some other representation of the set of Step.
The RuleAnalysisContext will be very similar to Bazel's com.google.devtools.build.lib.analysis.RuleContext. RuleContext
This will contain information on the configurations of the current rule, information about
it's transitive dependencies via Providers and
their corresponding InfoInterfaces. It will also
offer ways to register Steps.
| Modifier and Type | Method and Description |
|---|---|
ActionRegistry |
actionRegistry() |
BuckEventBus |
getEventBus() |
ProviderInfoCollection |
resolveDep(BuildTarget dep)
same as
resolveDeps(Iterable) but for one dep |
Map<BuildTarget,ProviderInfoCollection> |
resolveDeps(Iterable<BuildTarget> deps) |
Artifact |
resolveSrc(SourcePath src)
same as
resolveSrcs(Iterable) but for one src |
com.google.common.collect.ImmutableSortedSet<Artifact> |
resolveSrcs(Iterable<SourcePath> srcs) |
Map<BuildTarget,ProviderInfoCollection> resolveDeps(Iterable<BuildTarget> deps)
resolveDeps in interface DependencyOnlyRuleAnalysisContextProviderInfoCollection of the providers propagated by each of the
dependencies requested.ProviderInfoCollection resolveDep(BuildTarget dep)
resolveDeps(Iterable) but for one depresolveDep in interface DependencyOnlyRuleAnalysisContextcom.google.common.collect.ImmutableSortedSet<Artifact> resolveSrcs(Iterable<SourcePath> srcs)
resolveSrcs in interface DependencyOnlyRuleAnalysisContextArtifact of the sources of the providers propagated by each of
the source paths requested.Artifact resolveSrc(SourcePath src)
resolveSrcs(Iterable) but for one srcresolveSrc in interface DependencyOnlyRuleAnalysisContextActionRegistry actionRegistry()
BuckEventBus getEventBus()
BuckEventBus for sending stats and printing