Expand description
The Value type — the datum a Seq program talks about — plus the
supporting types it embeds or composes with:
Value: the 11-variant enum (Int, Float, Bool, String, Symbol, Variant, Map, Quotation, Closure, Channel, WeaveCtx).VariantData: the heap-allocated payload behindValue::Variant.MapKey: the hashable subset ofValueallowed as map keys.ChannelData/WeaveChannelData/WeaveMessage: the channel handles that backValue::ChannelandValue::WeaveCtx.
Value has #[repr(C)] so compiled code can write into it directly
without going through FFI, and implements Send + Sync via an unsafe impl (see the comment block on that impl for the safety argument).
Structs§
- Channel
Data - Channel data: holds sender and receiver for direct handle passing
- Variant
Data - VariantData: Composite values (sum types)
- Weave
Channel Data - Channel data specifically for weave communication.
Enums§
- MapKey
- MapKey: Hashable subset of Value for use as map keys
- Value
- Value: What the language talks about
- Weave
Message - Message type for weave channels.