protobuf

Trait ProtobufEnum

Source
pub trait ProtobufEnum:
    Eq
    + Sized
    + Copy
    + 'static {
    // Required methods
    fn value(&self) -> i32;
    fn from_i32(v: i32) -> Option<Self>;

    // Provided methods
    fn values() -> &'static [Self] { ... }
    fn descriptor(&self) -> &'static EnumValueDescriptor { ... }
    fn enum_descriptor(&self) -> &'static EnumDescriptor { ... }
    fn enum_descriptor_static() -> &'static EnumDescriptor { ... }
}
Expand description

Trait implemented by all protobuf enum types.

Required Methods§

Source

fn value(&self) -> i32

Get enum i32 value.

Source

fn from_i32(v: i32) -> Option<Self>

Try to create an enum from i32 value. Return None if value is unknown.

Provided Methods§

Source

fn values() -> &'static [Self]

Get all enum values for enum type.

Source

fn descriptor(&self) -> &'static EnumValueDescriptor

Get enum value descriptor.

Source

fn enum_descriptor(&self) -> &'static EnumDescriptor

Get enum descriptor.

Source

fn enum_descriptor_static() -> &'static EnumDescriptor

Get enum descriptor by type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§