1#[cfg(feature = "app-versusviolationtypemenu-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 app::{
10 basicmenu::{BasicMenu, IBasicMenu},
11 basicmenuitem::{BasicMenuItem, IBasicMenuItem},
12 procinst::{IProcInst, ProcInst},
13 },
14 system::{
15 delegate::{Delegate, IDelegate},
16 multicastdelegate::{IMulticastDelegate, MulticastDelegate},
17 object::{IObject, Object},
18 },
19 };
20
21 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/versusviolationtypemenu/VersusViolationTypeMenu_VersusViolationTypeMenuItem.md"))]
22 #[::unity::class(namespace = "App", name = "VersusViolationTypeMenu.VersusViolationTypeMenuItem")]
23 #[parent(crate::app::basicmenuitem::BasicMenuItem)]
24 pub struct VersusViolationTypeMenu_VersusViolationTypeMenuItem {}
25
26 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/versusviolationtypemenu/VersusViolationTypeMenu_DecideCallback.md"))]
27 #[::unity::class(namespace = "App", name = "VersusViolationTypeMenu.DecideCallback")]
28 #[parent(crate::system::multicastdelegate::MulticastDelegate)]
29 pub struct VersusViolationTypeMenu_DecideCallback {}
30
31 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/versusviolationtypemenu/VersusViolationTypeMenu.md"))]
32 #[::unity::class(namespace = "App", name = "VersusViolationTypeMenu")]
33 #[parent(crate::app::basicmenu::BasicMenu)]
34 pub struct VersusViolationTypeMenu {
35 #[offset(200)]
36 #[rename(name = "m_DecideCallback")]
37 pub m_decide_callback: crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback,
38 }
39}
40
41#[cfg(feature = "app-versusviolationtypemenu-types")]
42pub use __types::*;
43
44#[cfg(feature = "app-versusviolationtypemenu")]
45pub trait IVersusViolationTypeMenu_VersusViolationTypeMenuItemMethods: IVersusViolationTypeMenu_VersusViolationTypeMenuItem {
46 #[doc = "`GetName()` overload"]
47 fn get_name(self) -> ::unity::Il2CppString {
48 unsafe {
49 let __receiver = <VersusViolationTypeMenu_VersusViolationTypeMenuItem as ::unity::FromIlInstance>::from_il_instance(
50 <Self as ::unity::SystemObject>::as_instance(self),
51 );
52 {
53 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
54 let __vi = *__vt.get(4usize).unwrap_or_else(|| {
55 panic!(
56 "unity: virtual slot {}
57 out of range (vtable len {}
58) on the runtime class behind {}
59 (method `{}
60`)",
61 4usize,
62 __vt.len(),
63 <VersusViolationTypeMenu_VersusViolationTypeMenuItem as ::unity::ClassIdentity>::NAME,
64 "GetName",
65 )
66 });
67 let __inner: extern "C" fn(VersusViolationTypeMenu_VersusViolationTypeMenuItem, ::unity::OptionalMethod) -> ::unity::Il2CppString =
68 ::core::mem::transmute(__vi.method_ptr);
69 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
70 __inner(__receiver, __mi)
71 }
72 }
73 }
74}
75
76#[cfg(feature = "app-versusviolationtypemenu")]
77impl<__T: IVersusViolationTypeMenu_VersusViolationTypeMenuItem> IVersusViolationTypeMenu_VersusViolationTypeMenuItemMethods for __T {}
78
79#[cfg(feature = "app-versusviolationtypemenu")]
80impl VersusViolationTypeMenu_VersusViolationTypeMenuItem {
81 pub fn get_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
82 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
83 }
84}
85
86#[cfg(feature = "app-versusviolationtypemenu")]
87impl VersusViolationTypeMenu_VersusViolationTypeMenuItem {
88 #[doc = "Direct (non-virtual) call to `VersusViolationTypeMenu_VersusViolationTypeMenuItem`'s own `GetName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
89 pub unsafe fn get_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
90 let __mi = Self::get_name_method_info();
91 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
92 __inner(this.into(), ::core::option::Option::None)
93 }
94}
95
96#[cfg(feature = "app-versusviolationtypemenu")]
97pub trait IVersusViolationTypeMenu_DecideCallbackMethods: IVersusViolationTypeMenu_DecideCallback {
98 #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` overload"]
99 fn ctor(self, object: impl ::core::convert::Into<crate::system::object::Object>, method: impl ::core::convert::Into<::unity::IntPtr>) -> () {
100 unsafe {
101 let __receiver = <VersusViolationTypeMenu_DecideCallback as ::unity::FromIlInstance>::from_il_instance(
102 <Self as ::unity::SystemObject>::as_instance(self),
103 );
104 ::unity::il2cpp_call!((::unity::module_base()+0x1b28820usize)as*mut u8,();
105(VersusViolationTypeMenu_DecideCallback)__receiver,(crate::system::object::Object)::core::convert::Into::into(object),(::unity::IntPtr)::core::convert::Into::into(method))
106 }
107 }
108}
109
110#[cfg(feature = "app-versusviolationtypemenu")]
111impl<__T: IVersusViolationTypeMenu_DecideCallback> IVersusViolationTypeMenu_DecideCallbackMethods for __T {}
112
113#[cfg(feature = "app-versusviolationtypemenu")]
114impl VersusViolationTypeMenu_DecideCallback {
115 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
116 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
117 }
118}
119
120#[cfg(feature = "app-versusviolationtypemenu")]
121impl VersusViolationTypeMenu_DecideCallback {
122 #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` — overload selector"]
123 pub fn new(object: crate::system::object::Object, method: ::unity::IntPtr) -> Self {
124 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
125 panic!(
126 "{}
127::{}
128 failed to instantiate",
129 ::core::stringify!(VersusViolationTypeMenu_DecideCallback),
130 ::core::stringify!(new),
131 )
132 });
133 <Self as IVersusViolationTypeMenu_DecideCallbackMethods>::ctor(this, object, method);
134 this
135 }
136}
137
138#[cfg(feature = "app-versusviolationtypemenu")]
139impl VersusViolationTypeMenu {
140 #[doc = "`CreateBind(crate::app::procinst::ProcInst, crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent, crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback)` overload"]
141 pub fn create_bind(
142 super_: impl ::core::convert::Into<crate::app::procinst::ProcInst>,
143 menu_content: impl ::core::convert::Into<crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent>,
144 decide_callback: impl ::core::convert::Into<crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback>,
145 ) -> () {
146 unsafe {
147 ::unity::il2cpp_call!((::unity::module_base()+0x21bd620usize)as*mut u8,();
148(crate::app::procinst::ProcInst)::core::convert::Into::into(super_),(crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent)::core::convert::Into::into(menu_content),(crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback)::core::convert::Into::into(decide_callback))
149 }
150 }
151}
152
153#[cfg(feature = "app-versusviolationtypemenu")]
154pub trait IVersusViolationTypeMenuMethods: IVersusViolationTypeMenu {
155 #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent, crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback)` overload"]
156 fn ctor(
157 self,
158 menu_item_list: impl ::core::convert::Into<crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>>,
159 menu_content: impl ::core::convert::Into<crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent>,
160 decide_callback: impl ::core::convert::Into<crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback>,
161 ) -> () {
162 unsafe {
163 let __receiver =
164 <VersusViolationTypeMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
165 ::unity::il2cpp_call!((::unity::module_base()+0x21bd880usize)as*mut u8,();
166(VersusViolationTypeMenu)__receiver,(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>)::core::convert::Into::into(menu_item_list),(crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent)::core::convert::Into::into(menu_content),(crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback)::core::convert::Into::into(decide_callback))
167 }
168 }
169 #[doc = "`ACall()` overload"]
170 fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
171 unsafe {
172 let __receiver =
173 <VersusViolationTypeMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
174 {
175 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
176 let __vi = *__vt.get(50usize).unwrap_or_else(|| {
177 panic!(
178 "unity: virtual slot {}
179 out of range (vtable len {}
180) on the runtime class behind {}
181 (method `{}
182`)",
183 50usize,
184 __vt.len(),
185 <VersusViolationTypeMenu as ::unity::ClassIdentity>::NAME,
186 "ACall",
187 )
188 });
189 let __inner: extern "C" fn(VersusViolationTypeMenu, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
190 ::core::mem::transmute(__vi.method_ptr);
191 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
192 __inner(__receiver, __mi)
193 }
194 }
195 }
196 #[doc = "`BCall()` overload"]
197 fn b_call(self) -> crate::app::basicmenu::BasicMenu_Result {
198 unsafe {
199 let __receiver =
200 <VersusViolationTypeMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
201 {
202 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
203 let __vi = *__vt.get(51usize).unwrap_or_else(|| {
204 panic!(
205 "unity: virtual slot {}
206 out of range (vtable len {}
207) on the runtime class behind {}
208 (method `{}
209`)",
210 51usize,
211 __vt.len(),
212 <VersusViolationTypeMenu as ::unity::ClassIdentity>::NAME,
213 "BCall",
214 )
215 });
216 let __inner: extern "C" fn(VersusViolationTypeMenu, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
217 ::core::mem::transmute(__vi.method_ptr);
218 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
219 __inner(__receiver, __mi)
220 }
221 }
222 }
223}
224
225#[cfg(feature = "app-versusviolationtypemenu")]
226impl<__T: IVersusViolationTypeMenu> IVersusViolationTypeMenuMethods for __T {}
227
228#[cfg(feature = "app-versusviolationtypemenu")]
229impl VersusViolationTypeMenu {
230 pub fn create_bind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
231 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
232 }
233
234 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
235 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
236 }
237
238 pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
239 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
240 }
241
242 pub fn b_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
243 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
244 }
245}
246
247#[cfg(feature = "app-versusviolationtypemenu")]
248impl VersusViolationTypeMenu {
249 #[doc = "Direct (non-virtual) call to `VersusViolationTypeMenu`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
250 pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
251 let __mi = Self::a_call_method_info();
252 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
253 ::core::mem::transmute(__mi.method_ptr);
254 __inner(this.into(), ::core::option::Option::None)
255 }
256
257 #[doc = "Direct (non-virtual) call to `VersusViolationTypeMenu`'s own `BCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
258 pub unsafe fn b_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
259 let __mi = Self::b_call_method_info();
260 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
261 ::core::mem::transmute(__mi.method_ptr);
262 __inner(this.into(), ::core::option::Option::None)
263 }
264}
265
266#[cfg(feature = "app-versusviolationtypemenu")]
267impl VersusViolationTypeMenu {
268 #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent, crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback)` — overload selector"]
269 pub fn new(
270 menu_item_list: crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>,
271 menu_content: crate::app::versusviolationtypemenucontent::VersusViolationTypeMenuContent,
272 decide_callback: crate::app::versusviolationtypemenu::VersusViolationTypeMenu_DecideCallback,
273 ) -> Self {
274 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
275 panic!(
276 "{}
277::{}
278 failed to instantiate",
279 ::core::stringify!(VersusViolationTypeMenu),
280 ::core::stringify!(new),
281 )
282 });
283 <Self as IVersusViolationTypeMenuMethods>::ctor(this, menu_item_list, menu_content, decide_callback);
284 this
285 }
286}
287
288#[cfg(feature = "app-versusviolationtypemenu")]
289#[doc(hidden)]
290pub mod prelude {
291 pub use super::{
292 IVersusViolationTypeMenu, IVersusViolationTypeMenuMethods, IVersusViolationTypeMenu_DecideCallback,
293 IVersusViolationTypeMenu_DecideCallbackMethods, IVersusViolationTypeMenu_VersusViolationTypeMenuItem,
294 IVersusViolationTypeMenu_VersusViolationTypeMenuItemMethods, VersusViolationTypeMenu, VersusViolationTypeMenu_DecideCallback,
295 VersusViolationTypeMenu_VersusViolationTypeMenuItem,
296 };
297 #[cfg(feature = "app-basicmenu")]
298 pub use crate::app::basicmenu::IBasicMenuMethods;
299 #[cfg(feature = "app-basicmenuitem")]
300 pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
301 #[cfg(feature = "app-procinst")]
302 pub use crate::app::procinst::IProcInstMethods;
303 #[cfg(feature = "system-delegate")]
304 pub use crate::system::delegate::IDelegateMethods;
305 #[cfg(feature = "system-multicastdelegate")]
306 pub use crate::system::multicastdelegate::IMulticastDelegateMethods;
307 #[cfg(feature = "system-object")]
308 pub use crate::system::object::IObjectMethods;
309 pub use crate::{
310 app::{basicmenu::IBasicMenu, basicmenuitem::IBasicMenuItem, procinst::IProcInst},
311 system::{delegate::IDelegate, multicastdelegate::IMulticastDelegate, object::IObject},
312 };
313}