blob: d6869c6cb1d49eb5e26a378911ef32e6d2d59a01 [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
#![allow(
deprecated, // FIDL Impl struct pattern is referenced internally
unused_parens, // one-element-tuple-case is not a tuple
unused_mut, // not all args require mutation, but many do
nonstandard_style, // auto-caps does its best, but is not always successful
)]
#![recursion_limit = "512"]
#[cfg(target_os = "fuchsia")]
#[allow(unused_imports)]
use fuchsia_zircon as zx;
#[allow(unused_imports)]
use {
bitflags::bitflags,
fidl::{
client::{decode_transaction_body_fut, QueryResponseFut},
fidl_empty_struct, fidl_flexible_bits, fidl_flexible_enum, fidl_strict_bits,
fidl_strict_enum, fidl_struct, fidl_struct_copy, fidl_table, fidl_xunion,
wrap_handle_metadata,
},
fuchsia_zircon_status as zx_status,
futures::future::{self, MaybeDone, TryFutureExt},
};
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub enum UnionSize8Alignment4 {
Variant(u32),
}
fidl_xunion! {
name: UnionSize8Alignment4,
members: [
Variant {
ty: u32,
ordinal: 1,
},
],
strict_value: true,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub enum UnionSize12Alignment4 {
Variant([u8; 6]),
}
fidl_xunion! {
name: UnionSize12Alignment4,
members: [
Variant {
ty: [u8; 6],
ordinal: 1,
},
],
strict_value: true,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub enum UnionSize24Alignment8 {
Variant(StructSize16Alignment8),
}
fidl_xunion! {
name: UnionSize24Alignment8,
members: [
Variant {
ty: StructSize16Alignment8,
ordinal: 1,
},
],
strict_value: true,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub enum UnionSize36Alignment4 {
Variant([u8; 32]),
}
fidl_xunion! {
name: UnionSize36Alignment4,
members: [
Variant {
ty: [u8; 32],
ordinal: 1,
},
],
strict_value: true,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub struct SandwichUnionSize8Alignment4 {
pub before: u32,
pub union: UnionSize8Alignment4,
pub after: u32,
}
fidl_struct! {
name: SandwichUnionSize8Alignment4,
members: [
before {
ty: u32,
offset_v1: 0,
},
union {
ty: UnionSize8Alignment4,
offset_v1: 8,
},
after {
ty: u32,
offset_v1: 32,
},
],
padding: [
{
ty: u64,
offset: 0,
mask: 0xffffffff00000000u64,
},
{
ty: u64,
offset: 32,
mask: 0xffffffff00000000u64,
},],
size_v1: 40,
align_v1: 8,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub struct SandwichUnionSize12Alignment4 {
pub before: u32,
pub union: UnionSize12Alignment4,
pub after: i32,
}
fidl_struct! {
name: SandwichUnionSize12Alignment4,
members: [
before {
ty: u32,
offset_v1: 0,
},
union {
ty: UnionSize12Alignment4,
offset_v1: 8,
},
after {
ty: i32,
offset_v1: 32,
},
],
padding: [
{
ty: u64,
offset: 0,
mask: 0xffffffff00000000u64,
},
{
ty: u64,
offset: 32,
mask: 0xffffffff00000000u64,
},],
size_v1: 40,
align_v1: 8,
}
#[derive(
Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash, zerocopy::AsBytes, zerocopy::FromBytes,
)]
#[repr(C)]
pub struct StructSize16Alignment8 {
pub f1: u64,
pub f2: u64,
}
fidl_struct_copy! {
name: StructSize16Alignment8,
members: [
f1 {
ty: u64,
offset_v1: 0,
},
f2 {
ty: u64,
offset_v1: 8,
},
],
padding: [],
size_v1: 16,
align_v1: 8,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub struct SandwichUnionSize24Alignment8 {
pub before: u32,
pub union: UnionSize24Alignment8,
pub after: u32,
}
fidl_struct! {
name: SandwichUnionSize24Alignment8,
members: [
before {
ty: u32,
offset_v1: 0,
},
union {
ty: UnionSize24Alignment8,
offset_v1: 8,
},
after {
ty: u32,
offset_v1: 32,
},
],
padding: [
{
ty: u64,
offset: 0,
mask: 0xffffffff00000000u64,
},
{
ty: u64,
offset: 32,
mask: 0xffffffff00000000u64,
},],
size_v1: 40,
align_v1: 8,
}
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
pub struct SandwichUnionSize36Alignment4 {
pub before: u32,
pub union: UnionSize36Alignment4,
pub after: u32,
}
fidl_struct! {
name: SandwichUnionSize36Alignment4,
members: [
before {
ty: u32,
offset_v1: 0,
},
union {
ty: UnionSize36Alignment4,
offset_v1: 8,
},
after {
ty: u32,
offset_v1: 32,
},
],
padding: [
{
ty: u64,
offset: 0,
mask: 0xffffffff00000000u64,
},
{
ty: u64,
offset: 32,
mask: 0xffffffff00000000u64,
},],
size_v1: 40,
align_v1: 8,
}