Expand description
Variant operations for Seq
Provides runtime functions for accessing variant fields, tags, and metadata, for building variants of small fixed arities, and for functional-style append/init/last updates plus field unpacking for pattern matches.
Re-exports§
pub use patch_seq_make_variant_0 as make_variant_0;pub use patch_seq_make_variant_1 as make_variant_1;pub use patch_seq_make_variant_2 as make_variant_2;pub use patch_seq_make_variant_3 as make_variant_3;pub use patch_seq_make_variant_4 as make_variant_4;pub use patch_seq_make_variant_5 as make_variant_5;pub use patch_seq_make_variant_6 as make_variant_6;pub use patch_seq_make_variant_7 as make_variant_7;pub use patch_seq_make_variant_8 as make_variant_8;pub use patch_seq_make_variant_9 as make_variant_9;pub use patch_seq_make_variant_10 as make_variant_10;pub use patch_seq_make_variant_11 as make_variant_11;pub use patch_seq_make_variant_12 as make_variant_12;pub use patch_seq_unpack_variant as unpack_variant;pub use patch_seq_variant_append as variant_append;pub use patch_seq_variant_field_at as variant_field_at;pub use patch_seq_variant_field_count as variant_field_count;pub use patch_seq_variant_init as variant_init;pub use patch_seq_variant_last as variant_last;pub use patch_seq_variant_tag as variant_tag;
Functions§
- patch_
seq_ ⚠make_ variant_ 0 - Create a variant with 0 fields (just a tag)
- patch_
seq_ ⚠make_ variant_ 1 - Create a variant with 1 field
- patch_
seq_ ⚠make_ variant_ 2 - Create a variant with 2 fields
- patch_
seq_ ⚠make_ variant_ 3 - Create a variant with 3 fields
- patch_
seq_ ⚠make_ variant_ 4 - Create a variant with 4 fields
- patch_
seq_ ⚠make_ variant_ 5 - Create a variant with 5 fields
- patch_
seq_ ⚠make_ variant_ 6 - Create a variant with 6 fields
- patch_
seq_ ⚠make_ variant_ 7 - Create a variant with 7 fields
- patch_
seq_ ⚠make_ variant_ 8 - Create a variant with 8 fields
- patch_
seq_ ⚠make_ variant_ 9 - Create a variant with 9 fields
- patch_
seq_ ⚠make_ variant_ 10 - Create a variant with 10 fields
- patch_
seq_ ⚠make_ variant_ 11 - Create a variant with 11 fields
- patch_
seq_ ⚠make_ variant_ 12 - Create a variant with 12 fields
- patch_
seq_ ⚠symbol_ eq_ cstr - Compare a symbol tag with a C string literal
- patch_
seq_ ⚠unpack_ variant - Unpack a variant’s fields onto the stack
- patch_
seq_ ⚠variant_ append - Append a value to a variant, returning a new variant
- patch_
seq_ ⚠variant_ field_ at - Get a field from a variant at the given index
- patch_
seq_ ⚠variant_ field_ count - Get the number of fields in a variant
- patch_
seq_ ⚠variant_ init - Get all but the last field from a variant
- patch_
seq_ ⚠variant_ last - Get the last field from a variant
- patch_
seq_ ⚠variant_ tag - Get the tag of a variant