Skip to main content

engage/generated/app/
inventorypoolitemmenuitem.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-inventorypoolitemmenuitem-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            basicitemmenuitem::{BasicItemMenuItem, IBasicItemMenuItem},
11            basicmenuitem::{BasicMenuItem, IBasicMenuItem},
12        },
13        system::{
14            object::{IObject, Object},
15            r#enum::{Enum, IEnum},
16            valuetype::{IValueType, ValueType},
17        },
18    };
19
20    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/inventorypoolitemmenuitem/InventoryPoolItemMenuItem.md"))]
21    #[::unity::class(namespace = "App", name = "InventoryPoolItemMenuItem")]
22    #[parent(crate::app::basicitemmenuitem::BasicItemMenuItem)]
23    pub struct InventoryPoolItemMenuItem {
24        #[offset(100)]
25        #[rename(name = "m_OwnerItemIndex")]
26        pub m_owner_item_index: i32,
27        #[offset(104)]
28        #[rename(name = "m_Unit")]
29        pub m_unit: crate::app::unit::Unit,
30        #[offset(112)]
31        #[rename(name = "m_SortIndex")]
32        pub m_sort_index: i32,
33    }
34
35    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/inventorypoolitemmenuitem/InventoryPoolItemMenuItem_PoolItemKind.md"))]
36    #[repr(C)]
37    #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
38    pub struct InventoryPoolItemMenuItem_PoolItemKind {
39        pub value: i32,
40    }
41    impl ::unity::ClassIdentity for InventoryPoolItemMenuItem_PoolItemKind {
42        const NAME: &'static str = "InventoryPoolItemMenuItem.PoolItemKind";
43        const NAMESPACE: &'static str = "App";
44
45        fn class() -> ::unity::Class {
46            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
47            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
48        }
49    }
50    impl ::unity::IlType for InventoryPoolItemMenuItem_PoolItemKind {
51        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
52            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
53        }
54    }
55    impl InventoryPoolItemMenuItem_PoolItemKind {
56        pub fn normal() -> Self {
57            Self { value: 0 }
58        }
59
60        pub fn none() -> Self {
61            Self { value: 1 }
62        }
63
64        pub fn blank() -> Self {
65            Self { value: 2 }
66        }
67    }
68}
69
70#[cfg(feature = "app-inventorypoolitemmenuitem-types")]
71pub use __types::*;
72
73#[cfg(feature = "app-inventorypoolitemmenuitem")]
74pub trait IInventoryPoolItemMenuItemMethods: IInventoryPoolItemMenuItem {
75    #[doc = "`.ctor(crate::app::unit::Unit, i32, i32)` overload"]
76    fn ctor(
77        self,
78        unit: impl ::core::convert::Into<crate::app::unit::Unit>,
79        owner_item_index: impl ::core::convert::Into<i32>,
80        sort_index: impl ::core::convert::Into<i32>,
81    ) -> () {
82        unsafe {
83            let __receiver =
84                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
85            ::unity::il2cpp_call!((::unity::module_base()+0x2795df0usize)as*mut u8,();
86(InventoryPoolItemMenuItem)__receiver,(crate::app::unit::Unit)::core::convert::Into::into(unit),(i32)::core::convert::Into::into(owner_item_index),(i32)::core::convert::Into::into(sort_index))
87        }
88    }
89    #[doc = "`BuildAttribute()` overload"]
90    fn build_attribute(self) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
91        unsafe {
92            let __receiver =
93                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
94            {
95                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
96                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
97                    panic!(
98                        "unity: virtual slot {}
99 out of range (vtable len {}
100) on the runtime class behind {}
101 (method `{}
102`)",
103                        8usize,
104                        __vt.len(),
105                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
106                        "BuildAttribute",
107                    )
108                });
109                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
110                    ::core::mem::transmute(__vi.method_ptr);
111                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
112                __inner(__receiver, __mi)
113            }
114        }
115    }
116    #[doc = "`IsEffective()` overload"]
117    fn is_effective(self) -> bool {
118        unsafe {
119            let __receiver =
120                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
121            {
122                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
123                let __vi = *__vt.get(33usize).unwrap_or_else(|| {
124                    panic!(
125                        "unity: virtual slot {}
126 out of range (vtable len {}
127) on the runtime class behind {}
128 (method `{}
129`)",
130                        33usize,
131                        __vt.len(),
132                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
133                        "IsEffective",
134                    )
135                });
136                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__vi.method_ptr);
137                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
138                __inner(__receiver, __mi)
139            }
140        }
141    }
142    #[doc = "`ACall()` overload"]
143    fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
144        unsafe {
145            let __receiver =
146                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
147            {
148                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
149                let __vi = *__vt.get(18usize).unwrap_or_else(|| {
150                    panic!(
151                        "unity: virtual slot {}
152 out of range (vtable len {}
153) on the runtime class behind {}
154 (method `{}
155`)",
156                        18usize,
157                        __vt.len(),
158                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
159                        "ACall",
160                    )
161                });
162                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
163                    ::core::mem::transmute(__vi.method_ptr);
164                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
165                __inner(__receiver, __mi)
166            }
167        }
168    }
169    #[doc = "`BCall()` overload"]
170    fn b_call(self) -> crate::app::basicmenu::BasicMenu_Result {
171        unsafe {
172            let __receiver =
173                <InventoryPoolItemMenuItem 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(19usize).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                        19usize,
184                        __vt.len(),
185                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
186                        "BCall",
187                    )
188                });
189                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::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 = "`CustomCall()` overload"]
197    fn custom_call(self) -> crate::app::basicmenu::BasicMenu_Result {
198        unsafe {
199            let __receiver =
200                <InventoryPoolItemMenuItem 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(26usize).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                        26usize,
211                        __vt.len(),
212                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
213                        "CustomCall",
214                    )
215                });
216                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::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    #[doc = "`OnSelect()` overload"]
224    fn on_select(self) -> () {
225        unsafe {
226            let __receiver =
227                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
228            {
229                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
230                let __vi = *__vt.get(12usize).unwrap_or_else(|| {
231                    panic!(
232                        "unity: virtual slot {}
233 out of range (vtable len {}
234) on the runtime class behind {}
235 (method `{}
236`)",
237                        12usize,
238                        __vt.len(),
239                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
240                        "OnSelect",
241                    )
242                });
243                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
244                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
245                __inner(__receiver, __mi)
246            }
247        }
248    }
249    #[doc = "`GetUnitItem()` overload"]
250    fn get_unit_item(self) -> crate::app::unititem::UnitItem {
251        unsafe {
252            let __receiver =
253                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
254            {
255                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
256                let __vi = *__vt.get(27usize).unwrap_or_else(|| {
257                    panic!(
258                        "unity: virtual slot {}
259 out of range (vtable len {}
260) on the runtime class behind {}
261 (method `{}
262`)",
263                        27usize,
264                        __vt.len(),
265                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
266                        "GetUnitItem",
267                    )
268                });
269                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> crate::app::unititem::UnitItem =
270                    ::core::mem::transmute(__vi.method_ptr);
271                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
272                __inner(__receiver, __mi)
273            }
274        }
275    }
276    #[doc = "`GetUnit()` overload"]
277    fn get_unit(self) -> crate::app::unit::Unit {
278        unsafe {
279            let __receiver =
280                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
281            {
282                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
283                let __vi = *__vt.get(28usize).unwrap_or_else(|| {
284                    panic!(
285                        "unity: virtual slot {}
286 out of range (vtable len {}
287) on the runtime class behind {}
288 (method `{}
289`)",
290                        28usize,
291                        __vt.len(),
292                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
293                        "GetUnit",
294                    )
295                });
296                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> crate::app::unit::Unit =
297                    ::core::mem::transmute(__vi.method_ptr);
298                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
299                __inner(__receiver, __mi)
300            }
301        }
302    }
303    #[doc = "`GetRecieverUnit()` overload"]
304    fn get_reciever_unit(self) -> crate::app::unit::Unit {
305        unsafe {
306            let __receiver =
307                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
308            {
309                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
310                let __vi = *__vt.get(29usize).unwrap_or_else(|| {
311                    panic!(
312                        "unity: virtual slot {}
313 out of range (vtable len {}
314) on the runtime class behind {}
315 (method `{}
316`)",
317                        29usize,
318                        __vt.len(),
319                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
320                        "GetRecieverUnit",
321                    )
322                });
323                let __inner: extern "C" fn(InventoryPoolItemMenuItem, ::unity::OptionalMethod) -> crate::app::unit::Unit =
324                    ::core::mem::transmute(__vi.method_ptr);
325                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
326                __inner(__receiver, __mi)
327            }
328        }
329    }
330    #[doc = "`GetSortIndex()` overload"]
331    fn get_sort_index(self) -> i32 {
332        unsafe {
333            let __receiver =
334                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
335            ::unity::il2cpp_call!((::unity::module_base()+0x279bfc0usize)as*mut u8,i32;
336(InventoryPoolItemMenuItem)__receiver)
337        }
338    }
339    #[doc = "`GetMenuItemKind()` overload"]
340    fn get_menu_item_kind(self) -> crate::app::inventorypoolitemmenuitem::InventoryPoolItemMenuItem_PoolItemKind {
341        unsafe {
342            let __receiver =
343                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
344            {
345                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
346                let __vi = *__vt.get(34usize).unwrap_or_else(|| {
347                    panic!(
348                        "unity: virtual slot {}
349 out of range (vtable len {}
350) on the runtime class behind {}
351 (method `{}
352`)",
353                        34usize,
354                        __vt.len(),
355                        <InventoryPoolItemMenuItem as ::unity::ClassIdentity>::NAME,
356                        "GetMenuItemKind",
357                    )
358                });
359                let __inner: extern "C" fn(
360                    InventoryPoolItemMenuItem,
361                    ::unity::OptionalMethod,
362                ) -> crate::app::inventorypoolitemmenuitem::InventoryPoolItemMenuItem_PoolItemKind = ::core::mem::transmute(__vi.method_ptr);
363                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
364                __inner(__receiver, __mi)
365            }
366        }
367    }
368    #[doc = "`AddSelection()` overload"]
369    fn add_selection(self) -> () {
370        unsafe {
371            let __receiver =
372                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
373            ::unity::il2cpp_call!((::unity::module_base()+0x279bfe0usize)as*mut u8,();
374(InventoryPoolItemMenuItem)__receiver)
375        }
376    }
377    #[doc = "`HoldSelection()` overload"]
378    fn hold_selection(self) -> () {
379        unsafe {
380            let __receiver =
381                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
382            ::unity::il2cpp_call!((::unity::module_base()+0x2798100usize)as*mut u8,();
383(InventoryPoolItemMenuItem)__receiver)
384        }
385    }
386    #[doc = "`GoToTrade()` overload"]
387    fn go_to_trade(self) -> crate::app::basicmenu::BasicMenu_Result {
388        unsafe {
389            let __receiver =
390                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
391            ::unity::il2cpp_call!((::unity::module_base()+0x279a030usize)as*mut u8,crate::app::basicmenu::BasicMenu_Result;
392(InventoryPoolItemMenuItem)__receiver)
393        }
394    }
395    #[doc = "`GoToSubMenu()` overload"]
396    fn go_to_sub_menu(self) -> crate::app::basicmenu::BasicMenu_Result {
397        unsafe {
398            let __receiver =
399                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
400            ::unity::il2cpp_call!((::unity::module_base()+0x279aae0usize)as*mut u8,crate::app::basicmenu::BasicMenu_Result;
401(InventoryPoolItemMenuItem)__receiver)
402        }
403    }
404    #[doc = "`DirectTrade()` overload"]
405    fn direct_trade(self) -> crate::app::basicmenu::BasicMenu_Result {
406        unsafe {
407            let __receiver =
408                <InventoryPoolItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
409            ::unity::il2cpp_call!((::unity::module_base()+0x279a270usize)as*mut u8,crate::app::basicmenu::BasicMenu_Result;
410(InventoryPoolItemMenuItem)__receiver)
411        }
412    }
413}
414
415#[cfg(feature = "app-inventorypoolitemmenuitem")]
416impl<__T: IInventoryPoolItemMenuItem> IInventoryPoolItemMenuItemMethods for __T {}
417
418#[cfg(feature = "app-inventorypoolitemmenuitem")]
419impl InventoryPoolItemMenuItem {
420    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
421        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
422    }
423
424    pub fn build_attribute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
425        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
426    }
427
428    pub fn is_effective_method_info() -> &'static ::unity::il2cpp::MethodInfo {
429        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
430    }
431
432    pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
433        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
434    }
435
436    pub fn b_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
437        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
438    }
439
440    pub fn custom_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
441        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
442    }
443
444    pub fn on_select_method_info() -> &'static ::unity::il2cpp::MethodInfo {
445        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
446    }
447
448    pub fn get_unit_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
449        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
450    }
451
452    pub fn get_unit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
453        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
454    }
455
456    pub fn get_reciever_unit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
457        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
458    }
459
460    pub fn get_sort_index_method_info() -> &'static ::unity::il2cpp::MethodInfo {
461        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
462    }
463
464    pub fn get_menu_item_kind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
465        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
466    }
467
468    pub fn add_selection_method_info() -> &'static ::unity::il2cpp::MethodInfo {
469        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
470    }
471
472    pub fn hold_selection_method_info() -> &'static ::unity::il2cpp::MethodInfo {
473        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
474    }
475
476    pub fn go_to_trade_method_info() -> &'static ::unity::il2cpp::MethodInfo {
477        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
478    }
479
480    pub fn go_to_sub_menu_method_info() -> &'static ::unity::il2cpp::MethodInfo {
481        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
482    }
483
484    pub fn direct_trade_method_info() -> &'static ::unity::il2cpp::MethodInfo {
485        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
486    }
487}
488
489#[cfg(feature = "app-inventorypoolitemmenuitem")]
490impl InventoryPoolItemMenuItem {
491    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `BuildAttribute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
492    pub unsafe fn build_attribute(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
493        let __mi = Self::build_attribute_method_info();
494        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
495            ::core::mem::transmute(__mi.method_ptr);
496        __inner(this.into(), ::core::option::Option::None)
497    }
498
499    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `IsEffective`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
500    pub unsafe fn is_effective(this: impl ::core::convert::Into<::unity::IlInstance>) -> bool {
501        let __mi = Self::is_effective_method_info();
502        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__mi.method_ptr);
503        __inner(this.into(), ::core::option::Option::None)
504    }
505
506    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
507    pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
508        let __mi = Self::a_call_method_info();
509        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
510            ::core::mem::transmute(__mi.method_ptr);
511        __inner(this.into(), ::core::option::Option::None)
512    }
513
514    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `BCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
515    pub unsafe fn b_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
516        let __mi = Self::b_call_method_info();
517        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
518            ::core::mem::transmute(__mi.method_ptr);
519        __inner(this.into(), ::core::option::Option::None)
520    }
521
522    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `CustomCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
523    pub unsafe fn custom_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
524        let __mi = Self::custom_call_method_info();
525        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
526            ::core::mem::transmute(__mi.method_ptr);
527        __inner(this.into(), ::core::option::Option::None)
528    }
529
530    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `OnSelect`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
531    pub unsafe fn on_select(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
532        let __mi = Self::on_select_method_info();
533        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
534        __inner(this.into(), ::core::option::Option::None)
535    }
536
537    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `GetUnitItem`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
538    pub unsafe fn get_unit_item(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unititem::UnitItem {
539        let __mi = Self::get_unit_item_method_info();
540        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unititem::UnitItem =
541            ::core::mem::transmute(__mi.method_ptr);
542        __inner(this.into(), ::core::option::Option::None)
543    }
544
545    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `GetUnit`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
546    pub unsafe fn get_unit(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unit::Unit {
547        let __mi = Self::get_unit_method_info();
548        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unit::Unit = ::core::mem::transmute(__mi.method_ptr);
549        __inner(this.into(), ::core::option::Option::None)
550    }
551
552    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `GetRecieverUnit`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
553    pub unsafe fn get_reciever_unit(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unit::Unit {
554        let __mi = Self::get_reciever_unit_method_info();
555        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unit::Unit = ::core::mem::transmute(__mi.method_ptr);
556        __inner(this.into(), ::core::option::Option::None)
557    }
558
559    #[doc = "Direct (non-virtual) call to `InventoryPoolItemMenuItem`'s own `GetMenuItemKind`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
560    pub unsafe fn get_menu_item_kind(
561        this: impl ::core::convert::Into<::unity::IlInstance>,
562    ) -> crate::app::inventorypoolitemmenuitem::InventoryPoolItemMenuItem_PoolItemKind {
563        let __mi = Self::get_menu_item_kind_method_info();
564        let __inner: extern "C" fn(
565            ::unity::IlInstance,
566            ::unity::OptionalMethod,
567        ) -> crate::app::inventorypoolitemmenuitem::InventoryPoolItemMenuItem_PoolItemKind = ::core::mem::transmute(__mi.method_ptr);
568        __inner(this.into(), ::core::option::Option::None)
569    }
570}
571
572#[cfg(feature = "app-inventorypoolitemmenuitem")]
573impl InventoryPoolItemMenuItem {
574    #[doc = "`.ctor(crate::app::unit::Unit, i32, i32)` — overload selector"]
575    pub fn new(unit: crate::app::unit::Unit, owner_item_index: i32, sort_index: i32) -> Self {
576        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
577            panic!(
578                "{}
579::{}
580 failed to instantiate",
581                ::core::stringify!(InventoryPoolItemMenuItem),
582                ::core::stringify!(new),
583            )
584        });
585        <Self as IInventoryPoolItemMenuItemMethods>::ctor(this, unit, owner_item_index, sort_index);
586        this
587    }
588}
589
590#[cfg(feature = "app-inventorypoolitemmenuitem")]
591#[doc(hidden)]
592pub mod prelude {
593    pub use super::{
594        IInventoryPoolItemMenuItem, IInventoryPoolItemMenuItemMethods, InventoryPoolItemMenuItem, InventoryPoolItemMenuItem_PoolItemKind,
595    };
596    #[cfg(feature = "app-basicitemmenuitem")]
597    pub use crate::app::basicitemmenuitem::IBasicItemMenuItemMethods;
598    #[cfg(feature = "app-basicmenuitem")]
599    pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
600    #[cfg(feature = "system-object")]
601    pub use crate::system::object::IObjectMethods;
602    #[cfg(feature = "system-enum")]
603    pub use crate::system::r#enum::IEnumMethods;
604    #[cfg(feature = "system-valuetype")]
605    pub use crate::system::valuetype::IValueTypeMethods;
606    pub use crate::{
607        app::{basicitemmenuitem::IBasicItemMenuItem, basicmenuitem::IBasicMenuItem},
608        system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
609    };
610}