functor ByNeed (signature S functor F() : S) : S
The polymorphic ByNeed functor allows arbitrary module expressions to be evaluated lazily. For example, if mod is a module expression with signature SIG, then evaluation can be suspended as follows:
structure Mod = ByNeed (signature S = SIG functor F() = mod)
See also: Component
Imported implicitly.
signature S functor F () : S
The signature of the module to be evaluated lazily.
A functorial suspension of the module expression to be evaluated.