Skip to main content

engage/generated/app/
musclestartmenu.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-musclestartmenu-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/musclestartmenu/MuscleStartMenu.md"))]
22    #[::unity::class(namespace = "App", name = "MuscleStartMenu")]
23    #[parent(crate::app::basicmenu::BasicMenu)]
24    pub struct MuscleStartMenu {
25        #[offset(200)]
26        #[rename(name = "m_DecideEventHandler")]
27        pub m_decide_event_handler: crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler,
28    }
29
30    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/musclestartmenu/MuscleStartMenu_DecideEventHandler.md"))]
31    #[::unity::class(namespace = "App", name = "MuscleStartMenu.DecideEventHandler")]
32    #[parent(crate::system::multicastdelegate::MulticastDelegate)]
33    pub struct MuscleStartMenu_DecideEventHandler {}
34
35    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/musclestartmenu/MuscleStartMenu_MuscleStartMenuItem.md"))]
36    #[::unity::class(namespace = "App", name = "MuscleStartMenu.MuscleStartMenuItem")]
37    #[parent(crate::app::basicmenuitem::BasicMenuItem)]
38    pub struct MuscleStartMenu_MuscleStartMenuItem {
39        #[offset(104)]
40        #[rename(name = "m_TitleText")]
41        pub m_title_text: crate::tm_pro::textmeshprougui::TextMeshProUGUI,
42        #[offset(112)]
43        #[rename(name = "m_CommentText")]
44        pub m_comment_text: crate::tm_pro::textmeshprougui::TextMeshProUGUI,
45        #[offset(120)]
46        #[rename(name = "m_RuleText")]
47        pub m_rule_text: crate::tm_pro::textmeshprougui::TextMeshProUGUI,
48        #[offset(128)]
49        #[rename(name = "m_EffectText")]
50        pub m_effect_text: crate::tm_pro::textmeshprougui::TextMeshProUGUI,
51        #[offset(136)]
52        #[rename(name = "m_ID")]
53        pub m_id: ::unity::Il2CppString,
54        #[offset(144)]
55        #[rename(name = "m_ItemName")]
56        pub m_item_name: ::unity::Il2CppString,
57        #[offset(152)]
58        #[rename(name = "m_Title")]
59        pub m_title: ::unity::Il2CppString,
60        #[offset(160)]
61        #[rename(name = "m_Comment")]
62        pub m_comment: ::unity::Il2CppString,
63        #[offset(168)]
64        #[rename(name = "m_Rule")]
65        pub m_rule: ::unity::Il2CppString,
66        #[offset(176)]
67        #[rename(name = "m_Effect")]
68        pub m_effect: ::unity::Il2CppString,
69    }
70}
71
72#[cfg(feature = "app-musclestartmenu-types")]
73pub use __types::*;
74
75#[cfg(feature = "app-musclestartmenu")]
76impl MuscleStartMenu {
77    #[doc = "`CreateBind(crate::app::procinst::ProcInst, i32, crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler)` overload"]
78    pub fn create_bind(
79        super_: impl ::core::convert::Into<crate::app::procinst::ProcInst>,
80        initial_select: impl ::core::convert::Into<i32>,
81        decide_event_handler: impl ::core::convert::Into<crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler>,
82    ) -> () {
83        unsafe {
84            ::unity::il2cpp_call!((::unity::module_base()+0x2dd6030usize)as*mut u8,();
85(crate::app::procinst::ProcInst)::core::convert::Into::into(super_),(i32)::core::convert::Into::into(initial_select),(crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler)::core::convert::Into::into(decide_event_handler))
86        }
87    }
88}
89
90#[cfg(feature = "app-musclestartmenu")]
91pub trait IMuscleStartMenuMethods: IMuscleStartMenu {
92    #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::basicmenucontent::BasicMenuContent, crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler)` overload"]
93    fn ctor(
94        self,
95        menu_item_list: impl ::core::convert::Into<crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>>,
96        menu_content: impl ::core::convert::Into<crate::app::basicmenucontent::BasicMenuContent>,
97        decide_event_handler: impl ::core::convert::Into<crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler>,
98    ) -> () {
99        unsafe {
100            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
101            ::unity::il2cpp_call!((::unity::module_base()+0x2dd5ff0usize)as*mut u8,();
102(MuscleStartMenu)__receiver,(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>)::core::convert::Into::into(menu_item_list),(crate::app::basicmenucontent::BasicMenuContent)::core::convert::Into::into(menu_content),(crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler)::core::convert::Into::into(decide_event_handler))
103        }
104    }
105    #[doc = "`GetName()` overload"]
106    fn get_name(self) -> ::unity::Il2CppString {
107        unsafe {
108            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
109            {
110                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
111                let __vi = *__vt.get(30usize).unwrap_or_else(|| {
112                    panic!(
113                        "unity: virtual slot {}
114 out of range (vtable len {}
115) on the runtime class behind {}
116 (method `{}
117`)",
118                        30usize,
119                        __vt.len(),
120                        <MuscleStartMenu as ::unity::ClassIdentity>::NAME,
121                        "GetName",
122                    )
123                });
124                let __inner: extern "C" fn(MuscleStartMenu, ::unity::OptionalMethod) -> ::unity::Il2CppString =
125                    ::core::mem::transmute(__vi.method_ptr);
126                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
127                __inner(__receiver, __mi)
128            }
129        }
130    }
131    #[doc = "`OnClose()` overload"]
132    fn on_close(self) -> () {
133        unsafe {
134            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
135            {
136                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
137                let __vi = *__vt.get(26usize).unwrap_or_else(|| {
138                    panic!(
139                        "unity: virtual slot {}
140 out of range (vtable len {}
141) on the runtime class behind {}
142 (method `{}
143`)",
144                        26usize,
145                        __vt.len(),
146                        <MuscleStartMenu as ::unity::ClassIdentity>::NAME,
147                        "OnClose",
148                    )
149                });
150                let __inner: extern "C" fn(MuscleStartMenu, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
151                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
152                __inner(__receiver, __mi)
153            }
154        }
155    }
156    #[doc = "`ACall()` overload"]
157    fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
158        unsafe {
159            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
160            {
161                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
162                let __vi = *__vt.get(50usize).unwrap_or_else(|| {
163                    panic!(
164                        "unity: virtual slot {}
165 out of range (vtable len {}
166) on the runtime class behind {}
167 (method `{}
168`)",
169                        50usize,
170                        __vt.len(),
171                        <MuscleStartMenu as ::unity::ClassIdentity>::NAME,
172                        "ACall",
173                    )
174                });
175                let __inner: extern "C" fn(MuscleStartMenu, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
176                    ::core::mem::transmute(__vi.method_ptr);
177                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
178                __inner(__receiver, __mi)
179            }
180        }
181    }
182    #[doc = "`BCall()` overload"]
183    fn b_call(self) -> crate::app::basicmenu::BasicMenu_Result {
184        unsafe {
185            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
186            {
187                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
188                let __vi = *__vt.get(51usize).unwrap_or_else(|| {
189                    panic!(
190                        "unity: virtual slot {}
191 out of range (vtable len {}
192) on the runtime class behind {}
193 (method `{}
194`)",
195                        51usize,
196                        __vt.len(),
197                        <MuscleStartMenu as ::unity::ClassIdentity>::NAME,
198                        "BCall",
199                    )
200                });
201                let __inner: extern "C" fn(MuscleStartMenu, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
202                    ::core::mem::transmute(__vi.method_ptr);
203                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
204                __inner(__receiver, __mi)
205            }
206        }
207    }
208    #[doc = "`XCall()` overload"]
209    fn x_call(self) -> crate::app::basicmenu::BasicMenu_Result {
210        unsafe {
211            let __receiver = <MuscleStartMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
212            {
213                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
214                let __vi = *__vt.get(52usize).unwrap_or_else(|| {
215                    panic!(
216                        "unity: virtual slot {}
217 out of range (vtable len {}
218) on the runtime class behind {}
219 (method `{}
220`)",
221                        52usize,
222                        __vt.len(),
223                        <MuscleStartMenu as ::unity::ClassIdentity>::NAME,
224                        "XCall",
225                    )
226                });
227                let __inner: extern "C" fn(MuscleStartMenu, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
228                    ::core::mem::transmute(__vi.method_ptr);
229                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
230                __inner(__receiver, __mi)
231            }
232        }
233    }
234}
235
236#[cfg(feature = "app-musclestartmenu")]
237impl<__T: IMuscleStartMenu> IMuscleStartMenuMethods for __T {}
238
239#[cfg(feature = "app-musclestartmenu")]
240impl MuscleStartMenu {
241    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
242        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
243    }
244
245    pub fn create_bind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
246        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
247    }
248
249    pub fn get_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
250        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
251    }
252
253    pub fn on_close_method_info() -> &'static ::unity::il2cpp::MethodInfo {
254        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
255    }
256
257    pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
258        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
259    }
260
261    pub fn b_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
262        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
263    }
264
265    pub fn x_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
266        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
267    }
268}
269
270#[cfg(feature = "app-musclestartmenu")]
271impl MuscleStartMenu {
272    #[doc = "Direct (non-virtual) call to `MuscleStartMenu`'s own `GetName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
273    pub unsafe fn get_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
274        let __mi = Self::get_name_method_info();
275        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
276        __inner(this.into(), ::core::option::Option::None)
277    }
278
279    #[doc = "Direct (non-virtual) call to `MuscleStartMenu`'s own `OnClose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
280    pub unsafe fn on_close(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
281        let __mi = Self::on_close_method_info();
282        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
283        __inner(this.into(), ::core::option::Option::None)
284    }
285
286    #[doc = "Direct (non-virtual) call to `MuscleStartMenu`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
287    pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
288        let __mi = Self::a_call_method_info();
289        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
290            ::core::mem::transmute(__mi.method_ptr);
291        __inner(this.into(), ::core::option::Option::None)
292    }
293
294    #[doc = "Direct (non-virtual) call to `MuscleStartMenu`'s own `BCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
295    pub unsafe fn b_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
296        let __mi = Self::b_call_method_info();
297        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
298            ::core::mem::transmute(__mi.method_ptr);
299        __inner(this.into(), ::core::option::Option::None)
300    }
301
302    #[doc = "Direct (non-virtual) call to `MuscleStartMenu`'s own `XCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
303    pub unsafe fn x_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
304        let __mi = Self::x_call_method_info();
305        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
306            ::core::mem::transmute(__mi.method_ptr);
307        __inner(this.into(), ::core::option::Option::None)
308    }
309}
310
311#[cfg(feature = "app-musclestartmenu")]
312impl MuscleStartMenu {
313    #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::basicmenucontent::BasicMenuContent, crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler)` — overload selector"]
314    pub fn new(
315        menu_item_list: crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>,
316        menu_content: crate::app::basicmenucontent::BasicMenuContent,
317        decide_event_handler: crate::app::musclestartmenu::MuscleStartMenu_DecideEventHandler,
318    ) -> Self {
319        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
320            panic!(
321                "{}
322::{}
323 failed to instantiate",
324                ::core::stringify!(MuscleStartMenu),
325                ::core::stringify!(new),
326            )
327        });
328        <Self as IMuscleStartMenuMethods>::ctor(this, menu_item_list, menu_content, decide_event_handler);
329        this
330    }
331}
332
333#[cfg(feature = "app-musclestartmenu")]
334pub trait IMuscleStartMenu_DecideEventHandlerMethods: IMuscleStartMenu_DecideEventHandler {
335    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` overload"]
336    fn ctor(self, object: impl ::core::convert::Into<crate::system::object::Object>, method: impl ::core::convert::Into<::unity::IntPtr>) -> () {
337        unsafe {
338            let __receiver =
339                <MuscleStartMenu_DecideEventHandler as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
340            ::unity::il2cpp_call!((::unity::module_base()+0x2092840usize)as*mut u8,();
341(MuscleStartMenu_DecideEventHandler)__receiver,(crate::system::object::Object)::core::convert::Into::into(object),(::unity::IntPtr)::core::convert::Into::into(method))
342        }
343    }
344    #[doc = "`Invoke(crate::app::muscle_exercise::r#type::Type)` overload"]
345    fn invoke(self, result: impl ::core::convert::Into<crate::app::muscle_exercise::r#type::Type>) -> () {
346        unsafe {
347            let __receiver =
348                <MuscleStartMenu_DecideEventHandler as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
349            {
350                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
351                let __vi = *__vt.get(13usize).unwrap_or_else(|| {
352                    panic!(
353                        "unity: virtual slot {}
354 out of range (vtable len {}
355) on the runtime class behind {}
356 (method `{}
357`)",
358                        13usize,
359                        __vt.len(),
360                        <MuscleStartMenu_DecideEventHandler as ::unity::ClassIdentity>::NAME,
361                        "Invoke",
362                    )
363                });
364                let __inner: extern "C" fn(
365                    MuscleStartMenu_DecideEventHandler,
366                    crate::app::muscle_exercise::r#type::Type,
367                    ::unity::OptionalMethod,
368                ) -> () = ::core::mem::transmute(__vi.method_ptr);
369                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
370                __inner(__receiver, ::core::convert::Into::into(result), __mi)
371            }
372        }
373    }
374}
375
376#[cfg(feature = "app-musclestartmenu")]
377impl<__T: IMuscleStartMenu_DecideEventHandler> IMuscleStartMenu_DecideEventHandlerMethods for __T {}
378
379#[cfg(feature = "app-musclestartmenu")]
380impl MuscleStartMenu_DecideEventHandler {
381    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
382        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
383    }
384
385    pub fn invoke_method_info() -> &'static ::unity::il2cpp::MethodInfo {
386        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
387    }
388}
389
390#[cfg(feature = "app-musclestartmenu")]
391impl MuscleStartMenu_DecideEventHandler {
392    #[doc = "Direct (non-virtual) call to `MuscleStartMenu_DecideEventHandler`'s own `Invoke`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
393    pub unsafe fn invoke(this: impl ::core::convert::Into<::unity::IlInstance>, result: crate::app::muscle_exercise::r#type::Type) -> () {
394        let __mi = Self::invoke_method_info();
395        let __inner: extern "C" fn(::unity::IlInstance, crate::app::muscle_exercise::r#type::Type, ::unity::OptionalMethod) -> () =
396            ::core::mem::transmute(__mi.method_ptr);
397        __inner(this.into(), result, ::core::option::Option::None)
398    }
399}
400
401#[cfg(feature = "app-musclestartmenu")]
402impl MuscleStartMenu_DecideEventHandler {
403    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` — overload selector"]
404    pub fn new(object: crate::system::object::Object, method: ::unity::IntPtr) -> Self {
405        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
406            panic!(
407                "{}
408::{}
409 failed to instantiate",
410                ::core::stringify!(MuscleStartMenu_DecideEventHandler),
411                ::core::stringify!(new),
412            )
413        });
414        <Self as IMuscleStartMenu_DecideEventHandlerMethods>::ctor(this, object, method);
415        this
416    }
417}
418
419#[cfg(feature = "app-musclestartmenu")]
420pub trait IMuscleStartMenu_MuscleStartMenuItemMethods: IMuscleStartMenu_MuscleStartMenuItem {
421    #[doc = "`.ctor(crate::unity_engine::gameobject::GameObject, ::unity::Il2CppString)` overload"]
422    fn ctor(
423        self,
424        set_menu: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
425        id: impl ::core::convert::Into<::unity::Il2CppString>,
426    ) -> () {
427        unsafe {
428            let __receiver = <MuscleStartMenu_MuscleStartMenuItem as ::unity::FromIlInstance>::from_il_instance(
429                <Self as ::unity::SystemObject>::as_instance(self),
430            );
431            ::unity::il2cpp_call!((::unity::module_base()+0x2092b60usize)as*mut u8,();
432(MuscleStartMenu_MuscleStartMenuItem)__receiver,(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(set_menu),(::unity::Il2CppString)::core::convert::Into::into(id))
433        }
434    }
435    #[doc = "`BuildAttribute()` overload"]
436    fn build_attribute(self) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
437        unsafe {
438            let __receiver = <MuscleStartMenu_MuscleStartMenuItem as ::unity::FromIlInstance>::from_il_instance(
439                <Self as ::unity::SystemObject>::as_instance(self),
440            );
441            {
442                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
443                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
444                    panic!(
445                        "unity: virtual slot {}
446 out of range (vtable len {}
447) on the runtime class behind {}
448 (method `{}
449`)",
450                        8usize,
451                        __vt.len(),
452                        <MuscleStartMenu_MuscleStartMenuItem as ::unity::ClassIdentity>::NAME,
453                        "BuildAttribute",
454                    )
455                });
456                let __inner: extern "C" fn(
457                    MuscleStartMenu_MuscleStartMenuItem,
458                    ::unity::OptionalMethod,
459                ) -> crate::app::basicmenuitem::BasicMenuItem_Attribute = ::core::mem::transmute(__vi.method_ptr);
460                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
461                __inner(__receiver, __mi)
462            }
463        }
464    }
465    #[doc = "`GetName()` overload"]
466    fn get_name(self) -> ::unity::Il2CppString {
467        unsafe {
468            let __receiver = <MuscleStartMenu_MuscleStartMenuItem as ::unity::FromIlInstance>::from_il_instance(
469                <Self as ::unity::SystemObject>::as_instance(self),
470            );
471            {
472                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
473                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
474                    panic!(
475                        "unity: virtual slot {}
476 out of range (vtable len {}
477) on the runtime class behind {}
478 (method `{}
479`)",
480                        4usize,
481                        __vt.len(),
482                        <MuscleStartMenu_MuscleStartMenuItem as ::unity::ClassIdentity>::NAME,
483                        "GetName",
484                    )
485                });
486                let __inner: extern "C" fn(MuscleStartMenu_MuscleStartMenuItem, ::unity::OptionalMethod) -> ::unity::Il2CppString =
487                    ::core::mem::transmute(__vi.method_ptr);
488                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
489                __inner(__receiver, __mi)
490            }
491        }
492    }
493    #[doc = "`OnSelect()` overload"]
494    fn on_select(self) -> () {
495        unsafe {
496            let __receiver = <MuscleStartMenu_MuscleStartMenuItem as ::unity::FromIlInstance>::from_il_instance(
497                <Self as ::unity::SystemObject>::as_instance(self),
498            );
499            {
500                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
501                let __vi = *__vt.get(12usize).unwrap_or_else(|| {
502                    panic!(
503                        "unity: virtual slot {}
504 out of range (vtable len {}
505) on the runtime class behind {}
506 (method `{}
507`)",
508                        12usize,
509                        __vt.len(),
510                        <MuscleStartMenu_MuscleStartMenuItem as ::unity::ClassIdentity>::NAME,
511                        "OnSelect",
512                    )
513                });
514                let __inner: extern "C" fn(MuscleStartMenu_MuscleStartMenuItem, ::unity::OptionalMethod) -> () =
515                    ::core::mem::transmute(__vi.method_ptr);
516                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
517                __inner(__receiver, __mi)
518            }
519        }
520    }
521}
522
523#[cfg(feature = "app-musclestartmenu")]
524impl<__T: IMuscleStartMenu_MuscleStartMenuItem> IMuscleStartMenu_MuscleStartMenuItemMethods for __T {}
525
526#[cfg(feature = "app-musclestartmenu")]
527impl MuscleStartMenu_MuscleStartMenuItem {
528    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
529        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
530    }
531
532    pub fn build_attribute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
533        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
534    }
535
536    pub fn get_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
537        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
538    }
539
540    pub fn on_select_method_info() -> &'static ::unity::il2cpp::MethodInfo {
541        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
542    }
543}
544
545#[cfg(feature = "app-musclestartmenu")]
546impl MuscleStartMenu_MuscleStartMenuItem {
547    #[doc = "Direct (non-virtual) call to `MuscleStartMenu_MuscleStartMenuItem`'s own `BuildAttribute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
548    pub unsafe fn build_attribute(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
549        let __mi = Self::build_attribute_method_info();
550        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
551            ::core::mem::transmute(__mi.method_ptr);
552        __inner(this.into(), ::core::option::Option::None)
553    }
554
555    #[doc = "Direct (non-virtual) call to `MuscleStartMenu_MuscleStartMenuItem`'s own `GetName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
556    pub unsafe fn get_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
557        let __mi = Self::get_name_method_info();
558        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
559        __inner(this.into(), ::core::option::Option::None)
560    }
561
562    #[doc = "Direct (non-virtual) call to `MuscleStartMenu_MuscleStartMenuItem`'s own `OnSelect`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
563    pub unsafe fn on_select(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
564        let __mi = Self::on_select_method_info();
565        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
566        __inner(this.into(), ::core::option::Option::None)
567    }
568}
569
570#[cfg(feature = "app-musclestartmenu")]
571impl MuscleStartMenu_MuscleStartMenuItem {
572    #[doc = "`.ctor(crate::unity_engine::gameobject::GameObject, ::unity::Il2CppString)` — overload selector"]
573    pub fn new(set_menu: crate::unity_engine::gameobject::GameObject, id: ::unity::Il2CppString) -> Self {
574        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
575            panic!(
576                "{}
577::{}
578 failed to instantiate",
579                ::core::stringify!(MuscleStartMenu_MuscleStartMenuItem),
580                ::core::stringify!(new),
581            )
582        });
583        <Self as IMuscleStartMenu_MuscleStartMenuItemMethods>::ctor(this, set_menu, id);
584        this
585    }
586}
587
588#[cfg(feature = "app-musclestartmenu")]
589#[doc(hidden)]
590pub mod prelude {
591    pub use super::{
592        IMuscleStartMenu, IMuscleStartMenuMethods, IMuscleStartMenu_DecideEventHandler, IMuscleStartMenu_DecideEventHandlerMethods,
593        IMuscleStartMenu_MuscleStartMenuItem, IMuscleStartMenu_MuscleStartMenuItemMethods, MuscleStartMenu, MuscleStartMenu_DecideEventHandler,
594        MuscleStartMenu_MuscleStartMenuItem,
595    };
596    #[cfg(feature = "app-basicmenu")]
597    pub use crate::app::basicmenu::IBasicMenuMethods;
598    #[cfg(feature = "app-basicmenuitem")]
599    pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
600    #[cfg(feature = "app-procinst")]
601    pub use crate::app::procinst::IProcInstMethods;
602    #[cfg(feature = "system-delegate")]
603    pub use crate::system::delegate::IDelegateMethods;
604    #[cfg(feature = "system-multicastdelegate")]
605    pub use crate::system::multicastdelegate::IMulticastDelegateMethods;
606    #[cfg(feature = "system-object")]
607    pub use crate::system::object::IObjectMethods;
608    pub use crate::{
609        app::{basicmenu::IBasicMenu, basicmenuitem::IBasicMenuItem, procinst::IProcInst},
610        system::{delegate::IDelegate, multicastdelegate::IMulticastDelegate, object::IObject},
611    };
612}