Skip to main content

engage/generated/app/
irewardsequence.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-irewardsequence-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::procinst::{IProcInst, ProcInst},
10        system::object::{IObject, Object},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/irewardsequence/IRewardSequence.md"))]
14    #[::unity::class(namespace = "App", name = "IRewardSequence")]
15    #[parent(crate::app::procinst::ProcInst)]
16    pub struct IRewardSequence {}
17}
18
19#[cfg(feature = "app-irewardsequence-types")]
20pub use __types::*;
21
22#[cfg(feature = "app-irewardsequence")]
23impl IRewardSequence {
24    pub fn create_bind_imp<M0: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity>(
25        super_: impl ::core::convert::Into<crate::app::procinst::ProcInst>,
26    ) -> () {
27        static OPEN: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
28            ::unity::lookup::method_info_on_class(<IRewardSequence as ::unity::ClassIdentity>::class(), "CreateBindImp", 1)
29        });
30        #[allow(clippy::type_complexity)]
31        static CACHE: ::std::sync::OnceLock<::std::sync::Mutex<::std::collections::HashMap<usize, &'static ::unity::il2cpp::MethodInfo>>> =
32            ::std::sync::OnceLock::new();
33        let _ = true;
34        let __open: &'static ::unity::il2cpp::MethodInfo = match &*OPEN {
35            ::core::result::Result::Ok(mi) => *mi,
36            ::core::result::Result::Err(e) => {
37                panic!(
38                    "method lookup failed: {}
39::{}
40: {}
41",
42                    <IRewardSequence as ::unity::ClassIdentity>::NAME,
43                    "CreateBindImp",
44                    e
45                )
46            },
47        };
48        let __cache = CACHE.get_or_init(|| ::std::sync::Mutex::new(::std::collections::HashMap::new()));
49        let __key: usize = <M0 as ::unity::IlType>::il_type() as *const _ as usize;
50        let __inflated: &'static ::unity::il2cpp::MethodInfo = {
51            let mut __guard = __cache.lock().unwrap();
52            *__guard
53                .entry(__key)
54                .or_insert_with(|| ::unity::il2cpp::generic::create_generic_method_info(__open, &[<M0 as ::unity::IlType>::il_type()]))
55        };
56        unsafe {
57            let __f: extern "C" fn(crate::app::procinst::ProcInst, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__inflated.method_ptr);
58            let __mi_opaque: &'static () = &*(__inflated as *const _ as *const ());
59            __f(::core::convert::Into::into(super_), ::core::option::Option::Some(__mi_opaque))
60        }
61    }
62}
63
64#[cfg(feature = "app-irewardsequence")]
65pub trait IIRewardSequenceMethods: IIRewardSequence {
66    #[doc = "`GetDesc()` overload"]
67    fn get_desc(self) -> ::unity::Array<crate::app::procdesc::ProcDesc> {
68        unsafe {
69            let __receiver = <IRewardSequence as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
70            {
71                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
72                let __vi = *__vt.get(18usize).unwrap_or_else(|| {
73                    panic!(
74                        "unity: virtual slot {}
75 out of range (vtable len {}
76) on the runtime class behind {}
77 (method `{}
78`)",
79                        18usize,
80                        __vt.len(),
81                        <IRewardSequence as ::unity::ClassIdentity>::NAME,
82                        "GetDesc",
83                    )
84                });
85                let __inner: extern "C" fn(IRewardSequence, ::unity::OptionalMethod) -> ::unity::Array<crate::app::procdesc::ProcDesc> =
86                    ::core::mem::transmute(__vi.method_ptr);
87                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
88                __inner(__receiver, __mi)
89            }
90        }
91    }
92    #[doc = "`.ctor()` overload"]
93    fn ctor(self) -> () {
94        unsafe {
95            let __receiver = <IRewardSequence as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
96            ::unity::il2cpp_call!((::unity::module_base()+0x290d470usize)as*mut u8,();
97(IRewardSequence)__receiver)
98        }
99    }
100}
101
102#[cfg(feature = "app-irewardsequence")]
103impl<__T: IIRewardSequence> IIRewardSequenceMethods for __T {}
104
105#[cfg(feature = "app-irewardsequence")]
106impl IRewardSequence {
107    pub fn get_desc_method_info() -> &'static ::unity::il2cpp::MethodInfo {
108        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
109    }
110
111    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
112        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
113    }
114}
115
116#[cfg(feature = "app-irewardsequence")]
117impl IRewardSequence {
118    #[doc = "Direct (non-virtual) call to `IRewardSequence`'s own `GetDesc`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
119    pub unsafe fn get_desc(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Array<crate::app::procdesc::ProcDesc> {
120        let __mi = Self::get_desc_method_info();
121        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Array<crate::app::procdesc::ProcDesc> =
122            ::core::mem::transmute(__mi.method_ptr);
123        __inner(this.into(), ::core::option::Option::None)
124    }
125}
126
127#[cfg(feature = "app-irewardsequence")]
128impl IRewardSequence {
129    #[doc = "`.ctor()` — no args"]
130    pub fn new() -> Self {
131        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
132            panic!(
133                "{}
134::{}
135 failed to instantiate",
136                ::core::stringify!(IRewardSequence),
137                ::core::stringify!(new),
138            )
139        });
140        <Self as IIRewardSequenceMethods>::ctor(this);
141        this
142    }
143}
144
145#[cfg(feature = "app-irewardsequence")]
146#[doc(hidden)]
147pub mod prelude {
148    pub use super::{IIRewardSequence, IIRewardSequenceMethods, IRewardSequence};
149    #[cfg(feature = "app-procinst")]
150    pub use crate::app::procinst::IProcInstMethods;
151    #[cfg(feature = "system-object")]
152    pub use crate::system::object::IObjectMethods;
153    pub use crate::{app::procinst::IProcInst, system::object::IObject};
154}