Trait MetadataKind

Source
pub trait MetadataKind: Default {
    // Provided methods
    fn forward_propagate_context(&mut self, _context: &Self) { ... }
    fn forward_propagate_entry_defaults(
        &mut self,
        _context: &Self,
        _kind: &Self,
    ) { ... }
    fn backward_propagate_entry_defaults(
        &mut self,
        _context: &Self,
        _kind: &Self,
    ) { ... }
    fn forward_propagate_child_defaults(&mut self, _kind: &Self) { ... }
    fn backward_propagate_child_defaults(&mut self, _kind: &Self) { ... }
}
Expand description

Trait used to describe metadata field propagation

Provided Methods§

Source

fn forward_propagate_context(&mut self, _context: &Self)

Update metadata values on nested contexts generally

Source

fn forward_propagate_entry_defaults(&mut self, _context: &Self, _kind: &Self)

Update metadata values on an entry based on the outer context and inner type data

Source

fn backward_propagate_entry_defaults(&mut self, _context: &Self, _kind: &Self)

Update metadata values on an entry based on the outer context and inner type data

Source

fn forward_propagate_child_defaults(&mut self, _kind: &Self)

Update metadata values on a type entry based on its child type

Source

fn backward_propagate_child_defaults(&mut self, _kind: &Self)

Update metadata values on a type entry based on its child type

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.

Implementations on Foreign Types§

Source§

impl<K, V> MetadataKind for HashMap<K, V>

Source§

impl<V> MetadataKind for Vec<V>

Implementors§