Skip to main content

engage/generated/root/
akbankmanager.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "root-akbankmanager-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::system::object::{IObject, Object};
9
10    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akbankmanager/AkBankManager.md"))]
11    #[::unity::class(namespace = "", name = "AkBankManager")]
12    #[parent(crate::system::object::Object)]
13    pub struct AkBankManager {
14        #[static_field]
15        #[rename(name = "m_BankHandles")]
16        pub m_bank_handles: crate::system::collections::generic::dictionary_2::Dictionary_2<
17            ::unity::Il2CppString,
18            crate::root::akbankmanager::AkBankManager_BankHandle,
19        >,
20        #[static_field]
21        #[rename(name = "BanksToUnload")]
22        pub banks_to_unload: crate::system::collections::generic::list_1::List_1<crate::root::akbankmanager::AkBankManager_BankHandle>,
23    }
24
25    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akbankmanager/AkBankManager_AsyncBankHandle.md"))]
26    #[::unity::class(namespace = "", name = "AkBankManager.AsyncBankHandle")]
27    #[parent(crate::root::akbankmanager::AkBankManager_BankHandle)]
28    pub struct AkBankManager_AsyncBankHandle {
29        #[offset(32)]
30        #[rename(name = "bankCallback")]
31        pub bank_callback: crate::root::akcallbackmanager::AkCallbackManager_BankCallback,
32    }
33
34    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akbankmanager/AkBankManager_BankHandle.md"))]
35    #[::unity::class(namespace = "", name = "AkBankManager.BankHandle")]
36    #[parent(crate::system::object::Object)]
37    pub struct AkBankManager_BankHandle {
38        #[offset(16)]
39        #[rename(name = "bankName")]
40        pub bank_name: ::unity::Il2CppString,
41        #[offset(24)]
42        #[rename(name = "m_BankID")]
43        pub m_bank_id: u32,
44    }
45
46    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akbankmanager/AkBankManager_DecodableBankHandle.md"))]
47    #[::unity::class(namespace = "", name = "AkBankManager.DecodableBankHandle")]
48    #[parent(crate::root::akbankmanager::AkBankManager_BankHandle)]
49    pub struct AkBankManager_DecodableBankHandle {
50        #[offset(32)]
51        #[rename(name = "decodeBank")]
52        pub decode_bank: bool,
53        #[offset(40)]
54        #[rename(name = "decodedBankPath")]
55        pub decoded_bank_path: ::unity::Il2CppString,
56        #[offset(48)]
57        #[rename(name = "saveDecodedBank")]
58        pub save_decoded_bank: bool,
59    }
60}
61
62#[cfg(feature = "root-akbankmanager-types")]
63pub use __types::*;
64
65#[cfg(feature = "root-akbankmanager")]
66impl AkBankManager {
67    #[doc = "`DoUnloadBanks()` overload"]
68    pub fn do_unload_banks() -> () {
69        unsafe {
70            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2460usize)as*mut u8,();
71            )
72        }
73    }
74
75    #[doc = "`Reset()` overload"]
76    pub fn reset() -> () {
77        unsafe {
78            ::unity::il2cpp_call!((::unity::module_base()+0x2bd25c0usize)as*mut u8,();
79            )
80        }
81    }
82
83    #[doc = "`LoadInitBank(bool)` overload"]
84    pub fn load_init_bank(do_reset: impl ::core::convert::Into<bool>) -> () {
85        unsafe {
86            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2670usize)as*mut u8,();
87(bool)::core::convert::Into::into(do_reset))
88        }
89    }
90
91    #[doc = "`UnloadInitBank()` overload"]
92    pub fn unload_init_bank() -> () {
93        unsafe {
94            ::unity::il2cpp_call!((::unity::module_base()+0x2bd27f0usize)as*mut u8,();
95            )
96        }
97    }
98
99    #[doc = "`LoadBank(::unity::Il2CppString, bool, bool)` overload"]
100    pub fn load_bank(
101        name: impl ::core::convert::Into<::unity::Il2CppString>,
102        decode_bank: impl ::core::convert::Into<bool>,
103        save_decoded_bank: impl ::core::convert::Into<bool>,
104    ) -> () {
105        unsafe {
106            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2880usize)as*mut u8,();
107(::unity::Il2CppString)::core::convert::Into::into(name),(bool)::core::convert::Into::into(decode_bank),(bool)::core::convert::Into::into(save_decoded_bank))
108        }
109    }
110
111    #[doc = "`LoadBankAsync(::unity::Il2CppString, crate::root::akcallbackmanager::AkCallbackManager_BankCallback)` overload"]
112    pub fn load_bank_async(
113        name: impl ::core::convert::Into<::unity::Il2CppString>,
114        callback: impl ::core::convert::Into<crate::root::akcallbackmanager::AkCallbackManager_BankCallback>,
115    ) -> () {
116        unsafe {
117            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2aa0usize)as*mut u8,();
118(::unity::Il2CppString)::core::convert::Into::into(name),(crate::root::akcallbackmanager::AkCallbackManager_BankCallback)::core::convert::Into::into(callback))
119        }
120    }
121
122    #[doc = "`UnloadBank(::unity::Il2CppString)` overload"]
123    pub fn unload_bank(name: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
124        unsafe {
125            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2cd0usize)as*mut u8,();
126(::unity::Il2CppString)::core::convert::Into::into(name))
127        }
128    }
129
130    #[doc = "`.cctor()` overload"]
131    pub fn cctor() -> () {
132        unsafe {
133            ::unity::il2cpp_call!((::unity::module_base()+0x2bd2e50usize)as*mut u8,();
134            )
135        }
136    }
137}
138
139#[cfg(feature = "root-akbankmanager")]
140impl AkBankManager {
141    pub fn do_unload_banks_method_info() -> &'static ::unity::il2cpp::MethodInfo {
142        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
143    }
144
145    pub fn reset_method_info() -> &'static ::unity::il2cpp::MethodInfo {
146        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
147    }
148
149    pub fn load_init_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
150        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
151    }
152
153    pub fn unload_init_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
154        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
155    }
156
157    pub fn load_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
158        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
159    }
160
161    pub fn load_bank_async_method_info() -> &'static ::unity::il2cpp::MethodInfo {
162        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
163    }
164
165    pub fn unload_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
166        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
167    }
168
169    pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
170        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
171    }
172}
173
174#[cfg(feature = "root-akbankmanager")]
175impl AkBankManager_AsyncBankHandle {
176    #[doc = "`GlobalBankCallback(u32, ::unity::IntPtr, crate::root::akresult::AKRESULT, crate::system::object::Object)` overload"]
177    pub fn global_bank_callback(
178        in_bank_id: impl ::core::convert::Into<u32>,
179        in_p_in_memory_bank_ptr: impl ::core::convert::Into<::unity::IntPtr>,
180        in_e_load_result: impl ::core::convert::Into<crate::root::akresult::AKRESULT>,
181        in_cookie: impl ::core::convert::Into<crate::system::object::Object>,
182    ) -> () {
183        unsafe {
184            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c170usize)as*mut u8,();
185(u32)::core::convert::Into::into(in_bank_id),(::unity::IntPtr)::core::convert::Into::into(in_p_in_memory_bank_ptr),(crate::root::akresult::AKRESULT)::core::convert::Into::into(in_e_load_result),(crate::system::object::Object)::core::convert::Into::into(in_cookie))
186        }
187    }
188}
189
190#[cfg(feature = "root-akbankmanager")]
191pub trait IAkBankManager_AsyncBankHandleMethods: IAkBankManager_AsyncBankHandle {
192    #[doc = "`.ctor(::unity::Il2CppString, crate::root::akcallbackmanager::AkCallbackManager_BankCallback)` overload"]
193    fn ctor(
194        self,
195        name: impl ::core::convert::Into<::unity::Il2CppString>,
196        callback: impl ::core::convert::Into<crate::root::akcallbackmanager::AkCallbackManager_BankCallback>,
197    ) -> () {
198        unsafe {
199            let __receiver =
200                <AkBankManager_AsyncBankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
201            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c0e0usize)as*mut u8,();
202(AkBankManager_AsyncBankHandle)__receiver,(::unity::Il2CppString)::core::convert::Into::into(name),(crate::root::akcallbackmanager::AkCallbackManager_BankCallback)::core::convert::Into::into(callback))
203        }
204    }
205    #[doc = "`DoLoadBank()` overload"]
206    fn do_load_bank(self) -> crate::root::akresult::AKRESULT {
207        unsafe {
208            let __receiver =
209                <AkBankManager_AsyncBankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
210            {
211                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
212                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
213                    panic!(
214                        "unity: virtual slot {}
215 out of range (vtable len {}
216) on the runtime class behind {}
217 (method `{}
218`)",
219                        4usize,
220                        __vt.len(),
221                        <AkBankManager_AsyncBankHandle as ::unity::ClassIdentity>::NAME,
222                        "DoLoadBank",
223                    )
224                });
225                let __inner: extern "C" fn(AkBankManager_AsyncBankHandle, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
226                    ::core::mem::transmute(__vi.method_ptr);
227                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
228                __inner(__receiver, __mi)
229            }
230        }
231    }
232}
233
234#[cfg(feature = "root-akbankmanager")]
235impl<__T: IAkBankManager_AsyncBankHandle> IAkBankManager_AsyncBankHandleMethods for __T {}
236
237#[cfg(feature = "root-akbankmanager")]
238impl AkBankManager_AsyncBankHandle {
239    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
240        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
241    }
242
243    pub fn global_bank_callback_method_info() -> &'static ::unity::il2cpp::MethodInfo {
244        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
245    }
246
247    pub fn do_load_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
248        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
249    }
250}
251
252#[cfg(feature = "root-akbankmanager")]
253impl AkBankManager_AsyncBankHandle {
254    #[doc = "Direct (non-virtual) call to `AkBankManager_AsyncBankHandle`'s own `DoLoadBank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
255    pub unsafe fn do_load_bank(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::root::akresult::AKRESULT {
256        let __mi = Self::do_load_bank_method_info();
257        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
258            ::core::mem::transmute(__mi.method_ptr);
259        __inner(this.into(), ::core::option::Option::None)
260    }
261}
262
263#[cfg(feature = "root-akbankmanager")]
264impl AkBankManager_AsyncBankHandle {
265    #[doc = "`.ctor(::unity::Il2CppString, crate::root::akcallbackmanager::AkCallbackManager_BankCallback)` — overload selector"]
266    pub fn new(name: ::unity::Il2CppString, callback: crate::root::akcallbackmanager::AkCallbackManager_BankCallback) -> Self {
267        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
268            panic!(
269                "{}
270::{}
271 failed to instantiate",
272                ::core::stringify!(AkBankManager_AsyncBankHandle),
273                ::core::stringify!(new),
274            )
275        });
276        <Self as IAkBankManager_AsyncBankHandleMethods>::ctor(this, name, callback);
277        this
278    }
279}
280
281#[cfg(feature = "root-akbankmanager")]
282pub trait IAkBankManager_BankHandleMethods: IAkBankManager_BankHandle {
283    #[doc = "`.ctor(::unity::Il2CppString)` overload"]
284    fn ctor(self, name: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
285        unsafe {
286            let __receiver =
287                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
288            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c130usize)as*mut u8,();
289(AkBankManager_BankHandle)__receiver,(::unity::Il2CppString)::core::convert::Into::into(name))
290        }
291    }
292    #[doc = "`get_RefCount()` overload"]
293    fn get_ref_count(self) -> i32 {
294        unsafe {
295            let __receiver =
296                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
297            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c9c0usize)as*mut u8,i32;
298(AkBankManager_BankHandle)__receiver)
299        }
300    }
301    #[doc = "`set_RefCount(i32)` overload"]
302    fn set_ref_count(self, value: impl ::core::convert::Into<i32>) -> () {
303        unsafe {
304            let __receiver =
305                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
306            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c9d0usize)as*mut u8,();
307(AkBankManager_BankHandle)__receiver,(i32)::core::convert::Into::into(value))
308        }
309    }
310    #[doc = "`DoLoadBank()` overload"]
311    fn do_load_bank(self) -> crate::root::akresult::AKRESULT {
312        unsafe {
313            let __receiver =
314                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
315            {
316                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
317                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
318                    panic!(
319                        "unity: virtual slot {}
320 out of range (vtable len {}
321) on the runtime class behind {}
322 (method `{}
323`)",
324                        4usize,
325                        __vt.len(),
326                        <AkBankManager_BankHandle as ::unity::ClassIdentity>::NAME,
327                        "DoLoadBank",
328                    )
329                });
330                let __inner: extern "C" fn(AkBankManager_BankHandle, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
331                    ::core::mem::transmute(__vi.method_ptr);
332                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
333                __inner(__receiver, __mi)
334            }
335        }
336    }
337    #[doc = "`LoadBank()` overload"]
338    fn load_bank(self) -> () {
339        unsafe {
340            let __receiver =
341                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
342            ::unity::il2cpp_call!((::unity::module_base()+0x1b9ca60usize)as*mut u8,();
343(AkBankManager_BankHandle)__receiver)
344        }
345    }
346    #[doc = "`UnloadBank()` overload"]
347    fn unload_bank(self) -> () {
348        unsafe {
349            let __receiver =
350                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
351            {
352                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
353                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
354                    panic!(
355                        "unity: virtual slot {}
356 out of range (vtable len {}
357) on the runtime class behind {}
358 (method `{}
359`)",
360                        5usize,
361                        __vt.len(),
362                        <AkBankManager_BankHandle as ::unity::ClassIdentity>::NAME,
363                        "UnloadBank",
364                    )
365                });
366                let __inner: extern "C" fn(AkBankManager_BankHandle, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
367                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
368                __inner(__receiver, __mi)
369            }
370        }
371    }
372    #[doc = "`IncRef()` overload"]
373    fn inc_ref(self) -> () {
374        unsafe {
375            let __receiver =
376                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
377            ::unity::il2cpp_call!((::unity::module_base()+0x1b9cb90usize)as*mut u8,();
378(AkBankManager_BankHandle)__receiver)
379        }
380    }
381    #[doc = "`DecRef()` overload"]
382    fn dec_ref(self) -> () {
383        unsafe {
384            let __receiver =
385                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
386            ::unity::il2cpp_call!((::unity::module_base()+0x1b9cde0usize)as*mut u8,();
387(AkBankManager_BankHandle)__receiver)
388        }
389    }
390    #[doc = "`LogLoadResult(crate::root::akresult::AKRESULT)` overload"]
391    fn log_load_result(self, result: impl ::core::convert::Into<crate::root::akresult::AKRESULT>) -> () {
392        unsafe {
393            let __receiver =
394                <AkBankManager_BankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
395            ::unity::il2cpp_call!((::unity::module_base()+0x1b9c370usize)as*mut u8,();
396(AkBankManager_BankHandle)__receiver,(crate::root::akresult::AKRESULT)::core::convert::Into::into(result))
397        }
398    }
399}
400
401#[cfg(feature = "root-akbankmanager")]
402impl<__T: IAkBankManager_BankHandle> IAkBankManager_BankHandleMethods for __T {}
403
404#[cfg(feature = "root-akbankmanager")]
405impl AkBankManager_BankHandle {
406    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
407        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
408    }
409
410    pub fn get_ref_count_method_info() -> &'static ::unity::il2cpp::MethodInfo {
411        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
412    }
413
414    pub fn set_ref_count_method_info() -> &'static ::unity::il2cpp::MethodInfo {
415        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
416    }
417
418    pub fn do_load_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
419        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
420    }
421
422    pub fn load_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
423        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
424    }
425
426    pub fn unload_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
427        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
428    }
429
430    pub fn inc_ref_method_info() -> &'static ::unity::il2cpp::MethodInfo {
431        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
432    }
433
434    pub fn dec_ref_method_info() -> &'static ::unity::il2cpp::MethodInfo {
435        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
436    }
437
438    pub fn log_load_result_method_info() -> &'static ::unity::il2cpp::MethodInfo {
439        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
440    }
441}
442
443#[cfg(feature = "root-akbankmanager")]
444impl AkBankManager_BankHandle {
445    #[doc = "Direct (non-virtual) call to `AkBankManager_BankHandle`'s own `DoLoadBank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
446    pub unsafe fn do_load_bank(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::root::akresult::AKRESULT {
447        let __mi = Self::do_load_bank_method_info();
448        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
449            ::core::mem::transmute(__mi.method_ptr);
450        __inner(this.into(), ::core::option::Option::None)
451    }
452
453    #[doc = "Direct (non-virtual) call to `AkBankManager_BankHandle`'s own `UnloadBank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
454    pub unsafe fn unload_bank(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
455        let __mi = Self::unload_bank_method_info();
456        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
457        __inner(this.into(), ::core::option::Option::None)
458    }
459}
460
461#[cfg(feature = "root-akbankmanager")]
462impl AkBankManager_BankHandle {
463    #[doc = "`.ctor(::unity::Il2CppString)` — overload selector"]
464    pub fn new(name: ::unity::Il2CppString) -> Self {
465        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
466            panic!(
467                "{}
468::{}
469 failed to instantiate",
470                ::core::stringify!(AkBankManager_BankHandle),
471                ::core::stringify!(new),
472            )
473        });
474        <Self as IAkBankManager_BankHandleMethods>::ctor(this, name);
475        this
476    }
477}
478
479#[cfg(feature = "root-akbankmanager")]
480pub trait IAkBankManager_DecodableBankHandleMethods: IAkBankManager_DecodableBankHandle {
481    #[doc = "`.ctor(::unity::Il2CppString, bool)` overload"]
482    fn ctor(self, name: impl ::core::convert::Into<::unity::Il2CppString>, save: impl ::core::convert::Into<bool>) -> () {
483        unsafe {
484            let __receiver =
485                <AkBankManager_DecodableBankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
486            ::unity::il2cpp_call!((::unity::module_base()+0x1b9ce80usize)as*mut u8,();
487(AkBankManager_DecodableBankHandle)__receiver,(::unity::Il2CppString)::core::convert::Into::into(name),(bool)::core::convert::Into::into(save))
488        }
489    }
490    #[doc = "`DoLoadBank()` overload"]
491    fn do_load_bank(self) -> crate::root::akresult::AKRESULT {
492        unsafe {
493            let __receiver =
494                <AkBankManager_DecodableBankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
495            {
496                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
497                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
498                    panic!(
499                        "unity: virtual slot {}
500 out of range (vtable len {}
501) on the runtime class behind {}
502 (method `{}
503`)",
504                        4usize,
505                        __vt.len(),
506                        <AkBankManager_DecodableBankHandle as ::unity::ClassIdentity>::NAME,
507                        "DoLoadBank",
508                    )
509                });
510                let __inner: extern "C" fn(AkBankManager_DecodableBankHandle, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
511                    ::core::mem::transmute(__vi.method_ptr);
512                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
513                __inner(__receiver, __mi)
514            }
515        }
516    }
517    #[doc = "`UnloadBank()` overload"]
518    fn unload_bank(self) -> () {
519        unsafe {
520            let __receiver =
521                <AkBankManager_DecodableBankHandle as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
522            {
523                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
524                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
525                    panic!(
526                        "unity: virtual slot {}
527 out of range (vtable len {}
528) on the runtime class behind {}
529 (method `{}
530`)",
531                        5usize,
532                        __vt.len(),
533                        <AkBankManager_DecodableBankHandle as ::unity::ClassIdentity>::NAME,
534                        "UnloadBank",
535                    )
536                });
537                let __inner: extern "C" fn(AkBankManager_DecodableBankHandle, ::unity::OptionalMethod) -> () =
538                    ::core::mem::transmute(__vi.method_ptr);
539                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
540                __inner(__receiver, __mi)
541            }
542        }
543    }
544}
545
546#[cfg(feature = "root-akbankmanager")]
547impl<__T: IAkBankManager_DecodableBankHandle> IAkBankManager_DecodableBankHandleMethods for __T {}
548
549#[cfg(feature = "root-akbankmanager")]
550impl AkBankManager_DecodableBankHandle {
551    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
552        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
553    }
554
555    pub fn do_load_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
556        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
557    }
558
559    pub fn unload_bank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
560        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
561    }
562}
563
564#[cfg(feature = "root-akbankmanager")]
565impl AkBankManager_DecodableBankHandle {
566    #[doc = "Direct (non-virtual) call to `AkBankManager_DecodableBankHandle`'s own `DoLoadBank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
567    pub unsafe fn do_load_bank(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::root::akresult::AKRESULT {
568        let __mi = Self::do_load_bank_method_info();
569        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::root::akresult::AKRESULT =
570            ::core::mem::transmute(__mi.method_ptr);
571        __inner(this.into(), ::core::option::Option::None)
572    }
573
574    #[doc = "Direct (non-virtual) call to `AkBankManager_DecodableBankHandle`'s own `UnloadBank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
575    pub unsafe fn unload_bank(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
576        let __mi = Self::unload_bank_method_info();
577        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
578        __inner(this.into(), ::core::option::Option::None)
579    }
580}
581
582#[cfg(feature = "root-akbankmanager")]
583impl AkBankManager_DecodableBankHandle {
584    #[doc = "`.ctor(::unity::Il2CppString, bool)` — overload selector"]
585    pub fn new(name: ::unity::Il2CppString, save: bool) -> Self {
586        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
587            panic!(
588                "{}
589::{}
590 failed to instantiate",
591                ::core::stringify!(AkBankManager_DecodableBankHandle),
592                ::core::stringify!(new),
593            )
594        });
595        <Self as IAkBankManager_DecodableBankHandleMethods>::ctor(this, name, save);
596        this
597    }
598}
599
600#[cfg(feature = "root-akbankmanager")]
601#[doc(hidden)]
602pub mod prelude {
603    pub use super::{
604        AkBankManager, AkBankManager_AsyncBankHandle, AkBankManager_BankHandle, AkBankManager_DecodableBankHandle, IAkBankManager,
605        IAkBankManager_AsyncBankHandle, IAkBankManager_AsyncBankHandleMethods, IAkBankManager_BankHandle, IAkBankManager_BankHandleMethods,
606        IAkBankManager_DecodableBankHandle, IAkBankManager_DecodableBankHandleMethods,
607    };
608    pub use crate::system::object::IObject;
609    #[cfg(feature = "system-object")]
610    pub use crate::system::object::IObjectMethods;
611}