|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
| Packages that use Thunk | |
|---|---|
| edu.rice.cs.plt.collect | Contains general-purpose extensions to and variations on the java.util collections
framework. |
| edu.rice.cs.plt.concurrent | Contains tools to support safe multi-threaded programs. |
| edu.rice.cs.plt.debug | Defines a variety of logging classes, along with other facilities for code-embedded debugging. |
| edu.rice.cs.plt.iter | A collection of implementations of Iterable and Iterator. |
| edu.rice.cs.plt.lambda | A collection of interfaces facilitating first-class functions in Java. |
| edu.rice.cs.plt.recur | Classes enabling safe handling of infinite or extremely deep recursion. |
| edu.rice.cs.plt.reflect | Facilities for loading and accessing Class objects and other reflection APIs. |
| edu.rice.cs.plt.swing | |
| edu.rice.cs.plt.tuple | Classes for the type-parameterized representation of tuples. |
| Uses of Thunk in edu.rice.cs.plt.collect |
|---|
| Methods in edu.rice.cs.plt.collect that return Thunk | ||
|---|---|---|
static
|
CollectUtil.arrayListFactory()
Get a factory that produces ArrayLists by invoking the empty ArrayList constructor. |
|
static
|
CollectUtil.arrayListFactory(int initialCapacity)
Get a factory that produces ArrayLists with the given initial capacity. |
|
static
|
CollectUtil.copyOnWriteArrayListFactory()
Get a factory that produces CopyOnWriteArraySets by invoking the empty CopyOnWriteArraySet constructor. |
|
static
|
CollectUtil.copyOnWriteArraySetFactory()
Get a factory that produces CopyOnWriteArraySets by invoking the empty CopyOnWriteArraySet constructor. |
|
static
|
SnapshotSynchronizedList.factory(Thunk<? extends List<T>> delegateFactory)
Get a thunk that invokes the constructor with sets produced by the given factory. |
|
static
|
SnapshotSynchronizedSet.factory(Thunk<? extends Set<T>> delegateFactory)
Get a thunk that invokes the constructor with sets produced by the given factory. |
|
static
|
CollectUtil.hashMapFactory()
Get a factory that produces HashMaps by invoking the empty HashMap constructor. |
|
static
|
CollectUtil.hashMapFactory(int initialCapacity)
Get a factory that produces HashMaps with the given initial capacity. |
|
static
|
CollectUtil.hashSetFactory()
Get a factory that produces HashSets by invoking the empty HashSet constructor. |
|
static
|
CollectUtil.hashSetFactory(int initialCapacity)
Get a factory that produces HashSets with the given initial capacity. |
|
static
|
CollectUtil.linkedHashMapFactory()
Get a factory that produces LinkedHashMaps by invoking the empty LinkedHashMap constructor. |
|
static
|
CollectUtil.linkedHashMapFactory(int initialCapacity)
Get a factory that produces LinkedHashMaps with the given initial capacity. |
|
static
|
CollectUtil.linkedHashSetFactory()
Get a factory that produces LinkedHashSets by invoking the empty LinkedHashSet constructor. |
|
static
|
CollectUtil.linkedHashSetFactory(int initialCapacity)
Get a factory that produces LinkedHashSets with the given initial capacity. |
|
static
|
CollectUtil.linkedListFactory()
Get a factory that produces LinkedLists by invoking the empty LinkedList constructor. |
|
static
|
CollectUtil.treeMapFactory()
Get a factory that produces TreeMaps sorted according to the elements' natural order. |
|
static
|
CollectUtil.treeMapFactory(Comparator<? super K> comparator)
Get a factory that produces TreeMaps sorted according to the given comparator. |
|
static
|
CollectUtil.treeSetFactory()
Get a factory that produces TreeSets sorted according to the elements' natural order. |
|
static
|
CollectUtil.treeSetFactory(Comparator<? super T> comparator)
Get a factory that produces TreeSets sorted according to the given comparator. |
|
| Methods in edu.rice.cs.plt.collect with parameters of type Thunk | ||
|---|---|---|
static
|
SnapshotSynchronizedList.factory(Thunk<? extends List<T>> delegateFactory)
Get a thunk that invokes the constructor with sets produced by the given factory. |
|
static
|
SnapshotSynchronizedSet.factory(Thunk<? extends Set<T>> delegateFactory)
Get a thunk that invokes the constructor with sets produced by the given factory. |
|
| Constructors in edu.rice.cs.plt.collect with parameters of type Thunk | |
|---|---|
ConcreteRelationIndex(Thunk<? extends Map<K,PredicateSet<V>>> mapFactory,
Thunk<? extends Set<V>> setFactory)
Create an empty ConcreteRelationIndex. |
|
ConcreteRelationIndex(Thunk<? extends Map<K,PredicateSet<V>>> mapFactory,
Thunk<? extends Set<V>> setFactory)
Create an empty ConcreteRelationIndex. |
|
IndexedFunctionalRelation(Thunk<Map<T1,T2>> firstIndexFactory)
Create an index based on the given factory. |
|
IndexedFunctionalRelation(Thunk<Map<T1,T2>> firstIndexFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedFunctionalRelation(Thunk<Map<T1,T2>> firstIndexFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedFunctionalRelation(Thunk<Map<T1,T2>> firstIndexFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedInjectiveRelation(Thunk<Map<T2,T1>> secondIndexFactory)
Create an index based on the given factory. |
|
IndexedInjectiveRelation(Thunk<Map<T2,T1>> secondIndexFactory,
Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedInjectiveRelation(Thunk<Map<T2,T1>> secondIndexFactory,
Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedInjectiveRelation(Thunk<Map<T2,T1>> secondIndexFactory,
Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedOneToOneRelation(Thunk<Map<T1,T2>> firstIndexFactory,
Thunk<Map<T2,T1>> secondIndexFactory)
Create an IndexedOneToOneRelation using the given map factories to produce indices. |
|
IndexedOneToOneRelation(Thunk<Map<T1,T2>> firstIndexFactory,
Thunk<Map<T2,T1>> secondIndexFactory)
Create an IndexedOneToOneRelation using the given map factories to produce indices. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory)
Create an index based on the given factories. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory)
Create an index based on the given factories. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
IndexedRelation(Thunk<Map<T1,PredicateSet<T2>>> firstIndexFactory,
Thunk<Set<T2>> firstIndexEntryFactory,
Thunk<Map<T2,PredicateSet<T1>>> secondIndexFactory,
Thunk<Set<T1>> secondIndexEntryFactory)
Create indices based on the given factories. |
|
UnindexedRelation(Thunk<Set<Pair<T1,T2>>> setFactory)
Create an UnindexedRelation wrapping an instance of the provided set. |
|
| Uses of Thunk in edu.rice.cs.plt.concurrent |
|---|
| Subinterfaces of Thunk in edu.rice.cs.plt.concurrent | |
|---|---|
interface |
IncrementalTask<I,R>
A thunk that performs incremental computation. |
| Classes in edu.rice.cs.plt.concurrent that implement Thunk | |
|---|---|
class |
ConcurrentBox<T>
A thread-safe box implementation. |
class |
ExecutorIncrementalTaskController<I,R>
A TaskController for an IncrementalTask, which is scheduled for execution by an Executor. |
class |
ExecutorTaskController<R>
A TaskController for a simple task, which is scheduled for execution by an Executor. |
class |
FutureTaskController<T>
Treats an arbitrary Future-producing computation as a TaskController. |
class |
IncrementalTaskController<I,R>
Provides access to a concurrent task that produces incremental results. |
class |
PollingTaskController<R>
A TaskController for tasks that are run without any facility for executing code when the task is complete — instead, the controller must either block, poll for the task's current status. |
class |
ProcessIncrementalTaskController<I,R>
A TaskController that executes an IncrementalTask in another Java process. |
class |
ProcessTaskController<R>
A TaskController that executes a simple task in another Java process. |
class |
StateMonitor<T>
Provides a convenient facility for blocking until a state change explicitly occurs. |
class |
TaskController<R>
Provides access to a concurrent task that produces a value. |
| Methods in edu.rice.cs.plt.concurrent with parameters of type Thunk | ||
|---|---|---|
static
|
ConcurrentUtil.asCallable(Thunk<? extends T> thunk)
Wrap a thunk in a Callable interface. |
|
static
|
ConcurrentUtil.asTaskController(Thunk<? extends Future<? extends T>> futureThunk)
Wrap a Future produced by a Thunk in a TaskController interface (which is also a Thunk). |
|
static
|
ConcurrentUtil.computeInProcess(Thunk<? extends R> task)
Execute the given task in a separate process and provide access to its result. |
|
static
|
ConcurrentUtil.computeInProcess(Thunk<? extends R> task,
boolean start)
Execute the given task in a separate process and provide access to its result. |
|
static
|
ConcurrentUtil.computeInProcess(Thunk<? extends R> task,
JVMBuilder jvmBuilder)
Execute the given task in a separate process and provide access to its result. |
|
static
|
ConcurrentUtil.computeInProcess(Thunk<? extends R> task,
JVMBuilder jvmBuilder,
boolean start)
Execute the given task in a separate process and provide access to its result. |
|
static
|
ConcurrentUtil.computeInThread(Thunk<? extends R> task)
Execute the given task in a separate thread, and provide access to its result. |
|
static
|
ConcurrentUtil.computeInThread(Thunk<? extends R> task,
boolean start)
Execute the given task in a separate thread, and provide access to its result. |
|
static
|
ConcurrentUtil.computeWithExecutor(Thunk<? extends R> task,
Executor exec)
Execute the given task with exec and provide access to its result. |
|
static
|
ConcurrentUtil.computeWithExecutor(Thunk<? extends R> task,
Executor exec,
boolean start)
Execute the given task with exec and provide access to its result. |
|
static Remote |
ConcurrentUtil.exportInProcess(Thunk<? extends Remote> factory)
Export the given RMI object in a new process and return the exported stub. |
|
static Remote |
ConcurrentUtil.exportInProcess(Thunk<? extends Remote> factory,
JVMBuilder jvmBuilder)
Export the given RMI object in a new process and return the exported stub. |
|
static Remote |
ConcurrentUtil.exportInProcess(Thunk<? extends Remote> factory,
JVMBuilder jvmBuilder,
Runnable1<? super Process> onExit)
Export the given RMI object in a new process and return the exported stub. |
|
| Constructors in edu.rice.cs.plt.concurrent with parameters of type Thunk | |
|---|---|
ExecutorTaskController(Executor executor,
Thunk<? extends R> task)
|
|
FutureTaskController(Thunk<? extends Future<? extends T>> futureThunk)
|
|
ProcessTaskController(JVMBuilder jvmBuilder,
Executor executor,
Thunk<? extends R> task)
Create, but do not start, a ProcessTaskController. |
|
ProcessTaskController(JVMBuilder jvmBuilder,
Executor executor,
Thunk<? extends R> task,
Runnable1<? super Process> onExit)
Create, but do not start, a ProcessTaskController. |
|
| Uses of Thunk in edu.rice.cs.plt.debug |
|---|
| Methods in edu.rice.cs.plt.debug that return Thunk | |
|---|---|
static Thunk<TreeLogSink> |
TreeLogSink.factory(String name)
Create a serializable TreeLogSink factory. |
static Thunk<TreeLogSink> |
TreeLogSink.factory(String name,
boolean exitOnClose)
|
| Constructors in edu.rice.cs.plt.debug with parameters of type Thunk | |
|---|---|
RMILogSink(Thunk<? extends LogSink> factory)
Create a LogSink server in a new process using JVMBuilder.DEFAULT. |
|
RMILogSink(Thunk<? extends LogSink> factory,
boolean closeOnExit)
Create a LogSink server in a new process using JVMBuilder.DEFAULT. |
|
RMILogSink(Thunk<? extends LogSink> factory,
JVMBuilder jvm)
Create a LogSink server in a new process using JVMBuilder.DEFAULT. |
|
RMILogSink(Thunk<? extends LogSink> factory,
JVMBuilder jvm,
boolean closeOnExit)
Create a LogSink server in a new process using JVMBuilder.DEFAULT. |
|
| Uses of Thunk in edu.rice.cs.plt.iter |
|---|
| Method parameters in edu.rice.cs.plt.iter with type arguments of type Thunk | ||
|---|---|---|
static
|
IterUtil.valuesOf(Iterable<? extends Thunk<? extends R>> iter)
Lazily create an iterable containing the values of the given thunks. |
|
| Uses of Thunk in edu.rice.cs.plt.lambda |
|---|
| Subinterfaces of Thunk in edu.rice.cs.plt.lambda | |
|---|---|
interface |
Box<T>
A thunk with a mutable value. |
static interface |
LambdaUtil.GeneralLambda<R>
An object that functions as a lambda for all arities. |
interface |
ResolvingThunk<R>
A thunk that may be in a "resolved" or "unresolved" state. |
| Classes in edu.rice.cs.plt.lambda that implement Thunk | |
|---|---|
class |
CachedThunk<R>
A thunk that caches the result of a nested thunk on the first invocation of value(). |
class |
DelayedThunk<R>
A thunk whose value is set once after creation, but before the first invocation of DelayedThunk.value(). |
class |
LazyThunk<R>
A thunk providing call-by-need evaluation of the nested thunk, value. |
class |
SimpleBox<T>
A box that freely supports reads and writes. |
| Methods in edu.rice.cs.plt.lambda that return Thunk | ||
|---|---|---|
static Thunk<Boolean> |
LambdaUtil.asThunk(Condition cond)
Create a Boolean thunk based on a condition. |
|
static Thunk<Void> |
LambdaUtil.asThunk(Runnable r)
Create a thunk that executes the given runnable, then returns null. |
|
static
|
LambdaUtil.asThunk(Runnable r,
R result)
Create a thunk that executes the given runnable, then returns result. |
|
static
|
LambdaUtil.bindFirst(Lambda<? super T,? extends R> lambda,
T arg)
Bind a fixed argument to the given lambda, producing a thunk. |
|
static
|
LambdaUtil.compose(Thunk<? extends T> thunk,
Lambda<? super T,? extends U> lambda)
Create a thunk that executes lambda with the result of thunk. |
|
static
|
LambdaUtil.flatten0(Lambda<? super Null<T>,? extends R> lambda)
Treat a lambda accepting a 0-tuple argument as a Thunk. |
|
static
|
LambdaUtil.wrapPartial(Thunk<? extends R> thunk,
boolean filterNull,
Predicate<? super RuntimeException> filterException)
Treat the given thunk as a partial function, where well-defined results have a "some" return type, and undefined results map to "none". |
|
| Methods in edu.rice.cs.plt.lambda that return types with arguments of type Thunk | ||
|---|---|---|
static
|
LambdaUtil.thunkValueLambda()
Create a lambda that applies its first argument to its second argument. |
|
| Methods in edu.rice.cs.plt.lambda with parameters of type Thunk | ||
|---|---|---|
static Condition |
LambdaUtil.asCondition(Thunk<? extends Boolean> thunk)
Create a condition based on an input that acts as a condition but is not typed as one. |
|
static Runnable |
LambdaUtil.asRunnable(Thunk<?> thunk)
Create a runnable that executes the given thunk (ignoring the result). |
|
static
|
LambdaUtil.compose(Thunk<? extends T> thunk,
Lambda<? super T,? extends U> lambda)
Create a thunk that executes lambda with the result of thunk. |
|
static
|
CachedThunk.make(Thunk<? extends R> value)
|
|
static
|
LazyThunk.make(Thunk<? extends R> value)
|
|
static
|
LambdaUtil.promote(Thunk<? extends R> thunk)
Create a GeneralLambda equivalent to thunk that ignores any arguments. |
|
static
|
LambdaUtil.unary(Thunk<? extends R> thunk)
Treat a Thunk as a unary lambda accepting a 0-tuple argument. |
|
static
|
LambdaUtil.wrapPartial(Thunk<? extends R> thunk,
boolean filterNull,
Predicate<? super RuntimeException> filterException)
Treat the given thunk as a partial function, where well-defined results have a "some" return type, and undefined results map to "none". |
|
| Constructors in edu.rice.cs.plt.lambda with parameters of type Thunk | |
|---|---|
CachedThunk(Thunk<? extends R> value)
|
|
LazyThunk(Thunk<? extends R> value)
|
|
| Uses of Thunk in edu.rice.cs.plt.recur |
|---|
| Subinterfaces of Thunk in edu.rice.cs.plt.recur | |
|---|---|
interface |
Continuation<T>
A thunk enabling iterative evaluation of a recursive function. |
| Classes in edu.rice.cs.plt.recur that implement Thunk | |
|---|---|
class |
ArgContinuation<T,R>
A continuation for results that depend on a single recursive invocation, followed by some additional computation. |
class |
BinaryArgContinuation<T1,T2,R>
A continuation for results that depend on a two recursive invocations, followed by some additional computation. |
class |
ComposedContinuation<T,R>
A continuation defined in terms of two other continuations, where the second is parameterized by the result of the first. |
class |
PendingContinuation<T>
A continuation representing computation left to be done (in contrast to ValueContinuation,
which represents a completed computation). |
class |
ValueContinuation<T>
A continuation that is resolved at creation time. |
| Methods in edu.rice.cs.plt.recur with parameters of type Thunk | ||
|---|---|---|
R |
PrecomputedRecursionStack.apply(Lambda<? super T,? extends R> lambda,
Thunk<? extends R> precomputed,
T arg)
Evaluate the given lambda with argument arg, unless arg is already on the
stack; push arg onto the stack with the given precomputed result during
lambda's evaluation |
|
R |
PrecomputedRecursionStack2.apply(Lambda2<? super T1,? super T2,? extends R> lambda,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2)
Evaluate the given lambda with the given arguments, unless the arguments are already on the stack; push the arguments onto the stack with the given precomputed result during lambda's evaluation |
|
R |
PrecomputedRecursionStack3.apply(Lambda3<? super T1,? super T2,? super T3,? extends R> lambda,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given lambda with the given arguments, unless the arguments are already on the stack; push the arguments onto the stack with the given precomputed result during lambda's evaluation |
|
R |
PrecomputedRecursionStack4.apply(Lambda4<? super T1,? super T2,? super T3,? super T4,? extends R> lambda,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given lambda with the given arguments, unless the arguments are already on the stack; push the arguments onto the stack with the given precomputed result during lambda's evaluation |
|
R |
PrecomputedRecursionStack.apply(Thunk<? extends R> thunk,
Lambda<? super T,? extends R> precomputed,
T arg)
Evaluate the given thunk, unless arg is already on the stack; push arg
onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack2.apply(Thunk<? extends R> thunk,
Lambda2<? super T1,? super T2,? extends R> precomputed,
T1 arg1,
T2 arg2)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack3.apply(Thunk<? extends R> thunk,
Lambda3<? super T1,? super T2,? super T3,? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack4.apply(Thunk<? extends R> thunk,
Lambda4<? super T1,? super T2,? super T3,? super T4,? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack.apply(Thunk<? extends R> thunk,
R precomputed,
T arg)
Evaluate the given thunk, unless arg is already on the stack; push arg
onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
R infiniteCase,
T arg)
Evaluate the given thunk, unless arg is already on the stack; push arg
onto the stack during thunk evaluation |
|
R |
PrecomputedRecursionStack2.apply(Thunk<? extends R> thunk,
R precomputed,
T1 arg1,
T2 arg2)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack during thunk evaluation |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2,
int threshold)
Evaluate the given thunk, unless threshold instances of the given arguments are
already on the stack; push the arguments onto the stack during thunk evaluation |
|
R |
PrecomputedRecursionStack3.apply(Thunk<? extends R> thunk,
R precomputed,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack during thunk evaluation |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
int threshold)
Evaluate the given thunk, unless threshold instances of the given arguments are
already on the stack; push the arguments onto the stack during thunk evaluation |
|
R |
PrecomputedRecursionStack4.apply(Thunk<? extends R> thunk,
R precomputed,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack during thunk evaluation |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
R infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4,
int threshold)
Evaluate the given thunk, unless threshold instances of the given arguments are
already on the stack; push the arguments onto the stack during thunk evaluation |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
R infiniteCase,
T arg,
int threshold)
Evaluate the given thunk, unless threshold instances of arg are already
on the stack; push arg onto the stack during thunk evaluation |
|
R |
PrecomputedRecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T arg)
Evaluate the given thunk, unless arg is already on the stack; push arg
onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T arg)
Evaluate the given thunk, unless arg is already on the stack; push arg
onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T arg)
If arg is not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T arg)
If arg is not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
R |
PrecomputedRecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
|
RecursionStack2.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
R |
PrecomputedRecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
|
RecursionStack3.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
R |
PrecomputedRecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
R |
PrecomputedRecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> precomputed,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
Evaluate the given thunk, unless the given arguments are already on the stack; push the arguments onto the stack with the given precomputed result during thunk's evaluation |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4)
If the given arguments are not on the stack, evaluate thunk; otherwise, evaluate
infiniteCase. |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
|
RecursionStack4.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4,
int threshold)
If less than threshold instances of the given arguments are on the stack,
evaluate thunk; otherwise, evaluate infiniteCase. |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T arg,
int threshold)
If less than threshold instances of arg are on the stack, evaluate
thunk; otherwise, evaluate infiniteCase. |
|
|
RecursionStack.apply(Thunk<? extends R> thunk,
Thunk<? extends R> infiniteCase,
T arg,
int threshold)
If less than threshold instances of arg are on the stack, evaluate
thunk; otherwise, evaluate infiniteCase. |
|
void |
PrecomputedRecursionStack4.push(T1 arg1,
T2 arg2,
T3 arg3,
T4 arg4,
Thunk<? extends R> value)
Add the given arguments to the top of the stack with the given thunk producing their infinite-case result. |
|
void |
PrecomputedRecursionStack3.push(T1 arg1,
T2 arg2,
T3 arg3,
Thunk<? extends R> value)
Add the given arguments to the top of the stack with the given thunk producing their infinite-case result. |
|
void |
PrecomputedRecursionStack2.push(T1 arg1,
T2 arg2,
Thunk<? extends R> value)
Add the given arguments to the top of the stack with the given thunk producing their infinite-case result. |
|
void |
PrecomputedRecursionStack.push(T arg,
Thunk<? extends R> value)
Add arg to the top of the stack with the given thunk producing its infinite-case result. |
|
| Uses of Thunk in edu.rice.cs.plt.reflect |
|---|
| Methods in edu.rice.cs.plt.reflect that return Thunk | ||
|---|---|---|
static
|
ReflectUtil.constructorAsThunk(Class<? extends R> c)
Wrap a constructor in a thunk. |
|
static
|
ReflectUtil.methodAsThunk(Object object,
String methodName,
Class<? extends R> retT)
Wrap a method of the given object in a thunk. |
|
static
|
ReflectUtil.staticMethodAsThunk(Class<? super O> c,
String methodName,
Class<? extends R> retT)
Wrap a static method in a thunk. |
|
| Uses of Thunk in edu.rice.cs.plt.swing |
|---|
| Classes in edu.rice.cs.plt.swing that implement Thunk | |
|---|---|
class |
SwingWorker<R,I>
A utility class providing the core functionality of javax.swing.SwingWorker (first available
in Java 6), in addition to supporting the IncrementalTaskController interface. |
| Uses of Thunk in edu.rice.cs.plt.tuple |
|---|
| Classes in edu.rice.cs.plt.tuple that implement Thunk | |
|---|---|
class |
IdentityWrapper<T>
A wrapper that defines IdentityWrapper.equals(java.lang.Object) and Tuple.hashCode() in terms of its value's
identity (==) instead of equality (@code equals}) |
class |
Wrapper<T>
An arbitrary 1-tuple; overrides Wrapper.toString(), Wrapper.equals(Object),
and Tuple.hashCode(). |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||