pub struct DescriptorProto {
pub name: Option<String>,
pub field: Vec<FieldDescriptorProto>,
pub extension: Vec<FieldDescriptorProto>,
pub nested_type: Vec<Self>,
pub enum_type: Vec<EnumDescriptorProto>,
pub extension_range: Vec<ExtensionRange>,
pub oneof_decl: Vec<OneofDescriptorProto>,
pub options: MessageField<MessageOptions>,
pub reserved_range: Vec<ReservedRange>,
pub reserved_name: Vec<String>,
pub visibility: Option<SymbolVisibility>,
/* private fields */
}Expand description
Describes a message type.
Fields§
§name: Option<String>Field 1: name
field: Vec<FieldDescriptorProto>Field 2: field
extension: Vec<FieldDescriptorProto>Field 6: extension
nested_type: Vec<Self>Field 3: nested_type
enum_type: Vec<EnumDescriptorProto>Field 4: enum_type
extension_range: Vec<ExtensionRange>Field 5: extension_range
oneof_decl: Vec<OneofDescriptorProto>Field 8: oneof_decl
options: MessageField<MessageOptions>Field 7: options
reserved_range: Vec<ReservedRange>Field 9: reserved_range
reserved_name: Vec<String>Reserved field names, which may not be used by fields in the same message. A given name may only be reserved once.
Field 10: reserved_name
visibility: Option<SymbolVisibility>Support for export and local keywords on enums.
Field 11: visibility
Implementations§
Trait Implementations§
Source§impl Clone for DescriptorProto
impl Clone for DescriptorProto
Source§fn clone(&self) -> DescriptorProto
fn clone(&self) -> DescriptorProto
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DescriptorProto
impl Debug for DescriptorProto
Source§impl Default for DescriptorProto
impl Default for DescriptorProto
Source§fn default() -> DescriptorProto
fn default() -> DescriptorProto
Returns the “default value” for a type. Read more
Source§impl DefaultInstance for DescriptorProto
impl DefaultInstance for DescriptorProto
Source§fn default_instance() -> &'static Self
fn default_instance() -> &'static Self
Return a reference to the single default instance of this type.
Source§impl ExtensionSet for DescriptorProto
impl ExtensionSet for DescriptorProto
Source§const PROTO_FQN: &'static str = "google.protobuf.DescriptorProto"
const PROTO_FQN: &'static str = "google.protobuf.DescriptorProto"
Fully-qualified proto type name of this message (no leading dot),
e.g.
"google.protobuf.FieldOptions". Read moreSource§fn unknown_fields(&self) -> &UnknownFields
fn unknown_fields(&self) -> &UnknownFields
Immutable access to the extendee’s unknown-field storage.
Source§fn unknown_fields_mut(&mut self) -> &mut UnknownFields
fn unknown_fields_mut(&mut self) -> &mut UnknownFields
Mutable access to the extendee’s unknown-field storage.
Source§fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
Read an extension value. Read more
Source§fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
Write an extension value, replacing any prior occurrences. Read more
Source§fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
Returns
true if any record at the extension’s field number is present. Read moreSource§fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
Remove all records at the extension’s field number. Read more
Source§fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
Read a singular extension value, returning the proto2
[default = ...]
value if absent, or the type’s Default if no proto default was declared. Read moreSource§impl Message for DescriptorProto
impl Message for DescriptorProto
Source§fn compute_size(&self, __cache: &mut SizeCache) -> u32
fn compute_size(&self, __cache: &mut SizeCache) -> u32
Returns the total encoded size in bytes.
The result is a u32; the protobuf specification requires all
messages to fit within 2 GiB (2,147,483,647 bytes), so a
compliant message will never overflow this type.
Source§fn write_to(&self, __cache: &mut SizeCache, buf: &mut impl BufMut)
fn write_to(&self, __cache: &mut SizeCache, buf: &mut impl BufMut)
Write this message’s encoded bytes to a buffer, consuming
nested-message sizes from
cache (populated by a prior
compute_size call on the same cache). Read moreSource§fn merge_field(
&mut self,
tag: Tag,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_field( &mut self, tag: Tag, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Processes a single already-decoded tag and its associated field data
from
buf. Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Compute size, then write. This is the primary encoding API.
Source§fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
Encode using a caller-supplied
SizeCache, for
reuse across many encodes in a hot loop. Clears the cache first.Source§fn encoded_len(&self) -> u32
fn encoded_len(&self) -> u32
Compute the encoded byte size of this message. Read more
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Encode this message as a length-delimited byte sequence.
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
Encode this message to a new
bytes::Bytes. Read moreSource§fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a buffer.
Source§fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a byte slice. Read more
Source§fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a length-delimited message from a buffer. Read more
Source§fn merge_to_limit(
&mut self,
buf: &mut impl Buf,
depth: u32,
limit: usize,
) -> Result<(), DecodeError>
fn merge_to_limit( &mut self, buf: &mut impl Buf, depth: u32, limit: usize, ) -> Result<(), DecodeError>
Source§fn merge_group(
&mut self,
buf: &mut impl Buf,
depth: u32,
field_number: u32,
) -> Result<(), DecodeError>
fn merge_group( &mut self, buf: &mut impl Buf, depth: u32, field_number: u32, ) -> Result<(), DecodeError>
Merges a group-encoded message from
buf, reading fields until an
EndGroup tag with the given field_number is encountered. Read moreSource§fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
Merge fields from a buffer into this message. Read more
Source§fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
Merge fields from a byte slice into this message. Read more
Source§fn merge_length_delimited(
&mut self,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_length_delimited( &mut self, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Merge fields from a length-delimited sub-message payload into this message. Read more
Source§impl PartialEq for DescriptorProto
impl PartialEq for DescriptorProto
Source§fn eq(&self, other: &DescriptorProto) -> bool
fn eq(&self, other: &DescriptorProto) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for DescriptorProto
Auto Trait Implementations§
impl Freeze for DescriptorProto
impl RefUnwindSafe for DescriptorProto
impl Send for DescriptorProto
impl Sync for DescriptorProto
impl Unpin for DescriptorProto
impl UnsafeUnpin for DescriptorProto
impl UnwindSafe for DescriptorProto
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more