MessageBase

Trait MessageBase 

Source
pub trait MessageBase {
    // Required methods
    fn message_title(&self) -> Cow<'_, str>;
    fn main_annotation(&self) -> Annotation<'_>;

    // Provided methods
    fn message_type(&self) -> AnnotationType { ... }
    fn additional_annotations<'a, T: Extend<Annotation<'a>>>(
        &'a self,
        results: &mut T,
    ) { ... }
    fn footers(&self) -> Vec<Footer<'_>> { ... }
}
๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead
Expand description

Helper for constructing a Message

Thanks to the blanket implementation impl<'a, T: MessageBase> From<&'a T> for Message<'a>, implementors of this trait can be converted to a message for free.

Required Methodsยง

Source

fn message_title(&self) -> Cow<'_, str>

๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead

Returns the main caption of the message.

Source

fn main_annotation(&self) -> Annotation<'_>

๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead

Returns an annotation to be the first in the message.

Provided Methodsยง

Source

fn message_type(&self) -> AnnotationType

๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead

Returns the type of the entire message.

The default implementation returns AnnotationType::Error.

Source

fn additional_annotations<'a, T: Extend<Annotation<'a>>>( &'a self, results: &mut T, )

๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead

Adds additional annotations to the given container.

The default implementation does nothing.

Source

fn footers(&self) -> Vec<Footer<'_>>

๐Ÿ‘ŽDeprecated since 0.16.0: Use Report instead

Returns footers that are included in the message.

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ยง