Skip to main content

engage/generated/moon_sharp/interpreter/interop/
objectcallbackmemberdescriptor.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        moon_sharp::interpreter::interop::functionmemberdescriptorbase::{FunctionMemberDescriptorBase, IFunctionMemberDescriptorBase},
10        system::object::{IObject, Object},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/moon_sharp/interpreter/interop/objectcallbackmemberdescriptor/ObjectCallbackMemberDescriptor.md"))]
14    #[::unity::class(namespace = "MoonSharp.Interpreter.Interop", name = "ObjectCallbackMemberDescriptor")]
15    #[parent(crate::moon_sharp::interpreter::interop::functionmemberdescriptorbase::FunctionMemberDescriptorBase)]
16    pub struct ObjectCallbackMemberDescriptor {
17        #[offset(72)]
18        #[rename(name = "m_CallbackFunc")]
19        pub m_callback_func: crate::system::func_4::Func_4<
20            crate::system::object::Object,
21            crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
22            crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
23            crate::system::object::Object,
24        >,
25    }
26}
27
28#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor-types")]
29pub use __types::*;
30
31#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
32#[doc(hidden)]
33#[allow(non_snake_case, non_camel_case_types, clippy::too_many_arguments)]
34mod __ObjectCallbackMemberDescriptor_unity_raw {
35    use super::*;
36    #[doc(hidden)]
37    #[allow(non_snake_case)]
38    pub mod __lookup_ctor {
39        use super::*;
40        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
41            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[<::unity::Il2CppString as ::unity::IlType>::il_type()];
42            ::unity::lookup::method_info_on_class_with_signature(
43                <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::class(),
44                ".ctor",
45                1,
46                param_types,
47                false,
48            )
49        });
50        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
51            match &*METHOD {
52                ::core::result::Result::Ok(mi) => *mi,
53                ::core::result::Result::Err(e) => {
54                    panic!(
55                        "method lookup failed: {}
56::{}
57: {}
58",
59                        <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::NAME,
60                        ".ctor",
61                        e
62                    )
63                },
64            }
65        }
66    }
67    #[doc(hidden)]
68    #[allow(non_snake_case)]
69    pub mod __lookup_ctor_2 {
70        use super::*;
71        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
72            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[
73                <::unity::Il2CppString as ::unity::IlType>::il_type(),
74                <crate::system::func_4::Func_4<
75                    crate::system::object::Object,
76                    crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
77                    crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
78                    crate::system::object::Object,
79                > as ::unity::IlType>::il_type(),
80            ];
81            ::unity::lookup::method_info_on_class_with_signature(
82                <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::class(),
83                ".ctor",
84                2,
85                param_types,
86                false,
87            )
88        });
89        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
90            match &*METHOD {
91                ::core::result::Result::Ok(mi) => *mi,
92                ::core::result::Result::Err(e) => {
93                    panic!(
94                        "method lookup failed: {}
95::{}
96: {}
97",
98                        <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::NAME,
99                        ".ctor",
100                        e
101                    )
102                },
103            }
104        }
105    }
106    #[doc(hidden)]
107    #[allow(non_snake_case)]
108    pub mod __lookup_ctor_3 {
109        use super::*;
110        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
111            let param_types: &[& 'static::unity::il2cpp::Il2CppType]= &[< ::unity::Il2CppString as::unity::IlType> ::il_type(), <crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>as::unity::IlType> ::il_type(), < ::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>as::unity::IlType> ::il_type()];
112            ::unity::lookup::method_info_on_class_with_signature(
113                <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::class(),
114                ".ctor",
115                3,
116                param_types,
117                false,
118            )
119        });
120        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
121            match &*METHOD {
122                ::core::result::Result::Ok(mi) => *mi,
123                ::core::result::Result::Err(e) => {
124                    panic!(
125                        "method lookup failed: {}
126::{}
127: {}
128",
129                        <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::NAME,
130                        ".ctor",
131                        e
132                    )
133                },
134            }
135        }
136    }
137}
138
139#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
140pub trait IObjectCallbackMemberDescriptorMethods: IObjectCallbackMemberDescriptor {
141    #[doc = "`.ctor(::unity::Il2CppString)` overload"]
142    fn ctor(self, func_name: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
143        unsafe {
144            let __receiver =
145                <ObjectCallbackMemberDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
146            ::unity::il2cpp_call!(__ObjectCallbackMemberDescriptor_unity_raw::__lookup_ctor::get_method_info().method_ptr,();
147(ObjectCallbackMemberDescriptor)__receiver,(::unity::Il2CppString)::core::convert::Into::into(func_name))
148        }
149    }
150    #[doc = "`.ctor(::unity::Il2CppString, crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>)` overload"]
151    fn ctor_2(
152        self,
153        func_name: impl ::core::convert::Into<::unity::Il2CppString>,
154        call_back: impl ::core::convert::Into<
155            crate::system::func_4::Func_4<
156                crate::system::object::Object,
157                crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
158                crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
159                crate::system::object::Object,
160            >,
161        >,
162    ) -> () {
163        unsafe {
164            let __receiver =
165                <ObjectCallbackMemberDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
166            ::unity::il2cpp_call!(__ObjectCallbackMemberDescriptor_unity_raw::__lookup_ctor_2::get_method_info().method_ptr,();
167(ObjectCallbackMemberDescriptor)__receiver,(::unity::Il2CppString)::core::convert::Into::into(func_name),(crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>)::core::convert::Into::into(call_back))
168        }
169    }
170    #[doc = "`.ctor(::unity::Il2CppString, crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>, ::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>)` overload"]
171    fn ctor_3(
172        self,
173        func_name: impl ::core::convert::Into<::unity::Il2CppString>,
174        call_back: impl ::core::convert::Into<
175            crate::system::func_4::Func_4<
176                crate::system::object::Object,
177                crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
178                crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
179                crate::system::object::Object,
180            >,
181        >,
182        parameters: impl ::core::convert::Into<
183            ::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>,
184        >,
185    ) -> () {
186        unsafe {
187            let __receiver =
188                <ObjectCallbackMemberDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
189            ::unity::il2cpp_call!(__ObjectCallbackMemberDescriptor_unity_raw::__lookup_ctor_3::get_method_info().method_ptr,();
190(ObjectCallbackMemberDescriptor)__receiver,(::unity::Il2CppString)::core::convert::Into::into(func_name),(crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>)::core::convert::Into::into(call_back),(::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>)::core::convert::Into::into(parameters))
191        }
192    }
193    #[doc = "`Execute(crate::moon_sharp::interpreter::script::Script, crate::system::object::Object, crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext, crate::moon_sharp::interpreter::callbackarguments::CallbackArguments)` overload"]
194    fn execute(
195        self,
196        script: impl ::core::convert::Into<crate::moon_sharp::interpreter::script::Script>,
197        obj: impl ::core::convert::Into<crate::system::object::Object>,
198        context: impl ::core::convert::Into<crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext>,
199        args: impl ::core::convert::Into<crate::moon_sharp::interpreter::callbackarguments::CallbackArguments>,
200    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
201        unsafe {
202            let __receiver =
203                <ObjectCallbackMemberDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
204            {
205                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
206                let __vi = *__vt.get(16usize).unwrap_or_else(|| {
207                    panic!(
208                        "unity: virtual slot {}
209 out of range (vtable len {}
210) on the runtime class behind {}
211 (method `{}
212`)",
213                        16usize,
214                        __vt.len(),
215                        <ObjectCallbackMemberDescriptor as ::unity::ClassIdentity>::NAME,
216                        "Execute",
217                    )
218                });
219                let __inner: extern "C" fn(
220                    ObjectCallbackMemberDescriptor,
221                    crate::moon_sharp::interpreter::script::Script,
222                    crate::system::object::Object,
223                    crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
224                    crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
225                    ::unity::OptionalMethod,
226                ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::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(
229                    __receiver,
230                    ::core::convert::Into::into(script),
231                    ::core::convert::Into::into(obj),
232                    ::core::convert::Into::into(context),
233                    ::core::convert::Into::into(args),
234                    __mi,
235                )
236            }
237        }
238    }
239}
240
241#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
242impl<__T: IObjectCallbackMemberDescriptor> IObjectCallbackMemberDescriptorMethods for __T {}
243
244#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
245impl ObjectCallbackMemberDescriptor {
246    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
247        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
248    }
249
250    pub fn ctor_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
251        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
252    }
253
254    pub fn ctor_3_method_info() -> &'static ::unity::il2cpp::MethodInfo {
255        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
256    }
257
258    pub fn execute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
259        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
260    }
261}
262
263#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
264impl ObjectCallbackMemberDescriptor {
265    #[doc = "Direct (non-virtual) call to `ObjectCallbackMemberDescriptor`'s own `Execute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
266    pub unsafe fn execute(
267        this: impl ::core::convert::Into<::unity::IlInstance>,
268        script: crate::moon_sharp::interpreter::script::Script,
269        obj: crate::system::object::Object,
270        context: crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
271        args: crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
272    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
273        let __mi = Self::execute_method_info();
274        let __inner: extern "C" fn(
275            ::unity::IlInstance,
276            crate::moon_sharp::interpreter::script::Script,
277            crate::system::object::Object,
278            crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
279            crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
280            ::unity::OptionalMethod,
281        ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::core::mem::transmute(__mi.method_ptr);
282        __inner(this.into(), script, obj, context, args, ::core::option::Option::None)
283    }
284}
285
286#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
287impl ObjectCallbackMemberDescriptor {
288    #[doc = "`.ctor(::unity::Il2CppString)` — overload selector"]
289    pub fn new(func_name: ::unity::Il2CppString) -> Self {
290        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
291            panic!(
292                "{}
293::{}
294 failed to instantiate",
295                ::core::stringify!(ObjectCallbackMemberDescriptor),
296                ::core::stringify!(new),
297            )
298        });
299        <Self as IObjectCallbackMemberDescriptorMethods>::ctor(this, func_name);
300        this
301    }
302
303    #[doc = "`.ctor(::unity::Il2CppString, crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>)` — overload selector"]
304    pub fn new_2(
305        func_name: ::unity::Il2CppString,
306        call_back: crate::system::func_4::Func_4<
307            crate::system::object::Object,
308            crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
309            crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
310            crate::system::object::Object,
311        >,
312    ) -> Self {
313        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
314            panic!(
315                "{}
316::{}
317 failed to instantiate",
318                ::core::stringify!(ObjectCallbackMemberDescriptor),
319                ::core::stringify!(new_2),
320            )
321        });
322        <Self as IObjectCallbackMemberDescriptorMethods>::ctor_2(this, func_name, call_back);
323        this
324    }
325
326    #[doc = "`.ctor(::unity::Il2CppString, crate::system::func_4::Func_4<crate::system::object::Object,crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,crate::system::object::Object>, ::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>)` — overload selector"]
327    pub fn new_3(
328        func_name: ::unity::Il2CppString,
329        call_back: crate::system::func_4::Func_4<
330            crate::system::object::Object,
331            crate::moon_sharp::interpreter::scriptexecutioncontext::ScriptExecutionContext,
332            crate::moon_sharp::interpreter::callbackarguments::CallbackArguments,
333            crate::system::object::Object,
334        >,
335        parameters: ::unity::Array<crate::moon_sharp::interpreter::interop::basic_descriptors::parameterdescriptor::ParameterDescriptor>,
336    ) -> Self {
337        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
338            panic!(
339                "{}
340::{}
341 failed to instantiate",
342                ::core::stringify!(ObjectCallbackMemberDescriptor),
343                ::core::stringify!(new_3),
344            )
345        });
346        <Self as IObjectCallbackMemberDescriptorMethods>::ctor_3(this, func_name, call_back, parameters);
347        this
348    }
349}
350
351#[cfg(feature = "moon_sharp-interpreter-interop-objectcallbackmemberdescriptor")]
352#[doc(hidden)]
353pub mod prelude {
354    pub use super::{IObjectCallbackMemberDescriptor, IObjectCallbackMemberDescriptorMethods, ObjectCallbackMemberDescriptor};
355    #[cfg(feature = "moon_sharp-interpreter-interop-functionmemberdescriptorbase")]
356    pub use crate::moon_sharp::interpreter::interop::functionmemberdescriptorbase::IFunctionMemberDescriptorBaseMethods;
357    #[cfg(feature = "system-object")]
358    pub use crate::system::object::IObjectMethods;
359    pub use crate::{moon_sharp::interpreter::interop::functionmemberdescriptorbase::IFunctionMemberDescriptorBase, system::object::IObject};
360}