public class PsiCacheKey<T,H extends PsiElement> extends Key<SoftReference<Pair<java.lang.Long,T>>>
Modifier and Type | Method and Description |
---|---|
static <T,H extends PsiElement> |
create(java.lang.String name,
Function<? super H,? extends T> function)
Creates cache key value using
PsiModificationTracker.JAVA_STRUCTURE_MODIFICATION_COUNT as
modification count to flush cache |
static <T,H extends PsiElement> |
create(java.lang.String name,
Function<? super H,? extends T> function,
Key<?> modifyCause)
Creates cache key value
|
T |
getCachedValueOrNull(H h) |
T |
getValue(H h) |
create, equals, findKeyByName, get, get, get, getKeyByIndex, getRequired, hashCode, isIn, set, set, toString
public static <T,H extends PsiElement> PsiCacheKey<T,H> create(java.lang.String name, Function<? super H,? extends T> function, Key<?> modifyCause)
T
- value typeH
- key typename
- key namefunction
- function to reproduce new value when old value is stalemodifyCause
- one one PsiModificationTracker
's constants that marks when to flush cachepublic static <T,H extends PsiElement> PsiCacheKey<T,H> create(java.lang.String name, Function<? super H,? extends T> function)
PsiModificationTracker.JAVA_STRUCTURE_MODIFICATION_COUNT
as
modification count to flush cacheT
- value typeH
- key typename
- key namefunction
- function to reproduce new value when old value is stale