Skip to main content

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

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