Skip to main content

engage/generated/app/
procdescmargs.rs

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