Skip to main content

Module list

Module list 

Source
Expand description

The list contract: the pluggable ListValue backend protocol.

The kernel defines the list-value protocol, force bounds, and a backend registry; concrete list representations are libs loaded against it. A VecList is provided as a baseline backend, not as kernel-fixed behavior.

Structs§

ListRegistry
Registry of named list backends with one active default.
VecList
Baseline eager list backend backed by a shared slice of values.

Enums§

LengthResult
Result of asking a list for its length.

Constants§

DEFAULT_FORCE_BOUND
Default maximum number of elements an encoder or expr conversion will force from a lazy or endless list before erroring.

Traits§

ListBackend
Factory protocol for constructing lists in a particular representation.
ListValue
Shared behaviour for every list backend.

Functions§

force_list_bound
The force bound for the current context, or None if unbounded forcing is permitted by capability.
force_list_to_vec
Materializes a list to a vector, erroring if it exceeds the force bound.
spine_len_cmp
Compares the spine length of head against n without full forcing.