Skip to main content

EncodeLabelSet

Trait EncodeLabelSet 

Source
pub trait EncodeLabelSet {
    // Required method
    fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>;

    // Provided method
    fn is_empty(&self) -> bool { ... }
}
Expand description

Trait for types that can be encoded as a set of labels.

This trait is implemented by types that represent collections of labels, such as vectors or maps of label pairs. It provides the ability to encode multiple labels as a complete set.

§Example

// labels implements `EncodeLabelSet` and can be encoded as a label set
let labels = vec![("method", "GET"), ("status", "200")];

Required Methods§

Source

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Encodes this set of labels using the provided LabelSetEncoder.

This method should encode all labels in the set using the provided encoder, typically by getting individual label encoder for each label in the set.

Provided Methods§

Source

fn is_empty(&self) -> bool

Returns whether the label set is empty.

Returns true if the label set contains no labels, and false otherwise.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl EncodeLabelSet for ()

Source§

fn encode(&self, _encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<'a, T> EncodeLabelSet for &'a T
where T: ?Sized + EncodeLabelSet,

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<'a, T> EncodeLabelSet for &'a mut T
where T: ?Sized + EncodeLabelSet,

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<'a, T> EncodeLabelSet for Cow<'a, T>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<K: EncodeLabelName, V: EncodeLabelValue> EncodeLabelSet for BTreeMap<K, V>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel, const N: usize> EncodeLabelSet for [T; N]

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel> EncodeLabelSet for BTreeSet<T>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel> EncodeLabelSet for LinkedList<T>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel> EncodeLabelSet for Vec<T>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel> EncodeLabelSet for VecDeque<T>

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T: EncodeLabel> EncodeLabelSet for [T]

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T> EncodeLabelSet for Arc<T>
where T: ?Sized + EncodeLabelSet,

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T> EncodeLabelSet for Box<T>
where T: ?Sized + EncodeLabelSet,

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Source§

impl<T> EncodeLabelSet for Rc<T>
where T: ?Sized + EncodeLabelSet,

Source§

fn encode(&self, encoder: &mut dyn LabelSetEncoder) -> Result<()>

Source§

fn is_empty(&self) -> bool

Implementors§