Trait protobuf::MessageFull

source ·
pub trait MessageFull: Message + ProtobufValue + Debug + Display {
    // Required method
    fn descriptor() -> MessageDescriptor;

    // Provided method
    fn reflect_eq(&self, other: &Self, mode: &ReflectEqMode) -> bool { ... }
}
Expand description

Trait implemented for all the generated messages, except when lite runtime is enabled.

When lite runtime is enabled, only MessageLite is implemented.

  • Generated messages are generated from .proto files
  • Dynamic messages can be created without code generation using only parsed proto files (see FileDescriptor::new_dynamic).

Also, generated messages implement Default + PartialEq

This trait is sized, there’s accompanying MessageDyn trait which is implemented for all messages which can be used in functions without making message a function type parameter.

§Display

Display implementation for messages does protobuf text format. See text_format for more details.

Required Methods§

source

fn descriptor() -> MessageDescriptor

Get message descriptor for message type.

let descriptor = MyMessage::descriptor();
assert_eq!("MyMessage", descriptor.name());

Provided Methods§

source

fn reflect_eq(&self, other: &Self, mode: &ReflectEqMode) -> bool

Reflective equality.

§See also

[dyn Message::reflect_eq_dyn()], dyn version of this function.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl MessageFull for ExtensionRange

source§

impl MessageFull for ReservedRange

source§

impl MessageFull for EnumReservedRange

source§

impl MessageFull for Annotation

source§

impl MessageFull for Location

source§

impl MessageFull for DescriptorProto

source§

impl MessageFull for EnumDescriptorProto

source§

impl MessageFull for EnumOptions

source§

impl MessageFull for EnumValueDescriptorProto

source§

impl MessageFull for EnumValueOptions

source§

impl MessageFull for ExtensionRangeOptions

source§

impl MessageFull for FieldDescriptorProto

source§

impl MessageFull for FieldOptions

source§

impl MessageFull for FileDescriptorProto

source§

impl MessageFull for FileDescriptorSet

source§

impl MessageFull for FileOptions

source§

impl MessageFull for GeneratedCodeInfo

source§

impl MessageFull for MessageOptions

source§

impl MessageFull for MethodDescriptorProto

source§

impl MessageFull for MethodOptions

source§

impl MessageFull for OneofDescriptorProto

source§

impl MessageFull for OneofOptions

source§

impl MessageFull for ServiceDescriptorProto

source§

impl MessageFull for ServiceOptions

source§

impl MessageFull for SourceCodeInfo

source§

impl MessageFull for UninterpretedOption

source§

impl MessageFull for NamePart

source§

impl MessageFull for File

source§

impl MessageFull for CodeGeneratorRequest

source§

impl MessageFull for CodeGeneratorResponse

source§

impl MessageFull for Version

source§

impl MessageFull for Any

source§

impl MessageFull for Api

source§

impl MessageFull for Method

source§

impl MessageFull for Mixin

source§

impl MessageFull for Duration

source§

impl MessageFull for Empty

source§

impl MessageFull for FieldMask

source§

impl MessageFull for SourceContext

source§

impl MessageFull for ListValue

source§

impl MessageFull for Struct

source§

impl MessageFull for Value

source§

impl MessageFull for Timestamp

source§

impl MessageFull for Enum

source§

impl MessageFull for EnumValue

source§

impl MessageFull for Field

source§

impl MessageFull for Option

source§

impl MessageFull for Type

source§

impl MessageFull for BoolValue

source§

impl MessageFull for BytesValue

source§

impl MessageFull for DoubleValue

source§

impl MessageFull for FloatValue

source§

impl MessageFull for Int32Value

source§

impl MessageFull for Int64Value

source§

impl MessageFull for StringValue

source§

impl MessageFull for UInt32Value

source§

impl MessageFull for UInt64Value