Skip to main content

engage/generated/app/
godunitemptymenuitem.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-godunitemptymenuitem-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            basicmenuitem::{BasicMenuItem, IBasicMenuItem},
11            godunitmenuitem::{GodUnitMenuItem, IGodUnitMenuItem},
12        },
13        system::object::{IObject, Object},
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/godunitemptymenuitem/GodUnitEmptyMenuItem.md"))]
17    #[::unity::class(namespace = "App", name = "GodUnitEmptyMenuItem")]
18    #[parent(crate::app::godunitmenuitem::GodUnitMenuItem)]
19    pub struct GodUnitEmptyMenuItem {}
20}
21
22#[cfg(feature = "app-godunitemptymenuitem-types")]
23pub use __types::*;
24
25#[cfg(feature = "app-godunitemptymenuitem")]
26pub trait IGodUnitEmptyMenuItemMethods: IGodUnitEmptyMenuItem {
27    #[doc = "`.ctor(crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler, crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler)` overload"]
28    fn ctor(
29        self,
30        select_event_handler: impl ::core::convert::Into<crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler>,
31        decide_event_handler: impl ::core::convert::Into<crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler>,
32    ) -> () {
33        unsafe {
34            let __receiver = <GodUnitEmptyMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
35            ::unity::il2cpp_call!((::unity::module_base()+0x2347090usize)as*mut u8,();
36(GodUnitEmptyMenuItem)__receiver,(crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler)::core::convert::Into::into(select_event_handler),(crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler)::core::convert::Into::into(decide_event_handler))
37        }
38    }
39    #[doc = "`BuildAttribute()` overload"]
40    fn build_attribute(self) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
41        unsafe {
42            let __receiver = <GodUnitEmptyMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
43            {
44                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
45                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
46                    panic!(
47                        "unity: virtual slot {}
48 out of range (vtable len {}
49) on the runtime class behind {}
50 (method `{}
51`)",
52                        8usize,
53                        __vt.len(),
54                        <GodUnitEmptyMenuItem as ::unity::ClassIdentity>::NAME,
55                        "BuildAttribute",
56                    )
57                });
58                let __inner: extern "C" fn(GodUnitEmptyMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
59                    ::core::mem::transmute(__vi.method_ptr);
60                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
61                __inner(__receiver, __mi)
62            }
63        }
64    }
65    #[doc = "`ACall()` overload"]
66    fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
67        unsafe {
68            let __receiver = <GodUnitEmptyMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
69            {
70                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
71                let __vi = *__vt.get(18usize).unwrap_or_else(|| {
72                    panic!(
73                        "unity: virtual slot {}
74 out of range (vtable len {}
75) on the runtime class behind {}
76 (method `{}
77`)",
78                        18usize,
79                        __vt.len(),
80                        <GodUnitEmptyMenuItem as ::unity::ClassIdentity>::NAME,
81                        "ACall",
82                    )
83                });
84                let __inner: extern "C" fn(GodUnitEmptyMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
85                    ::core::mem::transmute(__vi.method_ptr);
86                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
87                __inner(__receiver, __mi)
88            }
89        }
90    }
91}
92
93#[cfg(feature = "app-godunitemptymenuitem")]
94impl<__T: IGodUnitEmptyMenuItem> IGodUnitEmptyMenuItemMethods for __T {}
95
96#[cfg(feature = "app-godunitemptymenuitem")]
97impl GodUnitEmptyMenuItem {
98    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
99        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
100    }
101
102    pub fn build_attribute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
103        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
104    }
105
106    pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
107        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
108    }
109}
110
111#[cfg(feature = "app-godunitemptymenuitem")]
112impl GodUnitEmptyMenuItem {
113    #[doc = "Direct (non-virtual) call to `GodUnitEmptyMenuItem`'s own `BuildAttribute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
114    pub unsafe fn build_attribute(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
115        let __mi = Self::build_attribute_method_info();
116        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
117            ::core::mem::transmute(__mi.method_ptr);
118        __inner(this.into(), ::core::option::Option::None)
119    }
120
121    #[doc = "Direct (non-virtual) call to `GodUnitEmptyMenuItem`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
122    pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
123        let __mi = Self::a_call_method_info();
124        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
125            ::core::mem::transmute(__mi.method_ptr);
126        __inner(this.into(), ::core::option::Option::None)
127    }
128}
129
130#[cfg(feature = "app-godunitemptymenuitem")]
131impl GodUnitEmptyMenuItem {
132    #[doc = "`.ctor(crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler, crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler)` — overload selector"]
133    pub fn new(
134        select_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler,
135        decide_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler,
136    ) -> Self {
137        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
138            panic!(
139                "{}
140::{}
141 failed to instantiate",
142                ::core::stringify!(GodUnitEmptyMenuItem),
143                ::core::stringify!(new),
144            )
145        });
146        <Self as IGodUnitEmptyMenuItemMethods>::ctor(this, select_event_handler, decide_event_handler);
147        this
148    }
149}
150
151#[cfg(feature = "app-godunitemptymenuitem")]
152#[doc(hidden)]
153pub mod prelude {
154    pub use super::{GodUnitEmptyMenuItem, IGodUnitEmptyMenuItem, IGodUnitEmptyMenuItemMethods};
155    #[cfg(feature = "app-basicmenuitem")]
156    pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
157    #[cfg(feature = "app-godunitmenuitem")]
158    pub use crate::app::godunitmenuitem::IGodUnitMenuItemMethods;
159    #[cfg(feature = "system-object")]
160    pub use crate::system::object::IObjectMethods;
161    pub use crate::{
162        app::{basicmenuitem::IBasicMenuItem, godunitmenuitem::IGodUnitMenuItem},
163        system::object::IObject,
164    };
165}