Skip to main content

engage/generated/app/
procdescyield.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-procdescyield-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::procdesc::{IProcDesc, ProcDesc},
10        system::object::{IObject, Object},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/procdescyield/ProcDescYield.md"))]
14    #[::unity::class(namespace = "App", name = "ProcDescYield")]
15    #[parent(crate::app::procdesc::ProcDesc)]
16    pub struct ProcDescYield {}
17}
18
19#[cfg(feature = "app-procdescyield-types")]
20pub use __types::*;
21
22#[cfg(feature = "app-procdescyield")]
23pub trait IProcDescYieldMethods: IProcDescYield {
24    #[doc = "`.ctor()` overload"]
25    fn ctor(self) -> () {
26        unsafe {
27            let __receiver = <ProcDescYield as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
28            ::unity::il2cpp_call!((::unity::module_base()+0x281b220usize)as*mut u8,();
29(ProcDescYield)__receiver)
30        }
31    }
32    #[doc = "`Execute(crate::app::procinst::ProcInst)` overload"]
33    fn execute(self, inst: impl ::core::convert::Into<crate::app::procinst::ProcInst>) -> crate::app::procdesc::ProcDesc_Result {
34        unsafe {
35            let __receiver = <ProcDescYield as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
36            {
37                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
38                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
39                    panic!(
40                        "unity: virtual slot {}
41 out of range (vtable len {}
42) on the runtime class behind {}
43 (method `{}
44`)",
45                        4usize,
46                        __vt.len(),
47                        <ProcDescYield as ::unity::ClassIdentity>::NAME,
48                        "Execute",
49                    )
50                });
51                let __inner: extern "C" fn(
52                    ProcDescYield,
53                    crate::app::procinst::ProcInst,
54                    ::unity::OptionalMethod,
55                ) -> crate::app::procdesc::ProcDesc_Result = ::core::mem::transmute(__vi.method_ptr);
56                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
57                __inner(__receiver, ::core::convert::Into::into(inst), __mi)
58            }
59        }
60    }
61}
62
63#[cfg(feature = "app-procdescyield")]
64impl<__T: IProcDescYield> IProcDescYieldMethods for __T {}
65
66#[cfg(feature = "app-procdescyield")]
67impl ProcDescYield {
68    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
69        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
70    }
71
72    pub fn execute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
73        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
74    }
75}
76
77#[cfg(feature = "app-procdescyield")]
78impl ProcDescYield {
79    #[doc = "Direct (non-virtual) call to `ProcDescYield`'s own `Execute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
80    pub unsafe fn execute(
81        this: impl ::core::convert::Into<::unity::IlInstance>,
82        inst: crate::app::procinst::ProcInst,
83    ) -> crate::app::procdesc::ProcDesc_Result {
84        let __mi = Self::execute_method_info();
85        let __inner: extern "C" fn(
86            ::unity::IlInstance,
87            crate::app::procinst::ProcInst,
88            ::unity::OptionalMethod,
89        ) -> crate::app::procdesc::ProcDesc_Result = ::core::mem::transmute(__mi.method_ptr);
90        __inner(this.into(), inst, ::core::option::Option::None)
91    }
92}
93
94#[cfg(feature = "app-procdescyield")]
95impl ProcDescYield {
96    #[doc = "`.ctor()` — no args"]
97    pub fn new() -> Self {
98        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
99            panic!(
100                "{}
101::{}
102 failed to instantiate",
103                ::core::stringify!(ProcDescYield),
104                ::core::stringify!(new),
105            )
106        });
107        <Self as IProcDescYieldMethods>::ctor(this);
108        this
109    }
110}
111
112#[cfg(feature = "app-procdescyield")]
113#[doc(hidden)]
114pub mod prelude {
115    pub use super::{IProcDescYield, IProcDescYieldMethods, ProcDescYield};
116    #[cfg(feature = "app-procdesc")]
117    pub use crate::app::procdesc::IProcDescMethods;
118    #[cfg(feature = "system-object")]
119    pub use crate::system::object::IObjectMethods;
120    pub use crate::{app::procdesc::IProcDesc, system::object::IObject};
121}