Package com.facebook.buck.rules.keys
Interface RuleKeyCache<V>
-
- All Known Implementing Classes:
TrackedRuleKeyCache
public interface RuleKeyCache<V>
Interface for caches for rule keys.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description V
get(BuildEngineAction action)
V
get(BuildEngineAction action, java.util.function.Function<? super BuildEngineAction,RuleKeyResult<V>> create)
V
get(AddsToRuleKey appendable, java.util.function.Function<? super AddsToRuleKey,RuleKeyResult<V>> create)
void
invalidateAll()
Invalidate everything in the cache.void
invalidateAllExceptFilesystems(com.google.common.collect.ImmutableSet<ProjectFilesystem> filesystems)
Invalidate all inputs *not* from the givenProjectFilesystem
s and their transitive dependents.void
invalidateFilesystem(ProjectFilesystem filesystem)
Invalidate all inputs from a givenProjectFilesystem
and their transitive dependents.void
invalidateInputs(Iterable<com.facebook.buck.rules.keys.RuleKeyInput> inputs)
Invalidate the given inputs and all their transitive dependents.
-
-
-
Method Detail
-
get
@Nullable V get(BuildEngineAction action)
- Returns:
- the rule key value for the given
action
, or null if it is not cached..
-
get
V get(BuildEngineAction action, java.util.function.Function<? super BuildEngineAction,RuleKeyResult<V>> create)
- Returns:
- the rule key value for the given
rule
, either serving it form cache or by running the given function.
-
get
V get(AddsToRuleKey appendable, java.util.function.Function<? super AddsToRuleKey,RuleKeyResult<V>> create)
- Returns:
- the rule key value for the given
appendable
, either serving it form cache or by running the given function.
-
invalidateInputs
void invalidateInputs(Iterable<com.facebook.buck.rules.keys.RuleKeyInput> inputs)
Invalidate the given inputs and all their transitive dependents.
-
invalidateAllExceptFilesystems
void invalidateAllExceptFilesystems(com.google.common.collect.ImmutableSet<ProjectFilesystem> filesystems)
Invalidate all inputs *not* from the givenProjectFilesystem
s and their transitive dependents.
-
invalidateFilesystem
void invalidateFilesystem(ProjectFilesystem filesystem)
Invalidate all inputs from a givenProjectFilesystem
and their transitive dependents.
-
invalidateAll
void invalidateAll()
Invalidate everything in the cache.
-
-