Skip to main content

Module extension

Module extension 

Source
Expand description

Extension DTypes, and interfaces for working with extension types.

§File layout convention

Each vtable-backed concept Foo follows this module structure:

  • vtable.rsFooVTable (the non-object-safe trait users implement)
  • plugin.rsFooPlugin (registry trait for deserialization + blanket impl)
  • typed.rsFoo<V> (typed wrapper) + FooInner<V> + DynFoo (private)
  • erased.rsFooRef (erased ref + Display/Debug/PartialEq/Hash impls)
  • matcher.rsMatcher trait + blanket impl for V: FooVTable

Structs§

ExtDType
A typed extension data type, parameterized by a concrete ExtVTable.
ExtDTypeRef
A type-erased extension dtype.

Traits§

ExtDTypePlugin
Registry trait for ID-based deserialization of extension dtypes.
ExtVTable
The public API for defining new extension types.
Matcher
A trait for matching extension dtypes.

Type Aliases§

ExtDTypePluginRef
Reference-counted pointer to an extension dtype plugin.
ExtId
A unique identifier for an extension type