public class Memoize
extends java.lang.Object
Constructor and Description |
---|
Memoize() |
Modifier and Type | Method and Description |
---|---|
static <T1,T2,R> java.util.function.BiFunction<T1,T2,R> |
memoizeBiFunction(java.util.function.BiFunction<T1,T2,R> fn)
Convert a BiFunction into one that caches it's result
|
static <T1,T2,R> java.util.function.BiFunction<T1,T2,R> |
memoizeBiFunction(java.util.function.BiFunction<T1,T2,R> fn,
Cacheable<R> cache)
Convert a BiFunction into one that caches it's result
|
static <T> java.util.concurrent.Callable<T> |
memoizeCallable(java.util.concurrent.Callable<T> s)
Convert a Callable into one that caches it's result
|
static <T> java.util.concurrent.Callable<T> |
memoizeCallable(java.util.concurrent.Callable<T> s,
Cacheable<T> cache)
Convert a Callable into one that caches it's result
|
static <T,R> java.util.function.Function<T,R> |
memoizeFunction(java.util.function.Function<T,R> fn)
Convert a Function into one that caches it's result
|
static <T,R> java.util.function.Function<T,R> |
memoizeFunction(java.util.function.Function<T,R> fn,
Cacheable<R> cache)
Convert a Function into one that caches it's result
|
static <T> java.util.function.Predicate<T> |
memoizePredicate(java.util.function.Predicate<T> p)
Convert a Predicate into one that caches it's result
|
static <T> java.util.function.Predicate<T> |
memoizePredicate(java.util.function.Predicate<T> p,
Cacheable<java.lang.Boolean> cache)
Convert a Predicate into one that caches it's result
|
static <T1,T2,T3,T4,R> |
memoizeQuadFunction(QuadFunction<T1,T2,T3,T4,R> fn)
Convert a QuadFunction into one that caches it's result
|
static <T1,T2,T3,T4,R> |
memoizeQuadFunction(QuadFunction<T1,T2,T3,T4,R> fn,
Cacheable<R> cache)
Convert a QuadFunction into one that caches it's result
|
static java.lang.Runnable |
memoizeRunnable(java.lang.Runnable r) |
static <T> java.util.function.Supplier<T> |
memoizeSupplier(java.util.function.Supplier<T> s)
Convert a Supplier into one that caches it's result
|
static <T> java.util.function.Supplier<T> |
memoizeSupplier(java.util.function.Supplier<T> s,
Cacheable<T> cache)
Convert a Supplier into one that caches it's result
|
static <T1,T2,T3,R> |
memoizeTriFunction(TriFunction<T1,T2,T3,R> fn)
Convert a TriFunction into one that caches it's result
|
static <T1,T2,T3,R> |
memoizeTriFunction(TriFunction<T1,T2,T3,R> fn,
Cacheable<R> cache)
Convert a TriFunction into one that caches it's result
|
public static <T> java.util.function.Supplier<T> memoizeSupplier(java.util.function.Supplier<T> s)
s
- Supplier to memoisepublic static <T> java.util.function.Supplier<T> memoizeSupplier(java.util.function.Supplier<T> s, Cacheable<T> cache)
s
- Supplier to memoisecache
- Cachable to store the resultspublic static <T> java.util.concurrent.Callable<T> memoizeCallable(java.util.concurrent.Callable<T> s, Cacheable<T> cache)
s
- Callable to memoisecache
- Cachable to store the resultspublic static <T> java.util.concurrent.Callable<T> memoizeCallable(java.util.concurrent.Callable<T> s)
s
- Callable to memoisepublic static java.lang.Runnable memoizeRunnable(java.lang.Runnable r)
public static <T,R> java.util.function.Function<T,R> memoizeFunction(java.util.function.Function<T,R> fn)
fn
- Function to memoisepublic static <T,R> java.util.function.Function<T,R> memoizeFunction(java.util.function.Function<T,R> fn, Cacheable<R> cache)
fn
- Function to memoisecache
- Cachable to store the resultspublic static <T1,T2,R> java.util.function.BiFunction<T1,T2,R> memoizeBiFunction(java.util.function.BiFunction<T1,T2,R> fn)
fn
- BiFunction to memoisepublic static <T1,T2,R> java.util.function.BiFunction<T1,T2,R> memoizeBiFunction(java.util.function.BiFunction<T1,T2,R> fn, Cacheable<R> cache)
fn
- BiFunction to memoisecache
- Cachable to store the resultspublic static <T1,T2,T3,R> TriFunction<T1,T2,T3,R> memoizeTriFunction(TriFunction<T1,T2,T3,R> fn)
fn
- TriFunction to memoisepublic static <T1,T2,T3,R> TriFunction<T1,T2,T3,R> memoizeTriFunction(TriFunction<T1,T2,T3,R> fn, Cacheable<R> cache)
fn
- TriFunction to memoisecache
- Cachable to store the resultspublic static <T1,T2,T3,T4,R> QuadFunction<T1,T2,T3,T4,R> memoizeQuadFunction(QuadFunction<T1,T2,T3,T4,R> fn)
fn
- QuadFunction to memoisepublic static <T1,T2,T3,T4,R> QuadFunction<T1,T2,T3,T4,R> memoizeQuadFunction(QuadFunction<T1,T2,T3,T4,R> fn, Cacheable<R> cache)
fn
- QuadFunction to memoisecache
- Cachable to store the resultspublic static <T> java.util.function.Predicate<T> memoizePredicate(java.util.function.Predicate<T> p)
p
- Predicate to memoisepublic static <T> java.util.function.Predicate<T> memoizePredicate(java.util.function.Predicate<T> p, Cacheable<java.lang.Boolean> cache)
p
- Predicate to memoisecache
- Cachable to store the results