...

Text file src/github.com/google/flatbuffers/tests/more_defaults/abc_generated.rs

Documentation: github.com/google/flatbuffers/tests/more_defaults

     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_ABC: i32 = 0;
    14#[deprecated(since = "2.0.0", note = "Use associated constants instead. This will no longer be generated in 2021.")]
    15pub 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)]
    18pub 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)]
    26pub struct ABC(pub i32);
    27#[allow(non_upper_case_globals)]
    28impl 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.
    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 ABC {
    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 ABC {
    60  type Inner = Self;
    61  #[inline]
    62  unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
    63    let b = flatbuffers::read_scalar_at::<i32>(buf, loc);
    64    Self(b)
    65  }
    66}
    67
    68impl flatbuffers::Push for ABC {
    69    type Output = ABC;
    70    #[inline]
    71    unsafe fn push(&self, dst: &mut [u8], _written_len: usize) {
    72        flatbuffers::emplace_scalar::<i32>(dst, self.0);
    73    }
    74}
    75
    76impl flatbuffers::EndianScalar for ABC {
    77  type Scalar = i32;
    78  #[inline]
    79  fn to_little_endian(self) -> i32 {
    80    self.0.to_le()
    81  }
    82  #[inline]
    83  #[allow(clippy::wrong_self_convention)]
    84  fn from_little_endian(v: i32) -> Self {
    85    let b = i32::from_le(v);
    86    Self(b)
    87  }
    88}
    89
    90impl<'a> flatbuffers::Verifiable for ABC {
    91  #[inline]
    92  fn run_verifier(
    93    v: &mut flatbuffers::Verifier, pos: usize
    94  ) -> Result<(), flatbuffers::InvalidFlatbuffer> {
    95    use self::flatbuffers::Verifiable;
    96    i32::run_verifier(v, pos)
    97  }
    98}
    99
   100impl flatbuffers::SimpleToVerifyInSlice for ABC {}

View as plain text