Skip to main content

engage/generated/app/
refineshopexchangesourcemenu.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-refineshopexchangesourcemenu-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            basicmenu::{BasicMenu, IBasicMenu},
11            procinst::{IProcInst, ProcInst},
12        },
13        system::{
14            delegate::{Delegate, IDelegate},
15            multicastdelegate::{IMulticastDelegate, MulticastDelegate},
16            object::{IObject, Object},
17        },
18    };
19
20    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/refineshopexchangesourcemenu/RefineShopExchangeSourceMenu.md"))]
21    #[::unity::class(namespace = "App", name = "RefineShopExchangeSourceMenu")]
22    #[parent(crate::app::basicmenu::BasicMenu)]
23    pub struct RefineShopExchangeSourceMenu {
24        #[offset(232)]
25        #[rename(name = "m_TargetMaterialId")]
26        pub m_target_material_id: ::unity::Il2CppString,
27        #[offset(240)]
28        #[rename(name = "m_SourceMaterialId")]
29        pub m_source_material_id: ::unity::Il2CppString,
30        #[offset(248)]
31        #[rename(name = "m_SelectEventHandler")]
32        pub m_select_event_handler: crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler,
33        #[offset(256)]
34        #[rename(name = "m_CloseEventHandler")]
35        pub m_close_event_handler: crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler,
36    }
37
38    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/refineshopexchangesourcemenu/RefineShopExchangeSourceMenu_CloseEventHandler.md"))]
39    #[::unity::class(namespace = "App", name = "RefineShopExchangeSourceMenu.CloseEventHandler")]
40    #[parent(crate::system::multicastdelegate::MulticastDelegate)]
41    pub struct RefineShopExchangeSourceMenu_CloseEventHandler {}
42}
43
44#[cfg(feature = "app-refineshopexchangesourcemenu-types")]
45pub use __types::*;
46
47#[cfg(feature = "app-refineshopexchangesourcemenu")]
48impl RefineShopExchangeSourceMenu {
49    #[doc = "`CreateBind(crate::app::procinst::ProcInst, crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent, ::unity::Il2CppString, ::unity::Il2CppString, crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler, crate::app::materialmenuitem::MaterialMenuItem_DecideEventHandler, crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler)` overload"]
50    pub fn create_bind(
51        super_: impl ::core::convert::Into<crate::app::procinst::ProcInst>,
52        menu_content: impl ::core::convert::Into<crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent>,
53        target_material_id: impl ::core::convert::Into<::unity::Il2CppString>,
54        initial_source_material_id: impl ::core::convert::Into<::unity::Il2CppString>,
55        select_event_handler: impl ::core::convert::Into<crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler>,
56        decide_event_handler: impl ::core::convert::Into<crate::app::materialmenuitem::MaterialMenuItem_DecideEventHandler>,
57        close_event_handler: impl ::core::convert::Into<crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler>,
58    ) -> crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu {
59        unsafe {
60            ::unity::il2cpp_call!((::unity::module_base()+0x2962b60usize)as*mut u8,crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu;
61(crate::app::procinst::ProcInst)::core::convert::Into::into(super_),(crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent)::core::convert::Into::into(menu_content),(::unity::Il2CppString)::core::convert::Into::into(target_material_id),(::unity::Il2CppString)::core::convert::Into::into(initial_source_material_id),(crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler)::core::convert::Into::into(select_event_handler),(crate::app::materialmenuitem::MaterialMenuItem_DecideEventHandler)::core::convert::Into::into(decide_event_handler),(crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler)::core::convert::Into::into(close_event_handler))
62        }
63    }
64}
65
66#[cfg(feature = "app-refineshopexchangesourcemenu")]
67pub trait IRefineShopExchangeSourceMenuMethods: IRefineShopExchangeSourceMenu {
68    #[doc = "`get_m_TargetMaterialData()` overload"]
69    fn get_m_target_material_data(self) -> crate::app::itemrefineexchangedata::ItemRefineExchangeData {
70        unsafe {
71            let __receiver =
72                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
73            ::unity::il2cpp_call!((::unity::module_base()+0x2964170usize)as*mut u8,crate::app::itemrefineexchangedata::ItemRefineExchangeData;
74(RefineShopExchangeSourceMenu)__receiver)
75        }
76    }
77    #[doc = "`set_m_TargetMaterialData(crate::app::itemrefineexchangedata::ItemRefineExchangeData)` overload"]
78    fn set_m_target_material_data(self, value: impl ::core::convert::Into<crate::app::itemrefineexchangedata::ItemRefineExchangeData>) -> () {
79        unsafe {
80            let __receiver =
81                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
82            ::unity::il2cpp_call!((::unity::module_base()+0x2964180usize)as*mut u8,();
83(RefineShopExchangeSourceMenu)__receiver,(crate::app::itemrefineexchangedata::ItemRefineExchangeData)::core::convert::Into::into(value))
84        }
85    }
86    #[doc = "`get_m_SourceMaterialData()` overload"]
87    fn get_m_source_material_data(self) -> crate::app::itemrefineexchangedata::ItemRefineExchangeData {
88        unsafe {
89            let __receiver =
90                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
91            ::unity::il2cpp_call!((::unity::module_base()+0x2964190usize)as*mut u8,crate::app::itemrefineexchangedata::ItemRefineExchangeData;
92(RefineShopExchangeSourceMenu)__receiver)
93        }
94    }
95    #[doc = "`set_m_SourceMaterialData(crate::app::itemrefineexchangedata::ItemRefineExchangeData)` overload"]
96    fn set_m_source_material_data(self, value: impl ::core::convert::Into<crate::app::itemrefineexchangedata::ItemRefineExchangeData>) -> () {
97        unsafe {
98            let __receiver =
99                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
100            ::unity::il2cpp_call!((::unity::module_base()+0x29641a0usize)as*mut u8,();
101(RefineShopExchangeSourceMenu)__receiver,(crate::app::itemrefineexchangedata::ItemRefineExchangeData)::core::convert::Into::into(value))
102        }
103    }
104    #[doc = "`get_m_TargetMaterialRate()` overload"]
105    fn get_m_target_material_rate(self) -> i32 {
106        unsafe {
107            let __receiver =
108                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
109            ::unity::il2cpp_call!((::unity::module_base()+0x29641b0usize)as*mut u8,i32;
110(RefineShopExchangeSourceMenu)__receiver)
111        }
112    }
113    #[doc = "`set_m_TargetMaterialRate(i32)` overload"]
114    fn set_m_target_material_rate(self, value: impl ::core::convert::Into<i32>) -> () {
115        unsafe {
116            let __receiver =
117                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
118            ::unity::il2cpp_call!((::unity::module_base()+0x29641c0usize)as*mut u8,();
119(RefineShopExchangeSourceMenu)__receiver,(i32)::core::convert::Into::into(value))
120        }
121    }
122    #[doc = "`get_m_SourceMaterialRate()` overload"]
123    fn get_m_source_material_rate(self) -> i32 {
124        unsafe {
125            let __receiver =
126                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
127            ::unity::il2cpp_call!((::unity::module_base()+0x29641d0usize)as*mut u8,i32;
128(RefineShopExchangeSourceMenu)__receiver)
129        }
130    }
131    #[doc = "`set_m_SourceMaterialRate(i32)` overload"]
132    fn set_m_source_material_rate(self, value: impl ::core::convert::Into<i32>) -> () {
133        unsafe {
134            let __receiver =
135                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
136            ::unity::il2cpp_call!((::unity::module_base()+0x29641e0usize)as*mut u8,();
137(RefineShopExchangeSourceMenu)__receiver,(i32)::core::convert::Into::into(value))
138        }
139    }
140    #[doc = "`get_m_EnoughSourceCount()` overload"]
141    fn get_m_enough_source_count(self) -> bool {
142        unsafe {
143            let __receiver =
144                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
145            ::unity::il2cpp_call!((::unity::module_base()+0x29641f0usize)as*mut u8,bool;
146(RefineShopExchangeSourceMenu)__receiver)
147        }
148    }
149    #[doc = "`set_m_EnoughSourceCount(bool)` overload"]
150    fn set_m_enough_source_count(self, value: impl ::core::convert::Into<bool>) -> () {
151        unsafe {
152            let __receiver =
153                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
154            ::unity::il2cpp_call!((::unity::module_base()+0x2964200usize)as*mut u8,();
155(RefineShopExchangeSourceMenu)__receiver,(bool)::core::convert::Into::into(value))
156        }
157    }
158    #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent, ::unity::Il2CppString, i32, crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler, crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler)` overload"]
159    fn ctor(
160        self,
161        menu_item_list: impl ::core::convert::Into<crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>>,
162        menu_content: impl ::core::convert::Into<crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent>,
163        target_material_id: impl ::core::convert::Into<::unity::Il2CppString>,
164        initial_select_index: impl ::core::convert::Into<i32>,
165        select_event_handler: impl ::core::convert::Into<crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler>,
166        close_event_handler: impl ::core::convert::Into<crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler>,
167    ) -> () {
168        unsafe {
169            let __receiver =
170                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
171            ::unity::il2cpp_call!((::unity::module_base()+0x29642a0usize)as*mut u8,();
172(RefineShopExchangeSourceMenu)__receiver,(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>)::core::convert::Into::into(menu_item_list),(crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent)::core::convert::Into::into(menu_content),(::unity::Il2CppString)::core::convert::Into::into(target_material_id),(i32)::core::convert::Into::into(initial_select_index),(crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler)::core::convert::Into::into(select_event_handler),(crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler)::core::convert::Into::into(close_event_handler))
173        }
174    }
175    #[doc = "`GetName()` overload"]
176    fn get_name(self) -> ::unity::Il2CppString {
177        unsafe {
178            let __receiver =
179                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
180            {
181                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
182                let __vi = *__vt.get(30usize).unwrap_or_else(|| {
183                    panic!(
184                        "unity: virtual slot {}
185 out of range (vtable len {}
186) on the runtime class behind {}
187 (method `{}
188`)",
189                        30usize,
190                        __vt.len(),
191                        <RefineShopExchangeSourceMenu as ::unity::ClassIdentity>::NAME,
192                        "GetName",
193                    )
194                });
195                let __inner: extern "C" fn(RefineShopExchangeSourceMenu, ::unity::OptionalMethod) -> ::unity::Il2CppString =
196                    ::core::mem::transmute(__vi.method_ptr);
197                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
198                __inner(__receiver, __mi)
199            }
200        }
201    }
202    #[doc = "`OnSelectMenuItem(::unity::Il2CppString)` overload"]
203    fn on_select_menu_item(self, material_id: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
204        unsafe {
205            let __receiver =
206                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
207            ::unity::il2cpp_call!((::unity::module_base()+0x29646a0usize)as*mut u8,();
208(RefineShopExchangeSourceMenu)__receiver,(::unity::Il2CppString)::core::convert::Into::into(material_id))
209        }
210    }
211    #[doc = "`OnClose()` overload"]
212    fn on_close(self) -> () {
213        unsafe {
214            let __receiver =
215                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
216            {
217                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
218                let __vi = *__vt.get(26usize).unwrap_or_else(|| {
219                    panic!(
220                        "unity: virtual slot {}
221 out of range (vtable len {}
222) on the runtime class behind {}
223 (method `{}
224`)",
225                        26usize,
226                        __vt.len(),
227                        <RefineShopExchangeSourceMenu as ::unity::ClassIdentity>::NAME,
228                        "OnClose",
229                    )
230                });
231                let __inner: extern "C" fn(RefineShopExchangeSourceMenu, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
232                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
233                __inner(__receiver, __mi)
234            }
235        }
236    }
237    #[doc = "`OnDispose()` overload"]
238    fn on_dispose(self) -> () {
239        unsafe {
240            let __receiver =
241                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
242            {
243                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
244                let __vi = *__vt.get(10usize).unwrap_or_else(|| {
245                    panic!(
246                        "unity: virtual slot {}
247 out of range (vtable len {}
248) on the runtime class behind {}
249 (method `{}
250`)",
251                        10usize,
252                        __vt.len(),
253                        <RefineShopExchangeSourceMenu as ::unity::ClassIdentity>::NAME,
254                        "OnDispose",
255                    )
256                });
257                let __inner: extern "C" fn(RefineShopExchangeSourceMenu, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
258                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
259                __inner(__receiver, __mi)
260            }
261        }
262    }
263    #[doc = "`CalcRate()` overload"]
264    fn calc_rate(self) -> () {
265        unsafe {
266            let __receiver =
267                <RefineShopExchangeSourceMenu as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
268            ::unity::il2cpp_call!((::unity::module_base()+0x2964350usize)as*mut u8,();
269(RefineShopExchangeSourceMenu)__receiver)
270        }
271    }
272}
273
274#[cfg(feature = "app-refineshopexchangesourcemenu")]
275impl<__T: IRefineShopExchangeSourceMenu> IRefineShopExchangeSourceMenuMethods for __T {}
276
277#[cfg(feature = "app-refineshopexchangesourcemenu")]
278impl RefineShopExchangeSourceMenu {
279    pub fn get_m_target_material_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
280        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
281    }
282
283    pub fn set_m_target_material_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
284        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
285    }
286
287    pub fn get_m_source_material_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
288        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
289    }
290
291    pub fn set_m_source_material_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
292        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
293    }
294
295    pub fn get_m_target_material_rate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
296        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
297    }
298
299    pub fn set_m_target_material_rate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
300        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
301    }
302
303    pub fn get_m_source_material_rate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
304        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
305    }
306
307    pub fn set_m_source_material_rate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
308        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
309    }
310
311    pub fn get_m_enough_source_count_method_info() -> &'static ::unity::il2cpp::MethodInfo {
312        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
313    }
314
315    pub fn set_m_enough_source_count_method_info() -> &'static ::unity::il2cpp::MethodInfo {
316        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
317    }
318
319    pub fn create_bind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
320        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
321    }
322
323    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
324        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
325    }
326
327    pub fn get_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
328        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
329    }
330
331    pub fn on_select_menu_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
332        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
333    }
334
335    pub fn on_close_method_info() -> &'static ::unity::il2cpp::MethodInfo {
336        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
337    }
338
339    pub fn on_dispose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
340        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
341    }
342
343    pub fn calc_rate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
344        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
345    }
346}
347
348#[cfg(feature = "app-refineshopexchangesourcemenu")]
349impl RefineShopExchangeSourceMenu {
350    #[doc = "Direct (non-virtual) call to `RefineShopExchangeSourceMenu`'s own `GetName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
351    pub unsafe fn get_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
352        let __mi = Self::get_name_method_info();
353        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
354        __inner(this.into(), ::core::option::Option::None)
355    }
356
357    #[doc = "Direct (non-virtual) call to `RefineShopExchangeSourceMenu`'s own `OnClose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
358    pub unsafe fn on_close(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
359        let __mi = Self::on_close_method_info();
360        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
361        __inner(this.into(), ::core::option::Option::None)
362    }
363
364    #[doc = "Direct (non-virtual) call to `RefineShopExchangeSourceMenu`'s own `OnDispose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
365    pub unsafe fn on_dispose(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
366        let __mi = Self::on_dispose_method_info();
367        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
368        __inner(this.into(), ::core::option::Option::None)
369    }
370}
371
372#[cfg(feature = "app-refineshopexchangesourcemenu")]
373impl RefineShopExchangeSourceMenu {
374    #[doc = "`.ctor(crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>, crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent, ::unity::Il2CppString, i32, crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler, crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler)` — overload selector"]
375    pub fn new(
376        menu_item_list: crate::system::collections::generic::list_1::List_1<crate::app::basicmenuitem::BasicMenuItem>,
377        menu_content: crate::app::refineshopexchangesourcemenucontent::RefineShopExchangeSourceMenuContent,
378        target_material_id: ::unity::Il2CppString,
379        initial_select_index: i32,
380        select_event_handler: crate::app::materialmenuitem::MaterialMenuItem_SelectEventHandler,
381        close_event_handler: crate::app::refineshopexchangesourcemenu::RefineShopExchangeSourceMenu_CloseEventHandler,
382    ) -> Self {
383        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
384            panic!(
385                "{}
386::{}
387 failed to instantiate",
388                ::core::stringify!(RefineShopExchangeSourceMenu),
389                ::core::stringify!(new),
390            )
391        });
392        <Self as IRefineShopExchangeSourceMenuMethods>::ctor(
393            this,
394            menu_item_list,
395            menu_content,
396            target_material_id,
397            initial_select_index,
398            select_event_handler,
399            close_event_handler,
400        );
401        this
402    }
403}
404
405#[cfg(feature = "app-refineshopexchangesourcemenu")]
406pub trait IRefineShopExchangeSourceMenu_CloseEventHandlerMethods: IRefineShopExchangeSourceMenu_CloseEventHandler {
407    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` overload"]
408    fn ctor(self, object: impl ::core::convert::Into<crate::system::object::Object>, method: impl ::core::convert::Into<::unity::IntPtr>) -> () {
409        unsafe {
410            let __receiver = <RefineShopExchangeSourceMenu_CloseEventHandler as ::unity::FromIlInstance>::from_il_instance(
411                <Self as ::unity::SystemObject>::as_instance(self),
412            );
413            ::unity::il2cpp_call!((::unity::module_base()+0x1afb750usize)as*mut u8,();
414(RefineShopExchangeSourceMenu_CloseEventHandler)__receiver,(crate::system::object::Object)::core::convert::Into::into(object),(::unity::IntPtr)::core::convert::Into::into(method))
415        }
416    }
417    #[doc = "`Invoke()` overload"]
418    fn invoke(self) -> () {
419        unsafe {
420            let __receiver = <RefineShopExchangeSourceMenu_CloseEventHandler as ::unity::FromIlInstance>::from_il_instance(
421                <Self as ::unity::SystemObject>::as_instance(self),
422            );
423            {
424                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
425                let __vi = *__vt.get(13usize).unwrap_or_else(|| {
426                    panic!(
427                        "unity: virtual slot {}
428 out of range (vtable len {}
429) on the runtime class behind {}
430 (method `{}
431`)",
432                        13usize,
433                        __vt.len(),
434                        <RefineShopExchangeSourceMenu_CloseEventHandler as ::unity::ClassIdentity>::NAME,
435                        "Invoke",
436                    )
437                });
438                let __inner: extern "C" fn(RefineShopExchangeSourceMenu_CloseEventHandler, ::unity::OptionalMethod) -> () =
439                    ::core::mem::transmute(__vi.method_ptr);
440                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
441                __inner(__receiver, __mi)
442            }
443        }
444    }
445}
446
447#[cfg(feature = "app-refineshopexchangesourcemenu")]
448impl<__T: IRefineShopExchangeSourceMenu_CloseEventHandler> IRefineShopExchangeSourceMenu_CloseEventHandlerMethods for __T {}
449
450#[cfg(feature = "app-refineshopexchangesourcemenu")]
451impl RefineShopExchangeSourceMenu_CloseEventHandler {
452    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
453        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
454    }
455
456    pub fn invoke_method_info() -> &'static ::unity::il2cpp::MethodInfo {
457        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
458    }
459}
460
461#[cfg(feature = "app-refineshopexchangesourcemenu")]
462impl RefineShopExchangeSourceMenu_CloseEventHandler {
463    #[doc = "Direct (non-virtual) call to `RefineShopExchangeSourceMenu_CloseEventHandler`'s own `Invoke`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
464    pub unsafe fn invoke(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
465        let __mi = Self::invoke_method_info();
466        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
467        __inner(this.into(), ::core::option::Option::None)
468    }
469}
470
471#[cfg(feature = "app-refineshopexchangesourcemenu")]
472impl RefineShopExchangeSourceMenu_CloseEventHandler {
473    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` — overload selector"]
474    pub fn new(object: crate::system::object::Object, method: ::unity::IntPtr) -> Self {
475        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
476            panic!(
477                "{}
478::{}
479 failed to instantiate",
480                ::core::stringify!(RefineShopExchangeSourceMenu_CloseEventHandler),
481                ::core::stringify!(new),
482            )
483        });
484        <Self as IRefineShopExchangeSourceMenu_CloseEventHandlerMethods>::ctor(this, object, method);
485        this
486    }
487}
488
489#[cfg(feature = "app-refineshopexchangesourcemenu")]
490#[doc(hidden)]
491pub mod prelude {
492    pub use super::{
493        IRefineShopExchangeSourceMenu, IRefineShopExchangeSourceMenuMethods, IRefineShopExchangeSourceMenu_CloseEventHandler,
494        IRefineShopExchangeSourceMenu_CloseEventHandlerMethods, RefineShopExchangeSourceMenu, RefineShopExchangeSourceMenu_CloseEventHandler,
495    };
496    #[cfg(feature = "app-basicmenu")]
497    pub use crate::app::basicmenu::IBasicMenuMethods;
498    #[cfg(feature = "app-procinst")]
499    pub use crate::app::procinst::IProcInstMethods;
500    #[cfg(feature = "system-delegate")]
501    pub use crate::system::delegate::IDelegateMethods;
502    #[cfg(feature = "system-multicastdelegate")]
503    pub use crate::system::multicastdelegate::IMulticastDelegateMethods;
504    #[cfg(feature = "system-object")]
505    pub use crate::system::object::IObjectMethods;
506    pub use crate::{
507        app::{basicmenu::IBasicMenu, procinst::IProcInst},
508        system::{delegate::IDelegate, multicastdelegate::IMulticastDelegate, object::IObject},
509    };
510}