1 // automatically generated by the FlatBuffers compiler, do not modify 2 // @generated 3 extern crate alloc; 4 extern crate flatbuffers; 5 use alloc::boxed::Box; 6 use alloc::string::{String, ToString}; 7 use alloc::vec::Vec; 8 use core::mem; 9 use core::cmp::Ordering; 10 use self::flatbuffers::{EndianScalar, Follow}; 11 use super::*; 12 #[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")] 13 pub const ENUM_MIN_ABC: i32 = 0; 14 #[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")] 15 pub const ENUM_MAX_ABC: i32 = 2; 16 #[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")] 17 #[allow(non_camel_case_types)] 18 pub const ENUM_VALUES_ABC: [ABC; 3] = [ 19 ABC::A, 20 ABC::B, 21 ABC::C, 22 ]; 23 24 #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)] 25 #[repr(transparent)] 26 pub struct ABC(pub i32); 27 #[allow(non_upper_case_globals)] 28 impl ABC { 29 pub const A: Self = Self(0); 30 pub const B: Self = Self(1); 31 pub const C: Self = Self(2); 32 33 pub const ENUM_MIN: i32 = 0; 34 pub const ENUM_MAX: i32 = 2; 35 pub const ENUM_VALUES: &'static [Self] = &[ 36 Self::A, 37 Self::B, 38 Self::C, 39 ]; 40 /// Returns the variant's name or "" if unknown. variant_name(self) -> Option<&'static str>41 pub fn variant_name(self) -> Option<&'static str> { 42 match self { 43 Self::A => Some("A"), 44 Self::B => Some("B"), 45 Self::C => Some("C"), 46 _ => None, 47 } 48 } 49 } 50 impl core::fmt::Debug for ABC { fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result51 fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result { 52 if let Some(name) = self.variant_name() { 53 f.write_str(name) 54 } else { 55 f.write_fmt(format_args!("<UNKNOWN {:?}>", self.0)) 56 } 57 } 58 } 59 impl<'a> flatbuffers::Follow<'a> for ABC { 60 type Inner = Self; 61 #[inline] follow(buf: &'a [u8], loc: usize) -> Self::Inner62 fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { 63 let b = unsafe { 64 flatbuffers::read_scalar_at::<i32>(buf, loc) 65 }; 66 Self(b) 67 } 68 } 69 70 impl flatbuffers::Push for ABC { 71 type Output = ABC; 72 #[inline] push(&self, dst: &mut [u8], _rest: &[u8])73 fn push(&self, dst: &mut [u8], _rest: &[u8]) { 74 unsafe { flatbuffers::emplace_scalar::<i32>(dst, self.0); } 75 } 76 } 77 78 impl flatbuffers::EndianScalar for ABC { 79 #[inline] to_little_endian(self) -> Self80 fn to_little_endian(self) -> Self { 81 let b = i32::to_le(self.0); 82 Self(b) 83 } 84 #[inline] 85 #[allow(clippy::wrong_self_convention)] from_little_endian(self) -> Self86 fn from_little_endian(self) -> Self { 87 let b = i32::from_le(self.0); 88 Self(b) 89 } 90 } 91 92 impl<'a> flatbuffers::Verifiable for ABC { 93 #[inline] run_verifier( v: &mut flatbuffers::Verifier, pos: usize ) -> Result<(), flatbuffers::InvalidFlatbuffer>94 fn run_verifier( 95 v: &mut flatbuffers::Verifier, pos: usize 96 ) -> Result<(), flatbuffers::InvalidFlatbuffer> { 97 use self::flatbuffers::Verifiable; 98 i32::run_verifier(v, pos) 99 } 100 } 101 102 impl flatbuffers::SimpleToVerifyInSlice for ABC {} 103