public static interface Func.V<𝓐,𝓑,𝓒,𝓓,𝓔,𝓕> extends Lazy<Func.V<𝓐,𝓑,𝓒,𝓓,𝓔,𝓕>>, frege.run.Kind.U<Func.V<𝓐,𝓑,𝓒,𝓓,𝓔,?>,𝓕>, frege.run.Kind.B<Func.V<𝓐,𝓑,𝓒,𝓓,?,?>,𝓔,𝓕>, frege.run.Kind.T<Func.V<𝓐,𝓑,𝓒,?,?,?>,𝓓,𝓔,𝓕>, frege.run.Kind.Q<Func.V<𝓐,𝓑,?,?,?,?>,𝓒,𝓓,𝓔,𝓕>, frege.run.Kind.V<Func.V<𝓐,?,?,?,?,?>,𝓑,𝓒,𝓓,𝓔,𝓕>, frege.run.Kind.VI<Func.V<?,?,?,?,?,?>,𝓐,𝓑,𝓒,𝓓,𝓔,𝓕>
| Modifier and Type | Interface and Description |
|---|---|
static class |
Func.V.D<𝓐,𝓑,𝓒,𝓓,𝓔,𝓕> |
Func.V<𝓐,𝓑,𝓒,𝓓,𝓔,𝓕> call()
LazyCompute the value if it is needed.
boolean isShared()
LazyTell if this is shared.
Data and functions whose Lazy.call() method returns this as well
as simple boxes that just hold a value ready to be supplied and Thunks
are considered shared.
But a bare lambda expression is assumed to be in need of sharing. For example:
() -> 42