PublishKind

Trait PublishKind 

Source
pub trait PublishKind {
    type Encoding: Encode;

    // Required method
    fn as_publish(
        &self,
    ) -> Result<Publish<'_, Self::Encoding>, <Self::Encoding as Encode>::Error>;
}
Expand description

Bind a type to a kind of topic message

Required Associated Types§

Source

type Encoding: Encode

Type of payload to publish

Required Methods§

Source

fn as_publish( &self, ) -> Result<Publish<'_, Self::Encoding>, <Self::Encoding as Encode>::Error>

Convert this type into a publishable message

Implementations on Foreign Types§

Source§

impl PublishKind for String

Source§

type Encoding = String

Source§

fn as_publish( &self, ) -> Result<Publish<'_, Self::Encoding>, <Self::Encoding as Encode>::Error>

Source§

impl PublishKind for Vec<u8>

Source§

type Encoding = Vec<u8>

Source§

fn as_publish( &self, ) -> Result<Publish<'_, Self::Encoding>, <Self::Encoding as Encode>::Error>

Source§

impl<'a> PublishKind for &'a str

Source§

type Encoding = &'a str

Source§

fn as_publish( &self, ) -> Result<Publish<'a, Self::Encoding>, <Self::Encoding as Encode>::Error>

Source§

impl<'a> PublishKind for &'a [u8]

Source§

type Encoding = &'a [u8]

Source§

fn as_publish( &self, ) -> Result<Publish<'a, Self::Encoding>, <Self::Encoding as Encode>::Error>

Implementors§