...

Text file src/github.com/google/flatbuffers/tests/arrays_test/my_game/example/test_enum_generated.rs

Documentation: github.com/google/flatbuffers/tests/arrays_test/my_game/example

     1// automatically generated by the FlatBuffers compiler, do not modify
     2// @generated
     3extern crate alloc;
     4extern crate flatbuffers;
     5use alloc::boxed::Box;
     6use alloc::string::{String, ToString};
     7use alloc::vec::Vec;
     8use core::mem;
     9use core::cmp::Ordering;
    10use self::flatbuffers::{EndianScalar, Follow};
    11use super::*;
    12#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
    13pub const ENUM_MIN_TEST_ENUM: i8 = 0;
    14#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
    15pub const ENUM_MAX_TEST_ENUM: i8 = 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)]
    18pub const ENUM_VALUES_TEST_ENUM: [TestEnum; 3] = [
    19  TestEnum::A,
    20  TestEnum::B,
    21  TestEnum::C,
    22];
    23
    24#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
    25#[repr(transparent)]
    26pub struct TestEnum(pub i8);
    27#[allow(non_upper_case_globals)]
    28impl TestEnum {
    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: i8 = 0;
    34  pub const ENUM_MAX: i8 = 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.
    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}
    50impl core::fmt::Debug for TestEnum {
    51  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}
    59impl<'a> flatbuffers::Follow<'a> for TestEnum {
    60  type Inner = Self;
    61  #[inline]
    62  unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
    63    let b = flatbuffers::read_scalar_at::<i8>(buf, loc);
    64    Self(b)
    65  }
    66}
    67
    68impl flatbuffers::Push for TestEnum {
    69    type Output = TestEnum;
    70    #[inline]
    71    unsafe fn push(&self, dst: &mut [u8], _written_len: usize) {
    72        flatbuffers::emplace_scalar::<i8>(dst, self.0);
    73    }
    74}
    75
    76impl flatbuffers::EndianScalar for TestEnum {
    77  type Scalar = i8;
    78  #[inline]
    79  fn to_little_endian(self) -> i8 {
    80    self.0.to_le()
    81  }
    82  #[inline]
    83  #[allow(clippy::wrong_self_convention)]
    84  fn from_little_endian(v: i8) -> Self {
    85    let b = i8::from_le(v);
    86    Self(b)
    87  }
    88}
    89
    90impl<'a> flatbuffers::Verifiable for TestEnum {
    91  #[inline]
    92  fn run_verifier(
    93    v: &mut flatbuffers::Verifier, pos: usize
    94  ) -> Result<(), flatbuffers::InvalidFlatbuffer> {
    95    use self::flatbuffers::Verifiable;
    96    i8::run_verifier(v, pos)
    97  }
    98}
    99
   100impl flatbuffers::SimpleToVerifyInSlice for TestEnum {}

View as plain text