mz_catalog::durable::debug

Trait Collection

Source
pub trait Collection: Debug {
    type Key;
    type Value;

    // Required methods
    fn collection_type() -> CollectionType;
    fn collection_trace(trace: Trace) -> CollectionTrace<Self>;
    fn update(key: Self::Key, value: Self::Value) -> StateUpdateKind;

    // Provided method
    fn name() -> String { ... }
}
Expand description

The contents of the catalog are logically separated into separate Collections, which describe the category of data that the content belongs to.

Required Associated Types§

Source

type Key

Type used to stores keys for Collection.

Source

type Value

Type used to stores values for Collection.

Required Methods§

Source

fn collection_type() -> CollectionType

CollectionType corresponding to Collection.

Source

fn collection_trace(trace: Trace) -> CollectionTrace<Self>

Extract the CollectionTrace from a Trace that corresponds to Collection.

Source

fn update(key: Self::Key, value: Self::Value) -> StateUpdateKind

Generate a StateUpdateKind with key and value that corresponds to Collection.

Provided Methods§

Source

fn name() -> String

The human-readable name of this collection.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Collection for AuditLogCollection

Source§

impl Collection for ClusterCollection

Source§

impl Collection for ClusterIntrospectionSourceIndexCollection

Source§

impl Collection for ClusterReplicaCollection

Source§

impl Collection for CommentCollection

Source§

impl Collection for ConfigCollection

Source§

impl Collection for DatabaseCollection

Source§

impl Collection for DefaultPrivilegeCollection

Source§

impl Collection for IdAllocatorCollection

Source§

impl Collection for ItemCollection

Source§

impl Collection for NetworkPolicyCollection

Source§

impl Collection for RoleCollection

Source§

impl Collection for SchemaCollection

Source§

impl Collection for SettingCollection

Source§

impl Collection for SourceReferencesCollection

Source§

impl Collection for StorageCollectionMetadataCollection

Source§

impl Collection for SystemConfigurationCollection

Source§

impl Collection for SystemItemMappingCollection

Source§

impl Collection for SystemPrivilegeCollection

Source§

impl Collection for TxnWalShardCollection

Source§

impl Collection for UnfinalizedShardsCollection