org.jetbrains.jet.storage
Class LockBasedLazyResolveStorageManager

java.lang.Object
  extended by org.jetbrains.jet.storage.LockBasedLazyResolveStorageManager
All Implemented Interfaces:
LazyResolveStorageManager

public class LockBasedLazyResolveStorageManager
extends java.lang.Object
implements LazyResolveStorageManager


Constructor Summary
LockBasedLazyResolveStorageManager(LockBasedStorageManager storageManager)
           
 
Method Summary
<T> T
compute(kotlin.Function0<? extends T> computable)
           
<T>
createLazyValue(kotlin.Function0<? extends T> computable)
           
<T>
createLazyValueWithPostCompute(kotlin.Function0<? extends T> computable, kotlin.Function1<? super java.lang.Boolean,? extends T> onRecursiveCall, kotlin.Function1<? super T,? extends kotlin.Unit> postCompute)
           
<K,V>
createMemoizedFunction(kotlin.Function1<? super K,? extends V> compute)
           
<K,V>
createMemoizedFunctionWithNullableValues(kotlin.Function1<? super K,? extends V> compute)
           
<T>
createNullableLazyValue(kotlin.Function0<? extends T> computable)
           
<T>
createNullableLazyValueWithPostCompute(kotlin.Function0<? extends T> computable, kotlin.Function1<? super T,? extends kotlin.Unit> postCompute)
           
<T>
createRecursionTolerantLazyValue(kotlin.Function0<? extends T> computable, T onRecursiveCall)
           
<T>
createRecursionTolerantNullableLazyValue(kotlin.Function0<? extends T> computable, T onRecursiveCall)
           
 BindingTrace createSafeTrace(BindingTrace originalTrace)
           
<K,V>
createWeaklyRetainedMemoizedFunction(kotlin.Function1<K,V> compute)
           
<K,V>
createWeaklyRetainedMemoizedFunctionWithNullableValues(kotlin.Function1<K,V> compute)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LockBasedLazyResolveStorageManager

public LockBasedLazyResolveStorageManager(@NotNull
                                          LockBasedStorageManager storageManager)
Method Detail

createWeaklyRetainedMemoizedFunction

@NotNull
public <K,V>  createWeaklyRetainedMemoizedFunction(@NotNull
                                                                kotlin.Function1<K,V> compute)
Specified by:
createWeaklyRetainedMemoizedFunction in interface LazyResolveStorageManager

createWeaklyRetainedMemoizedFunctionWithNullableValues

@NotNull
public <K,V>  createWeaklyRetainedMemoizedFunctionWithNullableValues(@NotNull
                                                                                  kotlin.Function1<K,V> compute)
Specified by:
createWeaklyRetainedMemoizedFunctionWithNullableValues in interface LazyResolveStorageManager

createSafeTrace

@NotNull
public BindingTrace createSafeTrace(@NotNull
                                            BindingTrace originalTrace)
Specified by:
createSafeTrace in interface LazyResolveStorageManager

createMemoizedFunction

@NotNull
public <K,V>  createMemoizedFunction(@NotNull
                                                  kotlin.Function1<? super K,? extends V> compute)

createMemoizedFunctionWithNullableValues

@NotNull
public <K,V>  createMemoizedFunctionWithNullableValues(@NotNull
                                                                    kotlin.Function1<? super K,? extends V> compute)

createLazyValue

@NotNull
public <T>  createLazyValue(@NotNull
                                         kotlin.Function0<? extends T> computable)

createRecursionTolerantLazyValue

@NotNull
public <T>  createRecursionTolerantLazyValue(@NotNull
                                                          kotlin.Function0<? extends T> computable,
                                                          @NotNull
                                                          T onRecursiveCall)

createLazyValueWithPostCompute

@NotNull
public <T>  createLazyValueWithPostCompute(@NotNull
                                                        kotlin.Function0<? extends T> computable,
                                                        @Nullable
                                                        kotlin.Function1<? super java.lang.Boolean,? extends T> onRecursiveCall,
                                                        @NotNull
                                                        kotlin.Function1<? super T,? extends kotlin.Unit> postCompute)

createNullableLazyValue

@NotNull
public <T>  createNullableLazyValue(@NotNull
                                                 kotlin.Function0<? extends T> computable)

createRecursionTolerantNullableLazyValue

@NotNull
public <T>  createRecursionTolerantNullableLazyValue(@NotNull
                                                                  kotlin.Function0<? extends T> computable,
                                                                  T onRecursiveCall)

createNullableLazyValueWithPostCompute

@NotNull
public <T>  createNullableLazyValueWithPostCompute(@NotNull
                                                                kotlin.Function0<? extends T> computable,
                                                                @NotNull
                                                                kotlin.Function1<? super T,? extends kotlin.Unit> postCompute)

compute

public <T> T compute(@NotNull
                     kotlin.Function0<? extends T> computable)