Trait fbthrift_git::protocol::ProtocolWriter
source · pub trait ProtocolWriter {
type Final;
Show 27 methods
// Required methods
fn write_message_begin(
&mut self,
name: &str,
type_id: MessageType,
seqid: u32
);
fn write_message_end(&mut self);
fn write_struct_begin(&mut self, name: &str);
fn write_struct_end(&mut self);
fn write_field_begin(&mut self, name: &str, type_id: TType, id: i16);
fn write_field_end(&mut self);
fn write_field_stop(&mut self);
fn write_map_begin(
&mut self,
key_type: TType,
value_type: TType,
size: usize
);
fn write_map_key_begin(&mut self);
fn write_map_value_begin(&mut self);
fn write_map_end(&mut self);
fn write_list_begin(&mut self, elem_type: TType, size: usize);
fn write_list_value_begin(&mut self);
fn write_list_end(&mut self);
fn write_set_begin(&mut self, elem_type: TType, size: usize);
fn write_set_value_begin(&mut self);
fn write_set_end(&mut self);
fn write_bool(&mut self, value: bool);
fn write_byte(&mut self, value: i8);
fn write_i16(&mut self, value: i16);
fn write_i32(&mut self, value: i32);
fn write_i64(&mut self, value: i64);
fn write_double(&mut self, value: f64);
fn write_float(&mut self, value: f32);
fn write_string(&mut self, value: &str);
fn write_binary(&mut self, value: &[u8]);
fn finish(self) -> Self::Final;
}
Expand description
Trait for emitting a frame formatted in a given protocol