public static interface Func.Q<𝓐,𝓑,𝓒,𝓓,𝓔> extends Lazy<Func.Q<𝓐,𝓑,𝓒,𝓓,𝓔>>, frege.run.Kind.U<Func.Q<𝓐,𝓑,𝓒,𝓓,?>,𝓔>, frege.run.Kind.B<Func.Q<𝓐,𝓑,𝓒,?,?>,𝓓,𝓔>, frege.run.Kind.T<Func.Q<𝓐,𝓑,?,?,?>,𝓒,𝓓,𝓔>, frege.run.Kind.Q<Func.Q<𝓐,?,?,?,?>,𝓑,𝓒,𝓓,𝓔>, frege.run.Kind.V<Func.Q<?,?,?,?,?>,𝓐,𝓑,𝓒,𝓓,𝓔>
| Modifier and Type | Interface and Description |
|---|---|
static class |
Func.Q.D<𝓐,𝓑,𝓒,𝓓,𝓔> |
Func.Q<𝓐,𝓑,𝓒,𝓓,𝓔> 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