Module unshred_variant

Module unshred_variant 

Source
Expand description

Module for unshredding VariantArray by folding typed_value columns back into the value column.

Macrosยง

handle_unshredded_case ๐Ÿ”’
Macro that handles the unshredded case (typed_value is missing or NULL) and returns early if handled. If not handled (shredded case), validates and returns the extracted value.
impl_append_to_variant_builder ๐Ÿ”’

Structsยง

ListUnshredVariantBuilder ๐Ÿ”’
Builder for unshredding list/array types with recursive element processing
NullUnshredVariantBuilder ๐Ÿ”’
Builder for arrays with neither typed_value nor value (all NULL/Variant::Null)
StructUnshredVariantBuilder ๐Ÿ”’
Builder for unshredding struct/object types with nested fields
TimestampUnshredRowBuilder ๐Ÿ”’
Generic builder for timestamp types that handles timezone-aware conversion
UnshredPrimitiveRowBuilder ๐Ÿ”’
Generic unshred builder that works with any Array implementing AppendToVariantBuilder
ValueOnlyUnshredVariantBuilder ๐Ÿ”’
Builder for arrays that only have value column (already unshredded)

Enumsยง

UnshredVariantRowBuilder ๐Ÿ”’
Row builder for converting shredded VariantArray rows back to unshredded form

Traitsยง

AppendToVariantBuilder ๐Ÿ”’
Extension trait that directly adds row builder support for arrays that correspond to primitive variant types.
TimestampType ๐Ÿ”’
Trait for timestamp types to handle conversion to DateTime<Utc>

Functionsยง

unshred_variant
Removes all (nested) typed_value columns from a VariantArray by converting them back to binary variant and merging the resulting values back into the value column.