-
Notifications
You must be signed in to change notification settings - Fork 1k
Open
Labels
enhancementAny new improvement worthy of a entry in the changelogAny new improvement worthy of a entry in the changelog
Description
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
This is a tracking ticket for work items identified by
Describe the solution you'd like
Several things:
- [Variant] ObjectBuilder does not reliably check for duplicates #8170
- [Variant]
ObjectBuilder
should detect duplicates at insertion time, not at finish #8180 - [Variant] Refactor
ParentState
to track and rollback state on behalf of its owning builder #8182 - Make
ObjectBuilder::finish
signature infallible #8184 - Rework
ValueBuilder
API to work withParentState
for reliable nested rollbacks #8188 - [Variant] Rename
ValueBuffer
asValueBuilder
#8186 - Make
ValueBuilder
,ParentState
, etc public -
VariantArrayBuilder
tracks starting offsets instead of (offset, len) pairs #8192 -
VariantArrayBuilder
usesParentState
for simpler rollbacks #8205 - Add fallible and infallible pairs for
new_object
andnew_list
toVariantBuilderExt
trait. - Make metadata builders reusable, with
finish
taking&mut self
instead ofself
- Turn
MetadataBuilder
into a trait, with the current metadata builder as the canonical implementation - [Variant] Support creating Variants with pre-existing Metadata #8152
- Support appending raw bytes to variant objects and lists #8217
- [Variant] Split builder.rs into several smaller files #8218
Describe alternatives you've considered
Additional context
Part of the variant shredding saga.
Metadata
Metadata
Assignees
Labels
enhancementAny new improvement worthy of a entry in the changelogAny new improvement worthy of a entry in the changelog