Skip to main content

engage/generated/system/collections/
collectionbase.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "system-collections-collectionbase-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/system/collections/collectionbase/CollectionBase.md"))]
11    #[::unity::class(namespace = "System.Collections", name = "CollectionBase")]
12    #[parent(crate::system::object::Object)]
13    pub struct CollectionBase {
14        #[offset(16)]
15        #[rename(name = "list")]
16        pub list: crate::system::collections::arraylist::ArrayList,
17    }
18}
19
20#[cfg(feature = "system-collections-collectionbase-types")]
21pub use __types::*;
22
23#[cfg(feature = "system-collections-collectionbase")]
24pub trait ICollectionBaseMethods: ICollectionBase {
25    #[doc = "`.ctor()` overload"]
26    fn ctor(self) -> () {
27        unsafe {
28            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
29            ::unity::il2cpp_call!((::unity::module_base()+0x31da2e0usize)as*mut u8,();
30(CollectionBase)__receiver)
31        }
32    }
33    #[doc = "`get_InnerList()` overload"]
34    fn get_inner_list(self) -> crate::system::collections::arraylist::ArrayList {
35        unsafe {
36            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
37            ::unity::il2cpp_call!((::unity::module_base()+0x31da360usize)as*mut u8,crate::system::collections::arraylist::ArrayList;
38(CollectionBase)__receiver)
39        }
40    }
41    #[doc = "`get_List()` overload"]
42    fn get_list(self) -> crate::system::collections::ilist::IList {
43        unsafe {
44            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
45            ::unity::il2cpp_call!((::unity::module_base()+0x31da3f0usize)as*mut u8,crate::system::collections::ilist::IList;
46(CollectionBase)__receiver)
47        }
48    }
49    #[doc = "`get_Count()` overload"]
50    fn get_count(self) -> i32 {
51        unsafe {
52            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
53            {
54                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
55                let __vi = *__vt.get(15usize).unwrap_or_else(|| {
56                    panic!(
57                        "unity: virtual slot {}
58 out of range (vtable len {}
59) on the runtime class behind {}
60 (method `{}
61`)",
62                        15usize,
63                        __vt.len(),
64                        <CollectionBase as ::unity::ClassIdentity>::NAME,
65                        "get_Count",
66                    )
67                });
68                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> i32 = ::core::mem::transmute(__vi.method_ptr);
69                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
70                __inner(__receiver, __mi)
71            }
72        }
73    }
74    #[doc = "`Clear()` overload"]
75    fn clear(self) -> () {
76        unsafe {
77            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
78            {
79                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
80                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
81                    panic!(
82                        "unity: virtual slot {}
83 out of range (vtable len {}
84) on the runtime class behind {}
85 (method `{}
86`)",
87                        8usize,
88                        __vt.len(),
89                        <CollectionBase as ::unity::ClassIdentity>::NAME,
90                        "Clear",
91                    )
92                });
93                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
94                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
95                __inner(__receiver, __mi)
96            }
97        }
98    }
99    #[doc = "`RemoveAt(i32)` overload"]
100    fn remove_at(self, index: impl ::core::convert::Into<i32>) -> () {
101        unsafe {
102            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
103            {
104                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
105                let __vi = *__vt.get(13usize).unwrap_or_else(|| {
106                    panic!(
107                        "unity: virtual slot {}
108 out of range (vtable len {}
109) on the runtime class behind {}
110 (method `{}
111`)",
112                        13usize,
113                        __vt.len(),
114                        <CollectionBase as ::unity::ClassIdentity>::NAME,
115                        "RemoveAt",
116                    )
117                });
118                let __inner: extern "C" fn(CollectionBase, i32, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
119                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
120                __inner(__receiver, ::core::convert::Into::into(index), __mi)
121            }
122        }
123    }
124    #[doc = "`System.Collections.IList.get_IsReadOnly()` overload"]
125    fn system_collections_i_list_get_is_read_only(self) -> bool {
126        unsafe {
127            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
128            {
129                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
130                let __vi = *__vt.get(9usize).unwrap_or_else(|| {
131                    panic!(
132                        "unity: virtual slot {}
133 out of range (vtable len {}
134) on the runtime class behind {}
135 (method `{}
136`)",
137                        9usize,
138                        __vt.len(),
139                        <CollectionBase as ::unity::ClassIdentity>::NAME,
140                        "System.Collections.IList.get_IsReadOnly",
141                    )
142                });
143                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__vi.method_ptr);
144                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
145                __inner(__receiver, __mi)
146            }
147        }
148    }
149    #[doc = "`System.Collections.ICollection.get_IsSynchronized()` overload"]
150    fn system_collections_i_collection_get_is_synchronized(self) -> bool {
151        unsafe {
152            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
153            {
154                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
155                let __vi = *__vt.get(17usize).unwrap_or_else(|| {
156                    panic!(
157                        "unity: virtual slot {}
158 out of range (vtable len {}
159) on the runtime class behind {}
160 (method `{}
161`)",
162                        17usize,
163                        __vt.len(),
164                        <CollectionBase as ::unity::ClassIdentity>::NAME,
165                        "System.Collections.ICollection.get_IsSynchronized",
166                    )
167                });
168                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__vi.method_ptr);
169                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
170                __inner(__receiver, __mi)
171            }
172        }
173    }
174    #[doc = "`System.Collections.ICollection.get_SyncRoot()` overload"]
175    fn system_collections_i_collection_get_sync_root(self) -> crate::system::object::Object {
176        unsafe {
177            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
178            {
179                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
180                let __vi = *__vt.get(16usize).unwrap_or_else(|| {
181                    panic!(
182                        "unity: virtual slot {}
183 out of range (vtable len {}
184) on the runtime class behind {}
185 (method `{}
186`)",
187                        16usize,
188                        __vt.len(),
189                        <CollectionBase as ::unity::ClassIdentity>::NAME,
190                        "System.Collections.ICollection.get_SyncRoot",
191                    )
192                });
193                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> crate::system::object::Object =
194                    ::core::mem::transmute(__vi.method_ptr);
195                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
196                __inner(__receiver, __mi)
197            }
198        }
199    }
200    #[doc = "`System.Collections.ICollection.CopyTo(::unity::IlInstance, i32)` overload"]
201    fn system_collections_i_collection_copy_to(
202        self,
203        array: impl ::core::convert::Into<::unity::IlInstance>,
204        index: impl ::core::convert::Into<i32>,
205    ) -> () {
206        unsafe {
207            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
208            {
209                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
210                let __vi = *__vt.get(14usize).unwrap_or_else(|| {
211                    panic!(
212                        "unity: virtual slot {}
213 out of range (vtable len {}
214) on the runtime class behind {}
215 (method `{}
216`)",
217                        14usize,
218                        __vt.len(),
219                        <CollectionBase as ::unity::ClassIdentity>::NAME,
220                        "System.Collections.ICollection.CopyTo",
221                    )
222                });
223                let __inner: extern "C" fn(CollectionBase, ::unity::IlInstance, i32, ::unity::OptionalMethod) -> () =
224                    ::core::mem::transmute(__vi.method_ptr);
225                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
226                __inner(__receiver, ::core::convert::Into::into(array), ::core::convert::Into::into(index), __mi)
227            }
228        }
229    }
230    #[doc = "`System.Collections.IList.get_Item(i32)` overload"]
231    fn system_collections_i_list_get_item(self, index: impl ::core::convert::Into<i32>) -> crate::system::object::Object {
232        unsafe {
233            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
234            {
235                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
236                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
237                    panic!(
238                        "unity: virtual slot {}
239 out of range (vtable len {}
240) on the runtime class behind {}
241 (method `{}
242`)",
243                        4usize,
244                        __vt.len(),
245                        <CollectionBase as ::unity::ClassIdentity>::NAME,
246                        "System.Collections.IList.get_Item",
247                    )
248                });
249                let __inner: extern "C" fn(CollectionBase, i32, ::unity::OptionalMethod) -> crate::system::object::Object =
250                    ::core::mem::transmute(__vi.method_ptr);
251                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
252                __inner(__receiver, ::core::convert::Into::into(index), __mi)
253            }
254        }
255    }
256    #[doc = "`System.Collections.IList.set_Item(i32, crate::system::object::Object)` overload"]
257    fn system_collections_i_list_set_item(
258        self,
259        index: impl ::core::convert::Into<i32>,
260        value: impl ::core::convert::Into<crate::system::object::Object>,
261    ) -> () {
262        unsafe {
263            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
264            {
265                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
266                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
267                    panic!(
268                        "unity: virtual slot {}
269 out of range (vtable len {}
270) on the runtime class behind {}
271 (method `{}
272`)",
273                        5usize,
274                        __vt.len(),
275                        <CollectionBase as ::unity::ClassIdentity>::NAME,
276                        "System.Collections.IList.set_Item",
277                    )
278                });
279                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
280                    ::core::mem::transmute(__vi.method_ptr);
281                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
282                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
283            }
284        }
285    }
286    #[doc = "`System.Collections.IList.Contains(crate::system::object::Object)` overload"]
287    fn system_collections_i_list_contains(self, value: impl ::core::convert::Into<crate::system::object::Object>) -> bool {
288        unsafe {
289            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
290            {
291                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
292                let __vi = *__vt.get(7usize).unwrap_or_else(|| {
293                    panic!(
294                        "unity: virtual slot {}
295 out of range (vtable len {}
296) on the runtime class behind {}
297 (method `{}
298`)",
299                        7usize,
300                        __vt.len(),
301                        <CollectionBase as ::unity::ClassIdentity>::NAME,
302                        "System.Collections.IList.Contains",
303                    )
304                });
305                let __inner: extern "C" fn(CollectionBase, crate::system::object::Object, ::unity::OptionalMethod) -> bool =
306                    ::core::mem::transmute(__vi.method_ptr);
307                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
308                __inner(__receiver, ::core::convert::Into::into(value), __mi)
309            }
310        }
311    }
312    #[doc = "`System.Collections.IList.Add(crate::system::object::Object)` overload"]
313    fn system_collections_i_list_add(self, value: impl ::core::convert::Into<crate::system::object::Object>) -> i32 {
314        unsafe {
315            let __receiver = <CollectionBase 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(6usize).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                        6usize,
326                        __vt.len(),
327                        <CollectionBase as ::unity::ClassIdentity>::NAME,
328                        "System.Collections.IList.Add",
329                    )
330                });
331                let __inner: extern "C" fn(CollectionBase, crate::system::object::Object, ::unity::OptionalMethod) -> i32 =
332                    ::core::mem::transmute(__vi.method_ptr);
333                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
334                __inner(__receiver, ::core::convert::Into::into(value), __mi)
335            }
336        }
337    }
338    #[doc = "`System.Collections.IList.Remove(crate::system::object::Object)` overload"]
339    fn system_collections_i_list_remove(self, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
340        unsafe {
341            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
342            {
343                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
344                let __vi = *__vt.get(12usize).unwrap_or_else(|| {
345                    panic!(
346                        "unity: virtual slot {}
347 out of range (vtable len {}
348) on the runtime class behind {}
349 (method `{}
350`)",
351                        12usize,
352                        __vt.len(),
353                        <CollectionBase as ::unity::ClassIdentity>::NAME,
354                        "System.Collections.IList.Remove",
355                    )
356                });
357                let __inner: extern "C" fn(CollectionBase, crate::system::object::Object, ::unity::OptionalMethod) -> () =
358                    ::core::mem::transmute(__vi.method_ptr);
359                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
360                __inner(__receiver, ::core::convert::Into::into(value), __mi)
361            }
362        }
363    }
364    #[doc = "`System.Collections.IList.IndexOf(crate::system::object::Object)` overload"]
365    fn system_collections_i_list_index_of(self, value: impl ::core::convert::Into<crate::system::object::Object>) -> i32 {
366        unsafe {
367            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
368            {
369                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
370                let __vi = *__vt.get(10usize).unwrap_or_else(|| {
371                    panic!(
372                        "unity: virtual slot {}
373 out of range (vtable len {}
374) on the runtime class behind {}
375 (method `{}
376`)",
377                        10usize,
378                        __vt.len(),
379                        <CollectionBase as ::unity::ClassIdentity>::NAME,
380                        "System.Collections.IList.IndexOf",
381                    )
382                });
383                let __inner: extern "C" fn(CollectionBase, crate::system::object::Object, ::unity::OptionalMethod) -> i32 =
384                    ::core::mem::transmute(__vi.method_ptr);
385                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
386                __inner(__receiver, ::core::convert::Into::into(value), __mi)
387            }
388        }
389    }
390    #[doc = "`System.Collections.IList.Insert(i32, crate::system::object::Object)` overload"]
391    fn system_collections_i_list_insert(
392        self,
393        index: impl ::core::convert::Into<i32>,
394        value: impl ::core::convert::Into<crate::system::object::Object>,
395    ) -> () {
396        unsafe {
397            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
398            {
399                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
400                let __vi = *__vt.get(11usize).unwrap_or_else(|| {
401                    panic!(
402                        "unity: virtual slot {}
403 out of range (vtable len {}
404) on the runtime class behind {}
405 (method `{}
406`)",
407                        11usize,
408                        __vt.len(),
409                        <CollectionBase as ::unity::ClassIdentity>::NAME,
410                        "System.Collections.IList.Insert",
411                    )
412                });
413                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
414                    ::core::mem::transmute(__vi.method_ptr);
415                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
416                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
417            }
418        }
419    }
420    #[doc = "`GetEnumerator()` overload"]
421    fn get_enumerator(self) -> crate::system::collections::ienumerator::IEnumerator {
422        unsafe {
423            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
424            {
425                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
426                let __vi = *__vt.get(18usize).unwrap_or_else(|| {
427                    panic!(
428                        "unity: virtual slot {}
429 out of range (vtable len {}
430) on the runtime class behind {}
431 (method `{}
432`)",
433                        18usize,
434                        __vt.len(),
435                        <CollectionBase as ::unity::ClassIdentity>::NAME,
436                        "GetEnumerator",
437                    )
438                });
439                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> crate::system::collections::ienumerator::IEnumerator =
440                    ::core::mem::transmute(__vi.method_ptr);
441                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
442                __inner(__receiver, __mi)
443            }
444        }
445    }
446    #[doc = "`OnSet(i32, crate::system::object::Object, crate::system::object::Object)` overload"]
447    fn on_set(
448        self,
449        index: impl ::core::convert::Into<i32>,
450        old_value: impl ::core::convert::Into<crate::system::object::Object>,
451        new_value: impl ::core::convert::Into<crate::system::object::Object>,
452    ) -> () {
453        unsafe {
454            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
455            {
456                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
457                let __vi = *__vt.get(19usize).unwrap_or_else(|| {
458                    panic!(
459                        "unity: virtual slot {}
460 out of range (vtable len {}
461) on the runtime class behind {}
462 (method `{}
463`)",
464                        19usize,
465                        __vt.len(),
466                        <CollectionBase as ::unity::ClassIdentity>::NAME,
467                        "OnSet",
468                    )
469                });
470                let __inner: extern "C" fn(
471                    CollectionBase,
472                    i32,
473                    crate::system::object::Object,
474                    crate::system::object::Object,
475                    ::unity::OptionalMethod,
476                ) -> () = ::core::mem::transmute(__vi.method_ptr);
477                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
478                __inner(
479                    __receiver,
480                    ::core::convert::Into::into(index),
481                    ::core::convert::Into::into(old_value),
482                    ::core::convert::Into::into(new_value),
483                    __mi,
484                )
485            }
486        }
487    }
488    #[doc = "`OnInsert(i32, crate::system::object::Object)` overload"]
489    fn on_insert(self, index: impl ::core::convert::Into<i32>, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
490        unsafe {
491            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
492            {
493                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
494                let __vi = *__vt.get(20usize).unwrap_or_else(|| {
495                    panic!(
496                        "unity: virtual slot {}
497 out of range (vtable len {}
498) on the runtime class behind {}
499 (method `{}
500`)",
501                        20usize,
502                        __vt.len(),
503                        <CollectionBase as ::unity::ClassIdentity>::NAME,
504                        "OnInsert",
505                    )
506                });
507                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
508                    ::core::mem::transmute(__vi.method_ptr);
509                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
510                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
511            }
512        }
513    }
514    #[doc = "`OnClear()` overload"]
515    fn on_clear(self) -> () {
516        unsafe {
517            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
518            {
519                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
520                let __vi = *__vt.get(21usize).unwrap_or_else(|| {
521                    panic!(
522                        "unity: virtual slot {}
523 out of range (vtable len {}
524) on the runtime class behind {}
525 (method `{}
526`)",
527                        21usize,
528                        __vt.len(),
529                        <CollectionBase as ::unity::ClassIdentity>::NAME,
530                        "OnClear",
531                    )
532                });
533                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
534                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
535                __inner(__receiver, __mi)
536            }
537        }
538    }
539    #[doc = "`OnRemove(i32, crate::system::object::Object)` overload"]
540    fn on_remove(self, index: impl ::core::convert::Into<i32>, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
541        unsafe {
542            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
543            {
544                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
545                let __vi = *__vt.get(22usize).unwrap_or_else(|| {
546                    panic!(
547                        "unity: virtual slot {}
548 out of range (vtable len {}
549) on the runtime class behind {}
550 (method `{}
551`)",
552                        22usize,
553                        __vt.len(),
554                        <CollectionBase as ::unity::ClassIdentity>::NAME,
555                        "OnRemove",
556                    )
557                });
558                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
559                    ::core::mem::transmute(__vi.method_ptr);
560                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
561                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
562            }
563        }
564    }
565    #[doc = "`OnValidate(crate::system::object::Object)` overload"]
566    fn on_validate(self, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
567        unsafe {
568            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
569            {
570                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
571                let __vi = *__vt.get(23usize).unwrap_or_else(|| {
572                    panic!(
573                        "unity: virtual slot {}
574 out of range (vtable len {}
575) on the runtime class behind {}
576 (method `{}
577`)",
578                        23usize,
579                        __vt.len(),
580                        <CollectionBase as ::unity::ClassIdentity>::NAME,
581                        "OnValidate",
582                    )
583                });
584                let __inner: extern "C" fn(CollectionBase, crate::system::object::Object, ::unity::OptionalMethod) -> () =
585                    ::core::mem::transmute(__vi.method_ptr);
586                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
587                __inner(__receiver, ::core::convert::Into::into(value), __mi)
588            }
589        }
590    }
591    #[doc = "`OnSetComplete(i32, crate::system::object::Object, crate::system::object::Object)` overload"]
592    fn on_set_complete(
593        self,
594        index: impl ::core::convert::Into<i32>,
595        old_value: impl ::core::convert::Into<crate::system::object::Object>,
596        new_value: impl ::core::convert::Into<crate::system::object::Object>,
597    ) -> () {
598        unsafe {
599            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
600            {
601                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
602                let __vi = *__vt.get(24usize).unwrap_or_else(|| {
603                    panic!(
604                        "unity: virtual slot {}
605 out of range (vtable len {}
606) on the runtime class behind {}
607 (method `{}
608`)",
609                        24usize,
610                        __vt.len(),
611                        <CollectionBase as ::unity::ClassIdentity>::NAME,
612                        "OnSetComplete",
613                    )
614                });
615                let __inner: extern "C" fn(
616                    CollectionBase,
617                    i32,
618                    crate::system::object::Object,
619                    crate::system::object::Object,
620                    ::unity::OptionalMethod,
621                ) -> () = ::core::mem::transmute(__vi.method_ptr);
622                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
623                __inner(
624                    __receiver,
625                    ::core::convert::Into::into(index),
626                    ::core::convert::Into::into(old_value),
627                    ::core::convert::Into::into(new_value),
628                    __mi,
629                )
630            }
631        }
632    }
633    #[doc = "`OnInsertComplete(i32, crate::system::object::Object)` overload"]
634    fn on_insert_complete(self, index: impl ::core::convert::Into<i32>, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
635        unsafe {
636            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
637            {
638                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
639                let __vi = *__vt.get(25usize).unwrap_or_else(|| {
640                    panic!(
641                        "unity: virtual slot {}
642 out of range (vtable len {}
643) on the runtime class behind {}
644 (method `{}
645`)",
646                        25usize,
647                        __vt.len(),
648                        <CollectionBase as ::unity::ClassIdentity>::NAME,
649                        "OnInsertComplete",
650                    )
651                });
652                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
653                    ::core::mem::transmute(__vi.method_ptr);
654                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
655                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
656            }
657        }
658    }
659    #[doc = "`OnClearComplete()` overload"]
660    fn on_clear_complete(self) -> () {
661        unsafe {
662            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
663            {
664                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
665                let __vi = *__vt.get(26usize).unwrap_or_else(|| {
666                    panic!(
667                        "unity: virtual slot {}
668 out of range (vtable len {}
669) on the runtime class behind {}
670 (method `{}
671`)",
672                        26usize,
673                        __vt.len(),
674                        <CollectionBase as ::unity::ClassIdentity>::NAME,
675                        "OnClearComplete",
676                    )
677                });
678                let __inner: extern "C" fn(CollectionBase, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
679                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
680                __inner(__receiver, __mi)
681            }
682        }
683    }
684    #[doc = "`OnRemoveComplete(i32, crate::system::object::Object)` overload"]
685    fn on_remove_complete(self, index: impl ::core::convert::Into<i32>, value: impl ::core::convert::Into<crate::system::object::Object>) -> () {
686        unsafe {
687            let __receiver = <CollectionBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
688            {
689                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
690                let __vi = *__vt.get(27usize).unwrap_or_else(|| {
691                    panic!(
692                        "unity: virtual slot {}
693 out of range (vtable len {}
694) on the runtime class behind {}
695 (method `{}
696`)",
697                        27usize,
698                        __vt.len(),
699                        <CollectionBase as ::unity::ClassIdentity>::NAME,
700                        "OnRemoveComplete",
701                    )
702                });
703                let __inner: extern "C" fn(CollectionBase, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
704                    ::core::mem::transmute(__vi.method_ptr);
705                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
706                __inner(__receiver, ::core::convert::Into::into(index), ::core::convert::Into::into(value), __mi)
707            }
708        }
709    }
710}
711
712#[cfg(feature = "system-collections-collectionbase")]
713impl<__T: ICollectionBase> ICollectionBaseMethods for __T {}
714
715#[cfg(feature = "system-collections-collectionbase")]
716impl CollectionBase {
717    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
718        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
719    }
720
721    pub fn get_inner_list_method_info() -> &'static ::unity::il2cpp::MethodInfo {
722        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
723    }
724
725    pub fn get_list_method_info() -> &'static ::unity::il2cpp::MethodInfo {
726        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
727    }
728
729    pub fn get_count_method_info() -> &'static ::unity::il2cpp::MethodInfo {
730        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
731    }
732
733    pub fn clear_method_info() -> &'static ::unity::il2cpp::MethodInfo {
734        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
735    }
736
737    pub fn remove_at_method_info() -> &'static ::unity::il2cpp::MethodInfo {
738        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
739    }
740
741    pub fn system_collections_i_list_get_is_read_only_method_info() -> &'static ::unity::il2cpp::MethodInfo {
742        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
743    }
744
745    pub fn system_collections_i_collection_get_is_synchronized_method_info() -> &'static ::unity::il2cpp::MethodInfo {
746        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
747    }
748
749    pub fn system_collections_i_collection_get_sync_root_method_info() -> &'static ::unity::il2cpp::MethodInfo {
750        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
751    }
752
753    pub fn system_collections_i_collection_copy_to_method_info() -> &'static ::unity::il2cpp::MethodInfo {
754        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
755    }
756
757    pub fn system_collections_i_list_get_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
758        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
759    }
760
761    pub fn system_collections_i_list_set_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
762        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
763    }
764
765    pub fn system_collections_i_list_contains_method_info() -> &'static ::unity::il2cpp::MethodInfo {
766        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
767    }
768
769    pub fn system_collections_i_list_add_method_info() -> &'static ::unity::il2cpp::MethodInfo {
770        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
771    }
772
773    pub fn system_collections_i_list_remove_method_info() -> &'static ::unity::il2cpp::MethodInfo {
774        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
775    }
776
777    pub fn system_collections_i_list_index_of_method_info() -> &'static ::unity::il2cpp::MethodInfo {
778        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
779    }
780
781    pub fn system_collections_i_list_insert_method_info() -> &'static ::unity::il2cpp::MethodInfo {
782        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
783    }
784
785    pub fn get_enumerator_method_info() -> &'static ::unity::il2cpp::MethodInfo {
786        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[17]
787    }
788
789    pub fn on_set_method_info() -> &'static ::unity::il2cpp::MethodInfo {
790        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[18]
791    }
792
793    pub fn on_insert_method_info() -> &'static ::unity::il2cpp::MethodInfo {
794        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[19]
795    }
796
797    pub fn on_clear_method_info() -> &'static ::unity::il2cpp::MethodInfo {
798        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[20]
799    }
800
801    pub fn on_remove_method_info() -> &'static ::unity::il2cpp::MethodInfo {
802        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[21]
803    }
804
805    pub fn on_validate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
806        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[22]
807    }
808
809    pub fn on_set_complete_method_info() -> &'static ::unity::il2cpp::MethodInfo {
810        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[23]
811    }
812
813    pub fn on_insert_complete_method_info() -> &'static ::unity::il2cpp::MethodInfo {
814        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[24]
815    }
816
817    pub fn on_clear_complete_method_info() -> &'static ::unity::il2cpp::MethodInfo {
818        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[25]
819    }
820
821    pub fn on_remove_complete_method_info() -> &'static ::unity::il2cpp::MethodInfo {
822        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[26]
823    }
824}
825
826#[cfg(feature = "system-collections-collectionbase")]
827impl CollectionBase {
828    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `get_Count`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
829    pub unsafe fn get_count(this: impl ::core::convert::Into<::unity::IlInstance>) -> i32 {
830        let __mi = Self::get_count_method_info();
831        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> i32 = ::core::mem::transmute(__mi.method_ptr);
832        __inner(this.into(), ::core::option::Option::None)
833    }
834
835    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `Clear`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
836    pub unsafe fn clear(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
837        let __mi = Self::clear_method_info();
838        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
839        __inner(this.into(), ::core::option::Option::None)
840    }
841
842    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `RemoveAt`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
843    pub unsafe fn remove_at(this: impl ::core::convert::Into<::unity::IlInstance>, index: i32) -> () {
844        let __mi = Self::remove_at_method_info();
845        let __inner: extern "C" fn(::unity::IlInstance, i32, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
846        __inner(this.into(), index, ::core::option::Option::None)
847    }
848
849    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.get_IsReadOnly`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
850    pub unsafe fn system_collections_i_list_get_is_read_only(this: impl ::core::convert::Into<::unity::IlInstance>) -> bool {
851        let __mi = Self::system_collections_i_list_get_is_read_only_method_info();
852        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__mi.method_ptr);
853        __inner(this.into(), ::core::option::Option::None)
854    }
855
856    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.ICollection.get_IsSynchronized`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
857    pub unsafe fn system_collections_i_collection_get_is_synchronized(this: impl ::core::convert::Into<::unity::IlInstance>) -> bool {
858        let __mi = Self::system_collections_i_collection_get_is_synchronized_method_info();
859        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__mi.method_ptr);
860        __inner(this.into(), ::core::option::Option::None)
861    }
862
863    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.ICollection.get_SyncRoot`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
864    pub unsafe fn system_collections_i_collection_get_sync_root(
865        this: impl ::core::convert::Into<::unity::IlInstance>,
866    ) -> crate::system::object::Object {
867        let __mi = Self::system_collections_i_collection_get_sync_root_method_info();
868        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::system::object::Object =
869            ::core::mem::transmute(__mi.method_ptr);
870        __inner(this.into(), ::core::option::Option::None)
871    }
872
873    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.ICollection.CopyTo`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
874    pub unsafe fn system_collections_i_collection_copy_to(
875        this: impl ::core::convert::Into<::unity::IlInstance>,
876        array: ::unity::IlInstance,
877        index: i32,
878    ) -> () {
879        let __mi = Self::system_collections_i_collection_copy_to_method_info();
880        let __inner: extern "C" fn(::unity::IlInstance, ::unity::IlInstance, i32, ::unity::OptionalMethod) -> () =
881            ::core::mem::transmute(__mi.method_ptr);
882        __inner(this.into(), array, index, ::core::option::Option::None)
883    }
884
885    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.get_Item`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
886    pub unsafe fn system_collections_i_list_get_item(
887        this: impl ::core::convert::Into<::unity::IlInstance>,
888        index: i32,
889    ) -> crate::system::object::Object {
890        let __mi = Self::system_collections_i_list_get_item_method_info();
891        let __inner: extern "C" fn(::unity::IlInstance, i32, ::unity::OptionalMethod) -> crate::system::object::Object =
892            ::core::mem::transmute(__mi.method_ptr);
893        __inner(this.into(), index, ::core::option::Option::None)
894    }
895
896    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.set_Item`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
897    pub unsafe fn system_collections_i_list_set_item(
898        this: impl ::core::convert::Into<::unity::IlInstance>,
899        index: i32,
900        value: crate::system::object::Object,
901    ) -> () {
902        let __mi = Self::system_collections_i_list_set_item_method_info();
903        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
904            ::core::mem::transmute(__mi.method_ptr);
905        __inner(this.into(), index, value, ::core::option::Option::None)
906    }
907
908    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.Contains`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
909    pub unsafe fn system_collections_i_list_contains(
910        this: impl ::core::convert::Into<::unity::IlInstance>,
911        value: crate::system::object::Object,
912    ) -> bool {
913        let __mi = Self::system_collections_i_list_contains_method_info();
914        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> bool =
915            ::core::mem::transmute(__mi.method_ptr);
916        __inner(this.into(), value, ::core::option::Option::None)
917    }
918
919    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.Add`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
920    pub unsafe fn system_collections_i_list_add(this: impl ::core::convert::Into<::unity::IlInstance>, value: crate::system::object::Object) -> i32 {
921        let __mi = Self::system_collections_i_list_add_method_info();
922        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> i32 =
923            ::core::mem::transmute(__mi.method_ptr);
924        __inner(this.into(), value, ::core::option::Option::None)
925    }
926
927    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.Remove`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
928    pub unsafe fn system_collections_i_list_remove(
929        this: impl ::core::convert::Into<::unity::IlInstance>,
930        value: crate::system::object::Object,
931    ) -> () {
932        let __mi = Self::system_collections_i_list_remove_method_info();
933        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> () =
934            ::core::mem::transmute(__mi.method_ptr);
935        __inner(this.into(), value, ::core::option::Option::None)
936    }
937
938    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.IndexOf`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
939    pub unsafe fn system_collections_i_list_index_of(
940        this: impl ::core::convert::Into<::unity::IlInstance>,
941        value: crate::system::object::Object,
942    ) -> i32 {
943        let __mi = Self::system_collections_i_list_index_of_method_info();
944        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> i32 =
945            ::core::mem::transmute(__mi.method_ptr);
946        __inner(this.into(), value, ::core::option::Option::None)
947    }
948
949    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `System.Collections.IList.Insert`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
950    pub unsafe fn system_collections_i_list_insert(
951        this: impl ::core::convert::Into<::unity::IlInstance>,
952        index: i32,
953        value: crate::system::object::Object,
954    ) -> () {
955        let __mi = Self::system_collections_i_list_insert_method_info();
956        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
957            ::core::mem::transmute(__mi.method_ptr);
958        __inner(this.into(), index, value, ::core::option::Option::None)
959    }
960
961    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `GetEnumerator`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
962    pub unsafe fn get_enumerator(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::system::collections::ienumerator::IEnumerator {
963        let __mi = Self::get_enumerator_method_info();
964        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::system::collections::ienumerator::IEnumerator =
965            ::core::mem::transmute(__mi.method_ptr);
966        __inner(this.into(), ::core::option::Option::None)
967    }
968
969    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnSet`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
970    pub unsafe fn on_set(
971        this: impl ::core::convert::Into<::unity::IlInstance>,
972        index: i32,
973        old_value: crate::system::object::Object,
974        new_value: crate::system::object::Object,
975    ) -> () {
976        let __mi = Self::on_set_method_info();
977        let __inner: extern "C" fn(
978            ::unity::IlInstance,
979            i32,
980            crate::system::object::Object,
981            crate::system::object::Object,
982            ::unity::OptionalMethod,
983        ) -> () = ::core::mem::transmute(__mi.method_ptr);
984        __inner(this.into(), index, old_value, new_value, ::core::option::Option::None)
985    }
986
987    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnInsert`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
988    pub unsafe fn on_insert(this: impl ::core::convert::Into<::unity::IlInstance>, index: i32, value: crate::system::object::Object) -> () {
989        let __mi = Self::on_insert_method_info();
990        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
991            ::core::mem::transmute(__mi.method_ptr);
992        __inner(this.into(), index, value, ::core::option::Option::None)
993    }
994
995    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnClear`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
996    pub unsafe fn on_clear(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
997        let __mi = Self::on_clear_method_info();
998        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
999        __inner(this.into(), ::core::option::Option::None)
1000    }
1001
1002    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnRemove`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1003    pub unsafe fn on_remove(this: impl ::core::convert::Into<::unity::IlInstance>, index: i32, value: crate::system::object::Object) -> () {
1004        let __mi = Self::on_remove_method_info();
1005        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
1006            ::core::mem::transmute(__mi.method_ptr);
1007        __inner(this.into(), index, value, ::core::option::Option::None)
1008    }
1009
1010    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnValidate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1011    pub unsafe fn on_validate(this: impl ::core::convert::Into<::unity::IlInstance>, value: crate::system::object::Object) -> () {
1012        let __mi = Self::on_validate_method_info();
1013        let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> () =
1014            ::core::mem::transmute(__mi.method_ptr);
1015        __inner(this.into(), value, ::core::option::Option::None)
1016    }
1017
1018    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnSetComplete`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1019    pub unsafe fn on_set_complete(
1020        this: impl ::core::convert::Into<::unity::IlInstance>,
1021        index: i32,
1022        old_value: crate::system::object::Object,
1023        new_value: crate::system::object::Object,
1024    ) -> () {
1025        let __mi = Self::on_set_complete_method_info();
1026        let __inner: extern "C" fn(
1027            ::unity::IlInstance,
1028            i32,
1029            crate::system::object::Object,
1030            crate::system::object::Object,
1031            ::unity::OptionalMethod,
1032        ) -> () = ::core::mem::transmute(__mi.method_ptr);
1033        __inner(this.into(), index, old_value, new_value, ::core::option::Option::None)
1034    }
1035
1036    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnInsertComplete`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1037    pub unsafe fn on_insert_complete(this: impl ::core::convert::Into<::unity::IlInstance>, index: i32, value: crate::system::object::Object) -> () {
1038        let __mi = Self::on_insert_complete_method_info();
1039        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
1040            ::core::mem::transmute(__mi.method_ptr);
1041        __inner(this.into(), index, value, ::core::option::Option::None)
1042    }
1043
1044    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnClearComplete`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1045    pub unsafe fn on_clear_complete(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
1046        let __mi = Self::on_clear_complete_method_info();
1047        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
1048        __inner(this.into(), ::core::option::Option::None)
1049    }
1050
1051    #[doc = "Direct (non-virtual) call to `CollectionBase`'s own `OnRemoveComplete`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
1052    pub unsafe fn on_remove_complete(this: impl ::core::convert::Into<::unity::IlInstance>, index: i32, value: crate::system::object::Object) -> () {
1053        let __mi = Self::on_remove_complete_method_info();
1054        let __inner: extern "C" fn(::unity::IlInstance, i32, crate::system::object::Object, ::unity::OptionalMethod) -> () =
1055            ::core::mem::transmute(__mi.method_ptr);
1056        __inner(this.into(), index, value, ::core::option::Option::None)
1057    }
1058}
1059
1060#[cfg(feature = "system-collections-collectionbase")]
1061impl CollectionBase {
1062    #[doc = "`.ctor()` — no args"]
1063    pub fn new() -> Self {
1064        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
1065            panic!(
1066                "{}
1067::{}
1068 failed to instantiate",
1069                ::core::stringify!(CollectionBase),
1070                ::core::stringify!(new),
1071            )
1072        });
1073        <Self as ICollectionBaseMethods>::ctor(this);
1074        this
1075    }
1076}
1077
1078#[cfg(feature = "system-collections-collectionbase")]
1079#[doc(hidden)]
1080pub mod prelude {
1081    pub use super::{CollectionBase, ICollectionBase, ICollectionBaseMethods};
1082    pub use crate::system::object::IObject;
1083    #[cfg(feature = "system-object")]
1084    pub use crate::system::object::IObjectMethods;
1085}