Expand description
This module implements the runtime representation of functions.
Structs§
- Closure
- In order to correctly reproduce cppnix’s “pointer equality”
semantics it is important that we never clone a Lambda –
use
Rc<Lambda>::clone()
instead. This struct deliberately does notderive(Clone)
in order to prevent this from being done accidentally. - Formals 🔒
- Lambda
- The opcodes for a thunk or closure, plus the number of
non-executable opcodes which are allowed after an OpThunkClosure or
OpThunkSuspended referencing it. At runtime
Lambda
is usually wrapped inRc
to avoid copying theChunk
it holds (which can be quite large).