use core::mem;
use core::cmp::Ordering;
extern crate flatbuffers;
use self::flatbuffers::{EndianScalar, Follow};
pub enum CHNOffset {}
#[derive(Copy, Clone, PartialEq)]
pub struct CHN<'a> {
pub _tab: flatbuffers::Table<'a>,
}
impl<'a> flatbuffers::Follow<'a> for CHN<'a> {
type Inner = CHN<'a>;
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self { _tab: flatbuffers::Table::new(buf, loc) }
}
}
impl<'a> CHN<'a> {
pub const VT_ID: flatbuffers::VOffsetT = 4;
pub const VT_NAME: flatbuffers::VOffsetT = 6;
pub const VT_TYPE: flatbuffers::VOffsetT = 8;
pub const VT_BEAM_NAME: flatbuffers::VOffsetT = 10;
pub const VT_ID_RFBAND: flatbuffers::VOffsetT = 12;
pub const VT_ENCRYPTION: flatbuffers::VOffsetT = 14;
pub const VT_PKG: flatbuffers::VOffsetT = 16;
pub const VT_RES: flatbuffers::VOffsetT = 18;
pub const VT_COMPRESSION: flatbuffers::VOffsetT = 20;
pub const VT_VPID: flatbuffers::VOffsetT = 22;
pub const VT_APID: flatbuffers::VOffsetT = 24;
pub const VT_SID: flatbuffers::VOffsetT = 26;
pub const VT_OWNER: flatbuffers::VOffsetT = 28;
#[inline]
pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self {
CHN { _tab: table }
}
#[allow(unused_mut)]
pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr, A: flatbuffers::Allocator + 'bldr>(
_fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr, A>,
args: &'args CHNArgs<'args>
) -> flatbuffers::WIPOffset<CHN<'bldr>> {
let mut builder = CHNBuilder::new(_fbb);
if let Some(x) = args.OWNER { builder.add_OWNER(x); }
if let Some(x) = args.SID { builder.add_SID(x); }
if let Some(x) = args.APID { builder.add_APID(x); }
if let Some(x) = args.VPID { builder.add_VPID(x); }
if let Some(x) = args.COMPRESSION { builder.add_COMPRESSION(x); }
if let Some(x) = args.RES { builder.add_RES(x); }
if let Some(x) = args.PKG { builder.add_PKG(x); }
if let Some(x) = args.ENCRYPTION { builder.add_ENCRYPTION(x); }
if let Some(x) = args.ID_RFBAND { builder.add_ID_RFBAND(x); }
if let Some(x) = args.BEAM_NAME { builder.add_BEAM_NAME(x); }
if let Some(x) = args.TYPE { builder.add_TYPE(x); }
if let Some(x) = args.NAME { builder.add_NAME(x); }
if let Some(x) = args.ID { builder.add_ID(x); }
builder.finish()
}
pub fn unpack(&self) -> CHNT {
let ID = self.ID().map(|x| {
x.to_string()
});
let NAME = self.NAME().map(|x| {
x.to_string()
});
let TYPE = self.TYPE().map(|x| {
x.to_string()
});
let BEAM_NAME = self.BEAM_NAME().map(|x| {
x.to_string()
});
let ID_RFBAND = self.ID_RFBAND().map(|x| {
x.to_string()
});
let ENCRYPTION = self.ENCRYPTION().map(|x| {
x.to_string()
});
let PKG = self.PKG().map(|x| {
x.to_string()
});
let RES = self.RES().map(|x| {
x.to_string()
});
let COMPRESSION = self.COMPRESSION().map(|x| {
x.to_string()
});
let VPID = self.VPID().map(|x| {
x.to_string()
});
let APID = self.APID().map(|x| {
x.to_string()
});
let SID = self.SID().map(|x| {
x.to_string()
});
let OWNER = self.OWNER().map(|x| {
x.to_string()
});
CHNT {
ID,
NAME,
TYPE,
BEAM_NAME,
ID_RFBAND,
ENCRYPTION,
PKG,
RES,
COMPRESSION,
VPID,
APID,
SID,
OWNER,
}
}
#[inline]
pub fn ID(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_ID, None)}
}
#[inline]
pub fn NAME(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_NAME, None)}
}
#[inline]
pub fn TYPE(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_TYPE, None)}
}
#[inline]
pub fn BEAM_NAME(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_BEAM_NAME, None)}
}
#[inline]
pub fn ID_RFBAND(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_ID_RFBAND, None)}
}
#[inline]
pub fn ENCRYPTION(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_ENCRYPTION, None)}
}
#[inline]
pub fn PKG(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_PKG, None)}
}
#[inline]
pub fn RES(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_RES, None)}
}
#[inline]
pub fn COMPRESSION(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_COMPRESSION, None)}
}
#[inline]
pub fn VPID(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_VPID, None)}
}
#[inline]
pub fn APID(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_APID, None)}
}
#[inline]
pub fn SID(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_SID, None)}
}
#[inline]
pub fn OWNER(&self) -> Option<&'a str> {
unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(CHN::VT_OWNER, None)}
}
}
impl flatbuffers::Verifiable for CHN<'_> {
#[inline]
fn run_verifier(
v: &mut flatbuffers::Verifier, pos: usize
) -> Result<(), flatbuffers::InvalidFlatbuffer> {
use self::flatbuffers::Verifiable;
v.visit_table(pos)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("ID", Self::VT_ID, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("NAME", Self::VT_NAME, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("TYPE", Self::VT_TYPE, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("BEAM_NAME", Self::VT_BEAM_NAME, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("ID_RFBAND", Self::VT_ID_RFBAND, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("ENCRYPTION", Self::VT_ENCRYPTION, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("PKG", Self::VT_PKG, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("RES", Self::VT_RES, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("COMPRESSION", Self::VT_COMPRESSION, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("VPID", Self::VT_VPID, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("APID", Self::VT_APID, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("SID", Self::VT_SID, false)?
.visit_field::<flatbuffers::ForwardsUOffset<&str>>("OWNER", Self::VT_OWNER, false)?
.finish();
Ok(())
}
}
pub struct CHNArgs<'a> {
pub ID: Option<flatbuffers::WIPOffset<&'a str>>,
pub NAME: Option<flatbuffers::WIPOffset<&'a str>>,
pub TYPE: Option<flatbuffers::WIPOffset<&'a str>>,
pub BEAM_NAME: Option<flatbuffers::WIPOffset<&'a str>>,
pub ID_RFBAND: Option<flatbuffers::WIPOffset<&'a str>>,
pub ENCRYPTION: Option<flatbuffers::WIPOffset<&'a str>>,
pub PKG: Option<flatbuffers::WIPOffset<&'a str>>,
pub RES: Option<flatbuffers::WIPOffset<&'a str>>,
pub COMPRESSION: Option<flatbuffers::WIPOffset<&'a str>>,
pub VPID: Option<flatbuffers::WIPOffset<&'a str>>,
pub APID: Option<flatbuffers::WIPOffset<&'a str>>,
pub SID: Option<flatbuffers::WIPOffset<&'a str>>,
pub OWNER: Option<flatbuffers::WIPOffset<&'a str>>,
}
impl<'a> Default for CHNArgs<'a> {
#[inline]
fn default() -> Self {
CHNArgs {
ID: None,
NAME: None,
TYPE: None,
BEAM_NAME: None,
ID_RFBAND: None,
ENCRYPTION: None,
PKG: None,
RES: None,
COMPRESSION: None,
VPID: None,
APID: None,
SID: None,
OWNER: None,
}
}
}
pub struct CHNBuilder<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> {
fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a, A>,
start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>,
}
impl<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> CHNBuilder<'a, 'b, A> {
#[inline]
pub fn add_ID(&mut self, ID: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_ID, ID);
}
#[inline]
pub fn add_NAME(&mut self, NAME: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_NAME, NAME);
}
#[inline]
pub fn add_TYPE(&mut self, TYPE: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_TYPE, TYPE);
}
#[inline]
pub fn add_BEAM_NAME(&mut self, BEAM_NAME: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_BEAM_NAME, BEAM_NAME);
}
#[inline]
pub fn add_ID_RFBAND(&mut self, ID_RFBAND: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_ID_RFBAND, ID_RFBAND);
}
#[inline]
pub fn add_ENCRYPTION(&mut self, ENCRYPTION: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_ENCRYPTION, ENCRYPTION);
}
#[inline]
pub fn add_PKG(&mut self, PKG: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_PKG, PKG);
}
#[inline]
pub fn add_RES(&mut self, RES: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_RES, RES);
}
#[inline]
pub fn add_COMPRESSION(&mut self, COMPRESSION: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_COMPRESSION, COMPRESSION);
}
#[inline]
pub fn add_VPID(&mut self, VPID: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_VPID, VPID);
}
#[inline]
pub fn add_APID(&mut self, APID: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_APID, APID);
}
#[inline]
pub fn add_SID(&mut self, SID: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_SID, SID);
}
#[inline]
pub fn add_OWNER(&mut self, OWNER: flatbuffers::WIPOffset<&'b str>) {
self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(CHN::VT_OWNER, OWNER);
}
#[inline]
pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>) -> CHNBuilder<'a, 'b, A> {
let start = _fbb.start_table();
CHNBuilder {
fbb_: _fbb,
start_: start,
}
}
#[inline]
pub fn finish(self) -> flatbuffers::WIPOffset<CHN<'a>> {
let o = self.fbb_.end_table(self.start_);
flatbuffers::WIPOffset::new(o.value())
}
}
impl core::fmt::Debug for CHN<'_> {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
let mut ds = f.debug_struct("CHN");
ds.field("ID", &self.ID());
ds.field("NAME", &self.NAME());
ds.field("TYPE", &self.TYPE());
ds.field("BEAM_NAME", &self.BEAM_NAME());
ds.field("ID_RFBAND", &self.ID_RFBAND());
ds.field("ENCRYPTION", &self.ENCRYPTION());
ds.field("PKG", &self.PKG());
ds.field("RES", &self.RES());
ds.field("COMPRESSION", &self.COMPRESSION());
ds.field("VPID", &self.VPID());
ds.field("APID", &self.APID());
ds.field("SID", &self.SID());
ds.field("OWNER", &self.OWNER());
ds.finish()
}
}
#[non_exhaustive]
#[derive(Debug, Clone, PartialEq)]
pub struct CHNT {
pub ID: Option<String>,
pub NAME: Option<String>,
pub TYPE: Option<String>,
pub BEAM_NAME: Option<String>,
pub ID_RFBAND: Option<String>,
pub ENCRYPTION: Option<String>,
pub PKG: Option<String>,
pub RES: Option<String>,
pub COMPRESSION: Option<String>,
pub VPID: Option<String>,
pub APID: Option<String>,
pub SID: Option<String>,
pub OWNER: Option<String>,
}
impl Default for CHNT {
fn default() -> Self {
Self {
ID: None,
NAME: None,
TYPE: None,
BEAM_NAME: None,
ID_RFBAND: None,
ENCRYPTION: None,
PKG: None,
RES: None,
COMPRESSION: None,
VPID: None,
APID: None,
SID: None,
OWNER: None,
}
}
}
impl CHNT {
pub fn pack<'b, A: flatbuffers::Allocator + 'b>(
&self,
_fbb: &mut flatbuffers::FlatBufferBuilder<'b, A>
) -> flatbuffers::WIPOffset<CHN<'b>> {
let ID = self.ID.as_ref().map(|x|{
_fbb.create_string(x)
});
let NAME = self.NAME.as_ref().map(|x|{
_fbb.create_string(x)
});
let TYPE = self.TYPE.as_ref().map(|x|{
_fbb.create_string(x)
});
let BEAM_NAME = self.BEAM_NAME.as_ref().map(|x|{
_fbb.create_string(x)
});
let ID_RFBAND = self.ID_RFBAND.as_ref().map(|x|{
_fbb.create_string(x)
});
let ENCRYPTION = self.ENCRYPTION.as_ref().map(|x|{
_fbb.create_string(x)
});
let PKG = self.PKG.as_ref().map(|x|{
_fbb.create_string(x)
});
let RES = self.RES.as_ref().map(|x|{
_fbb.create_string(x)
});
let COMPRESSION = self.COMPRESSION.as_ref().map(|x|{
_fbb.create_string(x)
});
let VPID = self.VPID.as_ref().map(|x|{
_fbb.create_string(x)
});
let APID = self.APID.as_ref().map(|x|{
_fbb.create_string(x)
});
let SID = self.SID.as_ref().map(|x|{
_fbb.create_string(x)
});
let OWNER = self.OWNER.as_ref().map(|x|{
_fbb.create_string(x)
});
CHN::create(_fbb, &CHNArgs{
ID,
NAME,
TYPE,
BEAM_NAME,
ID_RFBAND,
ENCRYPTION,
PKG,
RES,
COMPRESSION,
VPID,
APID,
SID,
OWNER,
})
}
}
#[inline]
pub fn root_as_CHN(buf: &[u8]) -> Result<CHN, flatbuffers::InvalidFlatbuffer> {
flatbuffers::root::<CHN>(buf)
}
#[inline]
pub fn size_prefixed_root_as_CHN(buf: &[u8]) -> Result<CHN, flatbuffers::InvalidFlatbuffer> {
flatbuffers::size_prefixed_root::<CHN>(buf)
}
#[inline]
pub fn root_as_CHN_with_opts<'b, 'o>(
opts: &'o flatbuffers::VerifierOptions,
buf: &'b [u8],
) -> Result<CHN<'b>, flatbuffers::InvalidFlatbuffer> {
flatbuffers::root_with_opts::<CHN<'b>>(opts, buf)
}
#[inline]
pub fn size_prefixed_root_as_CHN_with_opts<'b, 'o>(
opts: &'o flatbuffers::VerifierOptions,
buf: &'b [u8],
) -> Result<CHN<'b>, flatbuffers::InvalidFlatbuffer> {
flatbuffers::size_prefixed_root_with_opts::<CHN<'b>>(opts, buf)
}
#[inline]
pub unsafe fn root_as_CHN_unchecked(buf: &[u8]) -> CHN {
flatbuffers::root_unchecked::<CHN>(buf)
}
#[inline]
pub unsafe fn size_prefixed_root_as_CHN_unchecked(buf: &[u8]) -> CHN {
flatbuffers::size_prefixed_root_unchecked::<CHN>(buf)
}
pub const CHN_IDENTIFIER: &str = "$CHN";
#[inline]
pub fn CHN_buffer_has_identifier(buf: &[u8]) -> bool {
flatbuffers::buffer_has_identifier(buf, CHN_IDENTIFIER, false)
}
#[inline]
pub fn CHN_size_prefixed_buffer_has_identifier(buf: &[u8]) -> bool {
flatbuffers::buffer_has_identifier(buf, CHN_IDENTIFIER, true)
}
#[inline]
pub fn finish_CHN_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(
fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>,
root: flatbuffers::WIPOffset<CHN<'a>>) {
fbb.finish(root, Some(CHN_IDENTIFIER));
}
#[inline]
pub fn finish_size_prefixed_CHN_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>, root: flatbuffers::WIPOffset<CHN<'a>>) {
fbb.finish_size_prefixed(root, Some(CHN_IDENTIFIER));
}