[][src]Struct protobuf::UnknownFields

pub struct UnknownFields {
    pub fields: Option<Box<HashMap<u32, UnknownValues>>>,
}

Hold "unknown" fields in parsed message.

Field may be unknown if it they are added in newer version of .proto. Unknown fields are stored in UnknownFields structure, so protobuf message could process messages without losing data.

For example, in this operation: load from DB, modify, store to DB, even when working with older .proto file, new fields won't be lost.

Fields

fields: Option<Box<HashMap<u32, UnknownValues>>>

The map.

Methods

impl UnknownFields[src]

pub fn new() -> UnknownFields[src]

Empty unknown fields

pub fn add_fixed32(&mut self, number: u32, fixed32: u32)[src]

Add unknown fixed 32-bit

pub fn add_fixed64(&mut self, number: u32, fixed64: u64)[src]

Add unknown fixed 64-bit

pub fn add_varint(&mut self, number: u32, varint: u64)[src]

Add unknown varint

pub fn add_length_delimited(&mut self, number: u32, length_delimited: Vec<u8>)[src]

Add unknown length delimited

pub fn add_value(&mut self, number: u32, value: UnknownValue)[src]

Add unknown value

Important traits for UnknownFieldsIter<'s>
pub fn iter<'s>(&'s self) -> UnknownFieldsIter<'s>[src]

Iterate over all unknowns

pub fn get(&self, field_number: u32) -> Option<&UnknownValues>[src]

Find unknown field by number

Trait Implementations

impl Clear for UnknownFields[src]

impl Default for UnknownFields[src]

impl Clone for UnknownFields[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Eq for UnknownFields[src]

impl<'a> IntoIterator for &'a UnknownFields[src]

type Item = (u32, &'a UnknownValues)

The type of the elements being iterated over.

type IntoIter = UnknownFieldsIter<'a>

Which kind of iterator are we turning this into?

impl PartialEq<UnknownFields> for UnknownFields[src]

impl Debug for UnknownFields[src]

impl Hash for UnknownFields[src]

Very simple hash implementation of Hash for UnknownFields. Since map is unordered, we cannot put entry hashes into hasher, instead we summing hashes of entries.

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

Auto Trait Implementations

impl Send for UnknownFields

impl Sync for UnknownFields

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]