public class CxxThinLTOIndex extends ModernBuildRule<CxxThinLTOIndex.Impl> implements SupportsInputBasedRuleKey, HasAppleDebugSymbolDeps, OverrideScheduleRule
| Modifier and Type | Class and Description |
|---|---|
static class |
CxxThinLTOIndex.Impl
Buildable implementation of CxxLink.
|
| Constructor and Description |
|---|
CxxThinLTOIndex(BuildTarget buildTarget,
ProjectFilesystem projectFilesystem,
SourcePathRuleFinder ruleFinder,
Linker linker,
Path output,
com.google.common.collect.ImmutableList<Arg> args,
Optional<RuleScheduleInfo> ruleScheduleInfo,
boolean cacheable) |
| Modifier and Type | Method and Description |
|---|---|
java.util.stream.Stream<BuildRule> |
getAppleDebugSymbolDeps() |
com.google.common.collect.ImmutableList<Arg> |
getArgs() |
Linker |
getLinker() |
Optional<Path> |
getLinkerMapPath() |
RuleScheduleInfo |
getRuleScheduleInfo() |
SourcePath |
getSourcePathToOutput() |
boolean |
isCacheable()
Whether this
BuildRule can be cached. |
compareTo, getBuildable, getBuildCellPathFactory, getBuildDeps, getBuildSteps, getOutputPathResolver, getSetupStepsForBuildable, getSourcePath, getSourcePaths, injectFieldsIfNecessary, inputBasedRuleKeyIsEnabled, recordOutputs, recordOutputs, recordOutputs, stepsForBuildable, stepsForBuildable, updateBuildRuleResolverequals, getBuildTarget, getDependencies, getProjectFilesystem, getSourcePathOutputs, getType, hasBuildSteps, hashCode, injectFields, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitinputBasedRuleKeyIsEnabled, isSupportedcompareTo, getBuildDeps, getBuildSteps, getBuildTarget, getFullyQualifiedName, getProjectFilesystem, hasBuildSteps, outputFileCanBeCopied, shouldRespectInputSizeLimitForRemoteExecution, toString, updateBuildRuleResolvergetDependencies, getSourcePathOutputsgetTypepublic CxxThinLTOIndex(BuildTarget buildTarget, ProjectFilesystem projectFilesystem, SourcePathRuleFinder ruleFinder, Linker linker, Path output, com.google.common.collect.ImmutableList<Arg> args, Optional<RuleScheduleInfo> ruleScheduleInfo, boolean cacheable)
public java.util.stream.Stream<BuildRule> getAppleDebugSymbolDeps()
getAppleDebugSymbolDeps in interface HasAppleDebugSymbolDepspublic SourcePath getSourcePathToOutput()
getSourcePathToOutput in interface BuildRulegetSourcePathToOutput in class ModernBuildRule<CxxThinLTOIndex.Impl>public RuleScheduleInfo getRuleScheduleInfo()
getRuleScheduleInfo in interface OverrideScheduleRulepublic boolean isCacheable()
BuildRuleBuildRule can be cached.
Uncached build rules are never written out to cache, never read from cache, and does not count in cache statistics. This rule is useful for artifacts which cannot be easily normalized.
Uncached rules are not always rebuilt, however, as long as the existing on-disk
representation is up to date. This means that these rules can take advantage of SupportsInputBasedRuleKey to prevent rebuilding.
isCacheable in interface BuildEngineActionisCacheable in interface BuildRuleisCacheable in class AbstractBuildRulepublic Linker getLinker()
public com.google.common.collect.ImmutableList<Arg> getArgs()