[][src]Trait fbthrift::protocol::ProtocolReader

pub trait ProtocolReader {
    pub fn read_message_begin<F, T>(
        &mut self,
        method: F
    ) -> Result<(T, MessageType, u32)>
    where
        F: FnOnce(&[u8]) -> T
;
pub fn read_message_end(&mut self) -> Result<()>;
pub fn read_struct_begin<F, T>(&mut self, strukt: F) -> Result<T>
    where
        F: FnOnce(&[u8]) -> T
;
pub fn read_struct_end(&mut self) -> Result<()>;
pub fn read_field_begin<F, T>(
        &mut self,
        field: F,
        fields: &[Field]
    ) -> Result<(T, TType, i16)>
    where
        F: FnOnce(&[u8]) -> T
;
pub fn read_field_end(&mut self) -> Result<()>;
pub fn read_map_begin(&mut self) -> Result<(TType, TType, Option<usize>)>;
pub fn read_map_key_begin(&mut self) -> Result<bool>;
pub fn read_map_value_begin(&mut self) -> Result<()>;
pub fn read_map_value_end(&mut self) -> Result<()>;
pub fn read_map_end(&mut self) -> Result<()>;
pub fn read_list_begin(&mut self) -> Result<(TType, Option<usize>)>;
pub fn read_list_value_begin(&mut self) -> Result<bool>;
pub fn read_list_value_end(&mut self) -> Result<()>;
pub fn read_list_end(&mut self) -> Result<()>;
pub fn read_set_begin(&mut self) -> Result<(TType, Option<usize>)>;
pub fn read_set_value_begin(&mut self) -> Result<bool>;
pub fn read_set_value_end(&mut self) -> Result<()>;
pub fn read_set_end(&mut self) -> Result<()>;
pub fn read_bool(&mut self) -> Result<bool>;
pub fn read_byte(&mut self) -> Result<i8>;
pub fn read_i16(&mut self) -> Result<i16>;
pub fn read_i32(&mut self) -> Result<i32>;
pub fn read_i64(&mut self) -> Result<i64>;
pub fn read_double(&mut self) -> Result<f64>;
pub fn read_float(&mut self) -> Result<f32>;
pub fn read_string(&mut self) -> Result<String>;
pub fn read_binary(&mut self) -> Result<Vec<u8>>; pub fn skip(&mut self, field_type: TType) -> Result<()> { ... } }

Trait for decoding a frame in a given protocol

Required methods

pub fn read_message_begin<F, T>(
    &mut self,
    method: F
) -> Result<(T, MessageType, u32)> where
    F: FnOnce(&[u8]) -> T, 
[src]

pub fn read_message_end(&mut self) -> Result<()>[src]

pub fn read_struct_begin<F, T>(&mut self, strukt: F) -> Result<T> where
    F: FnOnce(&[u8]) -> T, 
[src]

pub fn read_struct_end(&mut self) -> Result<()>[src]

pub fn read_field_begin<F, T>(
    &mut self,
    field: F,
    fields: &[Field]
) -> Result<(T, TType, i16)> where
    F: FnOnce(&[u8]) -> T, 
[src]

pub fn read_field_end(&mut self) -> Result<()>[src]

pub fn read_map_begin(&mut self) -> Result<(TType, TType, Option<usize>)>[src]

pub fn read_map_key_begin(&mut self) -> Result<bool>[src]

pub fn read_map_value_begin(&mut self) -> Result<()>[src]

pub fn read_map_value_end(&mut self) -> Result<()>[src]

pub fn read_map_end(&mut self) -> Result<()>[src]

pub fn read_list_begin(&mut self) -> Result<(TType, Option<usize>)>[src]

pub fn read_list_value_begin(&mut self) -> Result<bool>[src]

pub fn read_list_value_end(&mut self) -> Result<()>[src]

pub fn read_list_end(&mut self) -> Result<()>[src]

pub fn read_set_begin(&mut self) -> Result<(TType, Option<usize>)>[src]

pub fn read_set_value_begin(&mut self) -> Result<bool>[src]

pub fn read_set_value_end(&mut self) -> Result<()>[src]

pub fn read_set_end(&mut self) -> Result<()>[src]

pub fn read_bool(&mut self) -> Result<bool>[src]

pub fn read_byte(&mut self) -> Result<i8>[src]

pub fn read_i16(&mut self) -> Result<i16>[src]

pub fn read_i32(&mut self) -> Result<i32>[src]

pub fn read_i64(&mut self) -> Result<i64>[src]

pub fn read_double(&mut self) -> Result<f64>[src]

pub fn read_float(&mut self) -> Result<f32>[src]

pub fn read_string(&mut self) -> Result<String>[src]

pub fn read_binary(&mut self) -> Result<Vec<u8>>[src]

Loading content...

Provided methods

pub fn skip(&mut self, field_type: TType) -> Result<()>[src]

Skip over the next data element from the provided input Protocol object

Loading content...

Implementors

impl<B: Buf> ProtocolReader for BinaryProtocolDeserializer<B>[src]

impl<B: Buf> ProtocolReader for CompactProtocolDeserializer<B>[src]

impl<B: Buf> ProtocolReader for SimpleJsonProtocolDeserializer<B>[src]

pub fn skip(&mut self, field_type: TType) -> Result<()>[src]

Override the default skip impl to handle random JSON noise

Loading content...