BConvertExt

Trait BConvertExt 

Source
pub trait BConvertExt: BConvert {
    // Provided methods
    fn convert_bytes_ext<'a, B, E>(
        &self,
        bencode: B,
        error_key: E,
    ) -> Result<&'a [u8], Self::Error>
       where B: BRefAccessExt<'a>,
             E: AsRef<[u8]> { ... }
    fn convert_str_ext<'a, B, E>(
        &self,
        bencode: &B,
        error_key: E,
    ) -> Result<&'a str, Self::Error>
       where B: BRefAccessExt<'a>,
             E: AsRef<[u8]> { ... }
    fn lookup_and_convert_bytes_ext<'a, B, K1, K2>(
        &self,
        dictionary: &dyn BDictAccess<K1, B>,
        key: K2,
    ) -> Result<&'a [u8], Self::Error>
       where B: BRefAccessExt<'a>,
             K2: AsRef<[u8]> { ... }
    fn lookup_and_convert_str_ext<'a, B, K1, K2>(
        &self,
        dictionary: &dyn BDictAccess<K1, B>,
        key: K2,
    ) -> Result<&'a str, Self::Error>
       where B: BRefAccessExt<'a>,
             K2: AsRef<[u8]> { ... }
}
Expand description

Trait for extended casting of bencode objects and converting conversion errors into application specific errors.

Provided Methods§

Source

fn convert_bytes_ext<'a, B, E>( &self, bencode: B, error_key: E, ) -> Result<&'a [u8], Self::Error>
where B: BRefAccessExt<'a>, E: AsRef<[u8]>,

See BConvert::convert_bytes.

Source

fn convert_str_ext<'a, B, E>( &self, bencode: &B, error_key: E, ) -> Result<&'a str, Self::Error>
where B: BRefAccessExt<'a>, E: AsRef<[u8]>,

See BConvert::convert_str.

Source

fn lookup_and_convert_bytes_ext<'a, B, K1, K2>( &self, dictionary: &dyn BDictAccess<K1, B>, key: K2, ) -> Result<&'a [u8], Self::Error>
where B: BRefAccessExt<'a>, K2: AsRef<[u8]>,

See BConvert::lookup_and_convert_bytes.

Source

fn lookup_and_convert_str_ext<'a, B, K1, K2>( &self, dictionary: &dyn BDictAccess<K1, B>, key: K2, ) -> Result<&'a str, Self::Error>
where B: BRefAccessExt<'a>, K2: AsRef<[u8]>,

See BConvert::lookup_and_convert_str.

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§