#[repr(u8)]pub enum HeapKind {
Show 36 variants
String = 0,
TypedObject = 1,
Closure = 2,
Decimal = 3,
BigInt = 4,
DataTable = 5,
Future = 6,
TaskGroup = 7,
TypedArray = 8,
Temporal = 9,
TableView = 10,
Content = 11,
Instant = 12,
IoHandle = 13,
NativeScalar = 14,
NativeView = 15,
Char = 16,
HashMap = 17,
FilterExpr = 18,
Reference = 19,
SharedCell = 20,
HashSet = 21,
Iterator = 22,
Deque = 23,
Channel = 24,
PriorityQueue = 25,
Range = 26,
Result = 27,
Option = 28,
TraitObject = 29,
Mutex = 30,
Atomic = 31,
Lazy = 32,
ModuleFn = 33,
Matrix = 34,
MatrixSlice = 35,
}Expand description
Discriminator for HeapValue variants, usable without full pattern match.
One variant per surviving HeapValue arm — no dead variants
expressible. Trimmed in Phase 2b alongside the
NativeKind::Ptr(HeapKind) extension; see
docs/defections.md 2026-05-06 (HeapKind trim +
NativeKind::Ptr extension) for the audit findings and rejected
alternatives.
The previous 77-variant surface (with (removed) /
(deprecated) annotations) preserved ordinals “for ABI
stability”; the bulldozer deleted the tags.rs
ordinal-stability test that made that contract load-bearing,
so the dead variants no longer had a justification to
remain in the source.
Variants§
String = 0
TypedObject = 1
Closure = 2
Decimal = 3
BigInt = 4
DataTable = 5
Future = 6
TaskGroup = 7
TypedArray = 8
Temporal = 9
TableView = 10
Content = 11
Instant = 12
IoHandle = 13
NativeScalar = 14
NativeView = 15
Char = 16
HashMap = 17
FilterExpr = 18
Reference = 19
HashSet = 21
Iterator = 22
Deque = 23
Channel = 24
PriorityQueue = 25
Range = 26
Result = 27
Option = 28
TraitObject = 29
Mutex = 30
Atomic = 31
Lazy = 32
ModuleFn = 33
Matrix = 34
MatrixSlice = 35
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for HeapKind
impl<'de> Deserialize<'de> for HeapKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for HeapKind
impl Eq for HeapKind
impl StructuralPartialEq for HeapKind
Auto Trait Implementations§
impl Freeze for HeapKind
impl RefUnwindSafe for HeapKind
impl Send for HeapKind
impl Sync for HeapKind
impl Unpin for HeapKind
impl UnsafeUnpin for HeapKind
impl UnwindSafe for HeapKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more