Skip to content

AnyValue refactor

Compare
Choose a tag to compare
@tower120 tower120 released this 25 Aug 13:14
· 5 commits to main since this release

Added

  • AnyVec now can work with AnyValueSizeless.
  • any_value::traits prelude.

Optimized

  • AnyValue- family downcast now use provided type for compile-time optimization,
    instead of potentially unknown underlying type (which disabled optimization technique).

Breaking Changes

  • AnyValue + AnyValueUnknown traits broken down into:
    • AnyValueUnknown -> AnyValueTypeless.
    • Introduced AnyValueSizeless - AnyValue that does know size and type.
    • Added any_value::move_out, any_value::move_out_w_size helpers.
  • Changed AnyValueRaw non-owning wrappers names:
    • AnyValueRawUnknown -> AnyValueTypelessRaw.
    • Introduced AnyValueSizelessRaw.