Skip to main content

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

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor-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/moon_sharp/interpreter/interop/proxyuserdatadescriptor/ProxyUserDataDescriptor.md"))]
11    #[::unity::class(namespace = "MoonSharp.Interpreter.Interop", name = "ProxyUserDataDescriptor")]
12    #[parent(crate::system::object::Object)]
13    pub struct ProxyUserDataDescriptor {
14        #[offset(16)]
15        #[rename(name = "m_ProxyDescriptor")]
16        pub m_proxy_descriptor: crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor,
17        #[offset(24)]
18        #[rename(name = "m_ProxyFactory")]
19        pub m_proxy_factory: crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory,
20    }
21}
22
23#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor-types")]
24pub use __types::*;
25
26#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
27#[doc(hidden)]
28#[allow(non_snake_case, non_camel_case_types, clippy::too_many_arguments)]
29mod __ProxyUserDataDescriptor_unity_raw {
30    use super::*;
31    #[doc(hidden)]
32    #[allow(non_snake_case)]
33    pub mod __lookup_ctor {
34        use super::*;
35        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
36            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[
37                <crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory as ::unity::IlType>::il_type(),
38                <crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor as ::unity::IlType>::il_type(),
39                <::unity::Il2CppString as ::unity::IlType>::il_type(),
40            ];
41            ::unity::lookup::method_info_on_class_with_signature(
42                <ProxyUserDataDescriptor as ::unity::ClassIdentity>::class(),
43                ".ctor",
44                3,
45                param_types,
46                false,
47            )
48        });
49        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
50            match &*METHOD {
51                ::core::result::Result::Ok(mi) => *mi,
52                ::core::result::Result::Err(e) => {
53                    panic!(
54                        "method lookup failed: {}
55::{}
56: {}
57",
58                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
59                        ".ctor",
60                        e
61                    )
62                },
63            }
64        }
65    }
66    #[doc(hidden)]
67    #[allow(non_snake_case)]
68    pub mod __lookup_get_inner_descriptor {
69        use super::*;
70        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
71            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[];
72            ::unity::lookup::method_info_on_class_with_signature(
73                <ProxyUserDataDescriptor as ::unity::ClassIdentity>::class(),
74                "get_InnerDescriptor",
75                0,
76                param_types,
77                false,
78            )
79        });
80        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
81            match &*METHOD {
82                ::core::result::Result::Ok(mi) => *mi,
83                ::core::result::Result::Err(e) => {
84                    panic!(
85                        "method lookup failed: {}
86::{}
87: {}
88",
89                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
90                        "get_InnerDescriptor",
91                        e
92                    )
93                },
94            }
95        }
96    }
97    #[doc(hidden)]
98    #[allow(non_snake_case)]
99    pub mod __lookup_set_name {
100        use super::*;
101        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
102            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[<::unity::Il2CppString as ::unity::IlType>::il_type()];
103            ::unity::lookup::method_info_on_class_with_signature(
104                <ProxyUserDataDescriptor as ::unity::ClassIdentity>::class(),
105                "set_Name",
106                1,
107                param_types,
108                false,
109            )
110        });
111        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
112            match &*METHOD {
113                ::core::result::Result::Ok(mi) => *mi,
114                ::core::result::Result::Err(e) => {
115                    panic!(
116                        "method lookup failed: {}
117::{}
118: {}
119",
120                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
121                        "set_Name",
122                        e
123                    )
124                },
125            }
126        }
127    }
128    #[doc(hidden)]
129    #[allow(non_snake_case)]
130    pub mod __lookup_proxy {
131        use super::*;
132        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
133            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[<crate::system::object::Object as ::unity::IlType>::il_type()];
134            ::unity::lookup::method_info_on_class_with_signature(
135                <ProxyUserDataDescriptor as ::unity::ClassIdentity>::class(),
136                "Proxy",
137                1,
138                param_types,
139                false,
140            )
141        });
142        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
143            match &*METHOD {
144                ::core::result::Result::Ok(mi) => *mi,
145                ::core::result::Result::Err(e) => {
146                    panic!(
147                        "method lookup failed: {}
148::{}
149: {}
150",
151                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
152                        "Proxy",
153                        e
154                    )
155                },
156            }
157        }
158    }
159}
160
161#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
162pub trait IProxyUserDataDescriptorMethods: IProxyUserDataDescriptor {
163    #[doc = "`.ctor(crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory, crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor, ::unity::Il2CppString)` overload"]
164    fn ctor(
165        self,
166        proxy_factory: impl ::core::convert::Into<crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory>,
167        proxy_descriptor: impl ::core::convert::Into<crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor>,
168        friendly_name: impl ::core::convert::Into<::unity::Il2CppString>,
169    ) -> () {
170        unsafe {
171            let __receiver =
172                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
173            ::unity::il2cpp_call!(__ProxyUserDataDescriptor_unity_raw::__lookup_ctor::get_method_info().method_ptr,();
174(ProxyUserDataDescriptor)__receiver,(crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory)::core::convert::Into::into(proxy_factory),(crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor)::core::convert::Into::into(proxy_descriptor),(::unity::Il2CppString)::core::convert::Into::into(friendly_name))
175        }
176    }
177    #[doc = "`get_InnerDescriptor()` overload"]
178    fn get_inner_descriptor(self) -> crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor {
179        unsafe {
180            let __receiver =
181                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
182            ::unity::il2cpp_call!(__ProxyUserDataDescriptor_unity_raw::__lookup_get_inner_descriptor::get_method_info().method_ptr,crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor;
183(ProxyUserDataDescriptor)__receiver)
184        }
185    }
186    #[doc = "`get_Name()` overload"]
187    fn get_name(self) -> ::unity::Il2CppString {
188        unsafe {
189            let __receiver =
190                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
191            {
192                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
193                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
194                    panic!(
195                        "unity: virtual slot {}
196 out of range (vtable len {}
197) on the runtime class behind {}
198 (method `{}
199`)",
200                        4usize,
201                        __vt.len(),
202                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
203                        "get_Name",
204                    )
205                });
206                let __inner: extern "C" fn(ProxyUserDataDescriptor, ::unity::OptionalMethod) -> ::unity::Il2CppString =
207                    ::core::mem::transmute(__vi.method_ptr);
208                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
209                __inner(__receiver, __mi)
210            }
211        }
212    }
213    #[doc = "`set_Name(::unity::Il2CppString)` overload"]
214    fn set_name(self, value: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
215        unsafe {
216            let __receiver =
217                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
218            ::unity::il2cpp_call!(__ProxyUserDataDescriptor_unity_raw::__lookup_set_name::get_method_info().method_ptr,();
219(ProxyUserDataDescriptor)__receiver,(::unity::Il2CppString)::core::convert::Into::into(value))
220        }
221    }
222    #[doc = "`get_Type()` overload"]
223    fn get_type(self) -> ::unity::SystemType {
224        unsafe {
225            let __receiver =
226                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
227            {
228                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
229                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
230                    panic!(
231                        "unity: virtual slot {}
232 out of range (vtable len {}
233) on the runtime class behind {}
234 (method `{}
235`)",
236                        5usize,
237                        __vt.len(),
238                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
239                        "get_Type",
240                    )
241                });
242                let __inner: extern "C" fn(ProxyUserDataDescriptor, ::unity::OptionalMethod) -> ::unity::SystemType =
243                    ::core::mem::transmute(__vi.method_ptr);
244                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
245                __inner(__receiver, __mi)
246            }
247        }
248    }
249    #[doc = "`Proxy(crate::system::object::Object)` overload"]
250    fn proxy(self, obj: impl ::core::convert::Into<crate::system::object::Object>) -> crate::system::object::Object {
251        unsafe {
252            let __receiver =
253                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
254            ::unity::il2cpp_call!(__ProxyUserDataDescriptor_unity_raw::__lookup_proxy::get_method_info().method_ptr,crate::system::object::Object;
255(ProxyUserDataDescriptor)__receiver,(crate::system::object::Object)::core::convert::Into::into(obj))
256        }
257    }
258    #[doc = "`Index(crate::moon_sharp::interpreter::script::Script, crate::system::object::Object, crate::moon_sharp::interpreter::dynvalue::DynValue, bool)` overload"]
259    fn index(
260        self,
261        script: impl ::core::convert::Into<crate::moon_sharp::interpreter::script::Script>,
262        obj: impl ::core::convert::Into<crate::system::object::Object>,
263        index: impl ::core::convert::Into<crate::moon_sharp::interpreter::dynvalue::DynValue>,
264        is_direct_indexing: impl ::core::convert::Into<bool>,
265    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
266        unsafe {
267            let __receiver =
268                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
269            {
270                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
271                let __vi = *__vt.get(6usize).unwrap_or_else(|| {
272                    panic!(
273                        "unity: virtual slot {}
274 out of range (vtable len {}
275) on the runtime class behind {}
276 (method `{}
277`)",
278                        6usize,
279                        __vt.len(),
280                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
281                        "Index",
282                    )
283                });
284                let __inner: extern "C" fn(
285                    ProxyUserDataDescriptor,
286                    crate::moon_sharp::interpreter::script::Script,
287                    crate::system::object::Object,
288                    crate::moon_sharp::interpreter::dynvalue::DynValue,
289                    bool,
290                    ::unity::OptionalMethod,
291                ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::core::mem::transmute(__vi.method_ptr);
292                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
293                __inner(
294                    __receiver,
295                    ::core::convert::Into::into(script),
296                    ::core::convert::Into::into(obj),
297                    ::core::convert::Into::into(index),
298                    ::core::convert::Into::into(is_direct_indexing),
299                    __mi,
300                )
301            }
302        }
303    }
304    #[doc = "`SetIndex(crate::moon_sharp::interpreter::script::Script, crate::system::object::Object, crate::moon_sharp::interpreter::dynvalue::DynValue, crate::moon_sharp::interpreter::dynvalue::DynValue, bool)` overload"]
305    fn set_index(
306        self,
307        script: impl ::core::convert::Into<crate::moon_sharp::interpreter::script::Script>,
308        obj: impl ::core::convert::Into<crate::system::object::Object>,
309        index: impl ::core::convert::Into<crate::moon_sharp::interpreter::dynvalue::DynValue>,
310        value: impl ::core::convert::Into<crate::moon_sharp::interpreter::dynvalue::DynValue>,
311        is_direct_indexing: impl ::core::convert::Into<bool>,
312    ) -> bool {
313        unsafe {
314            let __receiver =
315                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
316            {
317                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
318                let __vi = *__vt.get(7usize).unwrap_or_else(|| {
319                    panic!(
320                        "unity: virtual slot {}
321 out of range (vtable len {}
322) on the runtime class behind {}
323 (method `{}
324`)",
325                        7usize,
326                        __vt.len(),
327                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
328                        "SetIndex",
329                    )
330                });
331                let __inner: extern "C" fn(
332                    ProxyUserDataDescriptor,
333                    crate::moon_sharp::interpreter::script::Script,
334                    crate::system::object::Object,
335                    crate::moon_sharp::interpreter::dynvalue::DynValue,
336                    crate::moon_sharp::interpreter::dynvalue::DynValue,
337                    bool,
338                    ::unity::OptionalMethod,
339                ) -> bool = ::core::mem::transmute(__vi.method_ptr);
340                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
341                __inner(
342                    __receiver,
343                    ::core::convert::Into::into(script),
344                    ::core::convert::Into::into(obj),
345                    ::core::convert::Into::into(index),
346                    ::core::convert::Into::into(value),
347                    ::core::convert::Into::into(is_direct_indexing),
348                    __mi,
349                )
350            }
351        }
352    }
353    #[doc = "`AsString(crate::system::object::Object)` overload"]
354    fn as_string(self, obj: impl ::core::convert::Into<crate::system::object::Object>) -> ::unity::Il2CppString {
355        unsafe {
356            let __receiver =
357                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
358            {
359                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
360                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
361                    panic!(
362                        "unity: virtual slot {}
363 out of range (vtable len {}
364) on the runtime class behind {}
365 (method `{}
366`)",
367                        8usize,
368                        __vt.len(),
369                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
370                        "AsString",
371                    )
372                });
373                let __inner: extern "C" fn(ProxyUserDataDescriptor, crate::system::object::Object, ::unity::OptionalMethod) -> ::unity::Il2CppString =
374                    ::core::mem::transmute(__vi.method_ptr);
375                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
376                __inner(__receiver, ::core::convert::Into::into(obj), __mi)
377            }
378        }
379    }
380    #[doc = "`MetaIndex(crate::moon_sharp::interpreter::script::Script, crate::system::object::Object, ::unity::Il2CppString)` overload"]
381    fn meta_index(
382        self,
383        script: impl ::core::convert::Into<crate::moon_sharp::interpreter::script::Script>,
384        obj: impl ::core::convert::Into<crate::system::object::Object>,
385        metaname: impl ::core::convert::Into<::unity::Il2CppString>,
386    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
387        unsafe {
388            let __receiver =
389                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
390            {
391                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
392                let __vi = *__vt.get(9usize).unwrap_or_else(|| {
393                    panic!(
394                        "unity: virtual slot {}
395 out of range (vtable len {}
396) on the runtime class behind {}
397 (method `{}
398`)",
399                        9usize,
400                        __vt.len(),
401                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
402                        "MetaIndex",
403                    )
404                });
405                let __inner: extern "C" fn(
406                    ProxyUserDataDescriptor,
407                    crate::moon_sharp::interpreter::script::Script,
408                    crate::system::object::Object,
409                    ::unity::Il2CppString,
410                    ::unity::OptionalMethod,
411                ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::core::mem::transmute(__vi.method_ptr);
412                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
413                __inner(
414                    __receiver,
415                    ::core::convert::Into::into(script),
416                    ::core::convert::Into::into(obj),
417                    ::core::convert::Into::into(metaname),
418                    __mi,
419                )
420            }
421        }
422    }
423    #[doc = "`IsTypeCompatible(::unity::SystemType, crate::system::object::Object)` overload"]
424    fn is_type_compatible(
425        self,
426        r#type: impl ::core::convert::Into<::unity::SystemType>,
427        obj: impl ::core::convert::Into<crate::system::object::Object>,
428    ) -> bool {
429        unsafe {
430            let __receiver =
431                <ProxyUserDataDescriptor as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
432            {
433                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
434                let __vi = *__vt.get(10usize).unwrap_or_else(|| {
435                    panic!(
436                        "unity: virtual slot {}
437 out of range (vtable len {}
438) on the runtime class behind {}
439 (method `{}
440`)",
441                        10usize,
442                        __vt.len(),
443                        <ProxyUserDataDescriptor as ::unity::ClassIdentity>::NAME,
444                        "IsTypeCompatible",
445                    )
446                });
447                let __inner: extern "C" fn(
448                    ProxyUserDataDescriptor,
449                    ::unity::SystemType,
450                    crate::system::object::Object,
451                    ::unity::OptionalMethod,
452                ) -> bool = ::core::mem::transmute(__vi.method_ptr);
453                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
454                __inner(__receiver, ::core::convert::Into::into(r#type), ::core::convert::Into::into(obj), __mi)
455            }
456        }
457    }
458}
459
460#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
461impl<__T: IProxyUserDataDescriptor> IProxyUserDataDescriptorMethods for __T {}
462
463#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
464impl ProxyUserDataDescriptor {
465    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
466        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
467    }
468
469    pub fn get_inner_descriptor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
470        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
471    }
472
473    pub fn get_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
474        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
475    }
476
477    pub fn set_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
478        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
479    }
480
481    pub fn get_type_method_info() -> &'static ::unity::il2cpp::MethodInfo {
482        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
483    }
484
485    pub fn proxy_method_info() -> &'static ::unity::il2cpp::MethodInfo {
486        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
487    }
488
489    pub fn index_method_info() -> &'static ::unity::il2cpp::MethodInfo {
490        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
491    }
492
493    pub fn set_index_method_info() -> &'static ::unity::il2cpp::MethodInfo {
494        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
495    }
496
497    pub fn as_string_method_info() -> &'static ::unity::il2cpp::MethodInfo {
498        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
499    }
500
501    pub fn meta_index_method_info() -> &'static ::unity::il2cpp::MethodInfo {
502        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
503    }
504
505    pub fn is_type_compatible_method_info() -> &'static ::unity::il2cpp::MethodInfo {
506        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
507    }
508}
509
510#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
511impl ProxyUserDataDescriptor {
512    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `get_Name`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
513    pub unsafe fn get_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
514        let __mi = Self::get_name_method_info();
515        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
516        __inner(this.into(), ::core::option::Option::None)
517    }
518
519    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `get_Type`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
520    pub unsafe fn get_type(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::SystemType {
521        let __mi = Self::get_type_method_info();
522        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::SystemType = ::core::mem::transmute(__mi.method_ptr);
523        __inner(this.into(), ::core::option::Option::None)
524    }
525
526    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `Index`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
527    pub unsafe fn index(
528        this: impl ::core::convert::Into<::unity::IlInstance>,
529        script: crate::moon_sharp::interpreter::script::Script,
530        obj: crate::system::object::Object,
531        index: crate::moon_sharp::interpreter::dynvalue::DynValue,
532        is_direct_indexing: bool,
533    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
534        let __mi = Self::index_method_info();
535        let __inner: extern "C" fn(
536            ::unity::IlInstance,
537            crate::moon_sharp::interpreter::script::Script,
538            crate::system::object::Object,
539            crate::moon_sharp::interpreter::dynvalue::DynValue,
540            bool,
541            ::unity::OptionalMethod,
542        ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::core::mem::transmute(__mi.method_ptr);
543        __inner(this.into(), script, obj, index, is_direct_indexing, ::core::option::Option::None)
544    }
545
546    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `SetIndex`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
547    pub unsafe fn set_index(
548        this: impl ::core::convert::Into<::unity::IlInstance>,
549        script: crate::moon_sharp::interpreter::script::Script,
550        obj: crate::system::object::Object,
551        index: crate::moon_sharp::interpreter::dynvalue::DynValue,
552        value: crate::moon_sharp::interpreter::dynvalue::DynValue,
553        is_direct_indexing: bool,
554    ) -> bool {
555        let __mi = Self::set_index_method_info();
556        let __inner: extern "C" fn(
557            ::unity::IlInstance,
558            crate::moon_sharp::interpreter::script::Script,
559            crate::system::object::Object,
560            crate::moon_sharp::interpreter::dynvalue::DynValue,
561            crate::moon_sharp::interpreter::dynvalue::DynValue,
562            bool,
563            ::unity::OptionalMethod,
564        ) -> bool = ::core::mem::transmute(__mi.method_ptr);
565        __inner(this.into(), script, obj, index, value, is_direct_indexing, ::core::option::Option::None)
566    }
567
568    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `AsString`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
569    pub unsafe fn as_string(this: impl ::core::convert::Into<::unity::IlInstance>, obj: crate::system::object::Object) -> ::unity::Il2CppString {
570        let __mi = Self::as_string_method_info();
571        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> ::unity::Il2CppString =
572            ::core::mem::transmute(__mi.method_ptr);
573        __inner(this.into(), obj, ::core::option::Option::None)
574    }
575
576    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `MetaIndex`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
577    pub unsafe fn meta_index(
578        this: impl ::core::convert::Into<::unity::IlInstance>,
579        script: crate::moon_sharp::interpreter::script::Script,
580        obj: crate::system::object::Object,
581        metaname: ::unity::Il2CppString,
582    ) -> crate::moon_sharp::interpreter::dynvalue::DynValue {
583        let __mi = Self::meta_index_method_info();
584        let __inner: extern "C" fn(
585            ::unity::IlInstance,
586            crate::moon_sharp::interpreter::script::Script,
587            crate::system::object::Object,
588            ::unity::Il2CppString,
589            ::unity::OptionalMethod,
590        ) -> crate::moon_sharp::interpreter::dynvalue::DynValue = ::core::mem::transmute(__mi.method_ptr);
591        __inner(this.into(), script, obj, metaname, ::core::option::Option::None)
592    }
593
594    #[doc = "Direct (non-virtual) call to `ProxyUserDataDescriptor`'s own `IsTypeCompatible`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
595    pub unsafe fn is_type_compatible(
596        this: impl ::core::convert::Into<::unity::IlInstance>,
597        r#type: ::unity::SystemType,
598        obj: crate::system::object::Object,
599    ) -> bool {
600        let __mi = Self::is_type_compatible_method_info();
601        let __inner: extern "C" fn(::unity::IlInstance, ::unity::SystemType, crate::system::object::Object, ::unity::OptionalMethod) -> bool =
602            ::core::mem::transmute(__mi.method_ptr);
603        __inner(this.into(), r#type, obj, ::core::option::Option::None)
604    }
605}
606
607#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
608impl ProxyUserDataDescriptor {
609    #[doc = "`.ctor(crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory, crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor, ::unity::Il2CppString)` — overload selector"]
610    pub fn new(
611        proxy_factory: crate::moon_sharp::interpreter::interop::iproxyfactory::IProxyFactory,
612        proxy_descriptor: crate::moon_sharp::interpreter::interop::iuserdatadescriptor::IUserDataDescriptor,
613        friendly_name: ::unity::Il2CppString,
614    ) -> Self {
615        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
616            panic!(
617                "{}
618::{}
619 failed to instantiate",
620                ::core::stringify!(ProxyUserDataDescriptor),
621                ::core::stringify!(new),
622            )
623        });
624        <Self as IProxyUserDataDescriptorMethods>::ctor(this, proxy_factory, proxy_descriptor, friendly_name);
625        this
626    }
627}
628
629#[cfg(feature = "moon_sharp-interpreter-interop-proxyuserdatadescriptor")]
630#[doc(hidden)]
631pub mod prelude {
632    pub use super::{IProxyUserDataDescriptor, IProxyUserDataDescriptorMethods, ProxyUserDataDescriptor};
633    pub use crate::system::object::IObject;
634    #[cfg(feature = "system-object")]
635    pub use crate::system::object::IObjectMethods;
636}