BorrowByteDecode

Trait BorrowByteDecode 

Source
pub trait BorrowByteDecode<'de> {
    // Required method
    fn decode_inner<I: BufRead>(
        input: &'de I,
        cattr: Option<&ContainerAttrModifiers>,
        fattr: Option<&FieldAttrModifiers<'_>>,
    ) -> JResult<Self>
       where Self: Sized;

    // Provided method
    fn decode<I: BufRead>(input: &'de I) -> JResult<Self>
       where Self: Sized { ... }
}
Expand description

This is bytes decoding trait of borrow type.

§Example

use jbytes::{
    JResult, BufRead,
    ByteDecode, BorrowByteDecode,
    ContainerAttrModifiers, FieldAttrModifiers,
};
 
 
impl<'de> BorrowByteDecode<'de> for bool {
    fn decode_inner<I: BufRead>(input: &'de I, _cattr: Option<&ContainerAttrModifiers>,
                                                         _fattr: Option<&FieldAttrModifiers>) -> JResult<Self>
    where 
        Self: Sized
    {
        input.take_bool()
    }
}

Required Methods§

Source

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Provided Methods§

Source

fn decode<I: BufRead>(input: &'de I) -> JResult<Self>
where Self: Sized,

Implementations on Foreign Types§

Source§

impl<'de> BorrowByteDecode<'de> for &'de str

Source§

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for &'de [u8]

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for bool

Source§

fn decode_inner<T: BufRead>( input: &'de T, _cattr: Option<&ContainerAttrModifiers>, _fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for char

Source§

fn decode_inner<T: BufRead>( input: &'de T, _cattr: Option<&ContainerAttrModifiers>, _fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for f32

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for f64

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for i8

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for i16

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for i32

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for i64

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for i128

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for isize

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for u8

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for u16

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for u32

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for u64

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for u128

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de> BorrowByteDecode<'de> for usize

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, K, V> BorrowByteDecode<'de> for HashMap<K, V>
where K: BorrowByteDecode<'de> + Hash + Eq, V: BorrowByteDecode<'de> + Hash + Eq,

Source§

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, T> BorrowByteDecode<'de> for HashSet<T>
where T: BorrowByteDecode<'de> + Hash + Eq,

Source§

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, T: BorrowByteDecode<'de>> BorrowByteDecode<'de> for Option<T>

Source§

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, T: BorrowByteDecode<'de>, const N: usize> BorrowByteDecode<'de> for [T; N]

Source§

fn decode_inner<I: BufRead>( input: &'de I, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1,)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>, t5: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4, t5)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>, t5: BorrowByteDecode<'de>, t6: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4, t5, t6)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>, t5: BorrowByteDecode<'de>, t6: BorrowByteDecode<'de>, t7: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4, t5, t6, t7)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>, t5: BorrowByteDecode<'de>, t6: BorrowByteDecode<'de>, t7: BorrowByteDecode<'de>, t8: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4, t5, t6, t7, t8)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Source§

impl<'de, t1: BorrowByteDecode<'de>, t2: BorrowByteDecode<'de>, t3: BorrowByteDecode<'de>, t4: BorrowByteDecode<'de>, t5: BorrowByteDecode<'de>, t6: BorrowByteDecode<'de>, t7: BorrowByteDecode<'de>, t8: BorrowByteDecode<'de>, t9: BorrowByteDecode<'de>> BorrowByteDecode<'de> for (t1, t2, t3, t4, t5, t6, t7, t8, t9)

Source§

fn decode_inner<T: BufRead>( input: &'de T, cattr: Option<&ContainerAttrModifiers>, fattr: Option<&FieldAttrModifiers<'_>>, ) -> JResult<Self>
where Self: Sized,

Implementors§

Source§

impl<'de> BorrowByteDecode<'de> for IpAddr

Source§

impl<'de> BorrowByteDecode<'de> for NetAddress

Source§

impl<'de> BorrowByteDecode<'de> for Ipv4Addr

Source§

impl<'de> BorrowByteDecode<'de> for Ipv6Addr

Source§

impl<'de> BorrowByteDecode<'de> for String

Source§

impl<'de> BorrowByteDecode<'de> for HexString

Source§

impl<'de> BorrowByteDecode<'de> for MacAddress

Source§

impl<'de> BorrowByteDecode<'de> for HexBytes<'de>

Source§

impl<'de, 'a> BorrowByteDecode<'de> for Mark<'a>

Source§

impl<'de, T> BorrowByteDecode<'de> for PhantomData<T>

Source§

impl<'de, T: BorrowByteDecode<'de>> BorrowByteDecode<'de> for Vec<T>