[go: up one dir, main page]

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§

Required Methods§

Provided Methods§

Compute size adding length prefix if wire type is length delimited (i. e. string, bytes, message)

Get previously computed size

Get previously cached size with length prefix

Implementors§