Trait protobuf::types::ProtobufType
source · pub trait ProtobufType {
type Value: ProtobufValue + Clone + 'static;
fn wire_type() -> WireType;
fn read(is: &mut CodedInputStream<'_>) -> ProtobufResult<Self::Value>;
fn compute_size(value: &Self::Value) -> u32;
fn write_with_cached_size(
field_number: u32,
value: &Self::Value,
os: &mut CodedOutputStream<'_>
) -> ProtobufResult<()>;
fn compute_size_with_length_delimiter(value: &Self::Value) -> u32 { ... }
fn get_from_unknown(_unknown_values: &UnknownValues) -> Option<Self::Value> { ... }
fn get_cached_size(value: &Self::Value) -> u32 { ... }
fn get_cached_size_with_length_delimiter(value: &Self::Value) -> u32 { ... }
}Required Associated Types§
type Value: ProtobufValue + Clone + 'static
Required Methods§
fn wire_type() -> WireType
fn read(is: &mut CodedInputStream<'_>) -> ProtobufResult<Self::Value>
fn compute_size(value: &Self::Value) -> u32
fn write_with_cached_size(
field_number: u32,
value: &Self::Value,
os: &mut CodedOutputStream<'_>
) -> ProtobufResult<()>
Provided Methods§
sourcefn compute_size_with_length_delimiter(value: &Self::Value) -> u32
fn compute_size_with_length_delimiter(value: &Self::Value) -> u32
Compute size adding length prefix if wire type is length delimited (i. e. string, bytes, message)
fn get_from_unknown(_unknown_values: &UnknownValues) -> Option<Self::Value>
sourcefn get_cached_size(value: &Self::Value) -> u32
fn get_cached_size(value: &Self::Value) -> u32
Get previously computed size
sourcefn get_cached_size_with_length_delimiter(value: &Self::Value) -> u32
fn get_cached_size_with_length_delimiter(value: &Self::Value) -> u32
Get previously cached size with length prefix