1#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 system::{
10 object::{IObject, Object},
11 r#enum::{Enum, IEnum},
12 valuetype::{IValueType, ValueType},
13 },
14 unity_engine::resource_management::async_operations::asyncoperationbase_1::{AsyncOperationBase_1, IAsyncOperationBase_1},
15 };
16
17 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/resource_management/async_operations/groupoperation/GroupOperation.md"))]
18 #[::unity::class(namespace = "UnityEngine.ResourceManagement.AsyncOperations", name = "GroupOperation")]
19 #[parent(crate::unity_engine::resource_management::async_operations::asyncoperationbase_1::AsyncOperationBase_1<crate::system::collections::generic::ilist_1_interface::IList_1_Interface<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle> >)]
20 pub struct GroupOperation {
21 #[offset(136)]
22 #[rename(name = "m_InternalOnComplete")]
23 pub m_internal_on_complete:
24 crate::system::action_1::Action_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>,
25 #[offset(144)]
26 #[rename(name = "m_LoadedCount")]
27 pub m_loaded_count: i32,
28 #[offset(148)]
29 #[rename(name = "m_Settings")]
30 pub m_settings: crate::unity_engine::resource_management::async_operations::groupoperation::GroupOperation_GroupOperationSettings,
31 #[offset(152)]
32 #[rename(name = "debugName")]
33 pub debug_name: ::unity::Il2CppString,
34 #[static_field]
35 #[rename(name = "k_MaxDisplayedLocationLength")]
36 pub k_max_displayed_location_length: i32,
37 #[offset(168)]
38 #[rename(name = "m_CachedDependencyLocations")]
39 pub m_cached_dependency_locations: crate::system::collections::generic::hashset_1::HashSet_1<::unity::Il2CppString>,
40 }
41
42 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/resource_management/async_operations/groupoperation/GroupOperation_GroupOperationSettings.md"))]
43 #[repr(C)]
44 #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
45 pub struct GroupOperation_GroupOperationSettings {
46 pub value: i32,
47 }
48 impl ::unity::ClassIdentity for GroupOperation_GroupOperationSettings {
49 const NAME: &'static str = "GroupOperation.GroupOperationSettings";
50 const NAMESPACE: &'static str = "UnityEngine.ResourceManagement.AsyncOperations";
51
52 fn class() -> ::unity::Class {
53 static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
54 *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
55 }
56 }
57 impl ::unity::IlType for GroupOperation_GroupOperationSettings {
58 fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
59 &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
60 }
61 }
62 impl GroupOperation_GroupOperationSettings {
63 pub fn none() -> Self {
64 Self { value: 0 }
65 }
66
67 pub fn release_dependencies_on_failure() -> Self {
68 Self { value: 1 }
69 }
70
71 pub fn allow_failed_dependencies() -> Self {
72 Self { value: 2 }
73 }
74 }
75}
76
77#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation-types")]
78pub use __types::*;
79
80#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
81#[doc(hidden)]
82#[allow(non_snake_case, non_camel_case_types, clippy::too_many_arguments)]
83mod __GroupOperation_unity_raw {
84 use super::*;
85 #[doc(hidden)]
86 #[allow(non_snake_case)]
87 pub mod __lookup_ctor {
88 use super::*;
89 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
90 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[];
91 ::unity::lookup::method_info_on_class_with_signature(<GroupOperation as ::unity::ClassIdentity>::class(), ".ctor", 0, param_types, false)
92 });
93 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
94 match &*METHOD {
95 ::core::result::Result::Ok(mi) => *mi,
96 ::core::result::Result::Err(e) => {
97 panic!(
98 "method lookup failed: {}
99::{}
100: {}
101",
102 <GroupOperation as ::unity::ClassIdentity>::NAME,
103 ".ctor",
104 e
105 )
106 },
107 }
108 }
109 }
110 #[doc(hidden)]
111 #[allow(non_snake_case)]
112 pub mod __lookup_get_dependent_ops {
113 use super::*;
114 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
115 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[];
116 ::unity::lookup::method_info_on_class_with_signature(
117 <GroupOperation as ::unity::ClassIdentity>::class(),
118 "GetDependentOps",
119 0,
120 param_types,
121 false,
122 )
123 });
124 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
125 match &*METHOD {
126 ::core::result::Result::Ok(mi) => *mi,
127 ::core::result::Result::Err(e) => {
128 panic!(
129 "method lookup failed: {}
130::{}
131: {}
132",
133 <GroupOperation as ::unity::ClassIdentity>::NAME,
134 "GetDependentOps",
135 e
136 )
137 },
138 }
139 }
140 }
141 #[doc(hidden)]
142 #[allow(non_snake_case)]
143 pub mod __lookup_dependencies_are_unchanged {
144 use super::*;
145 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
146 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[<crate::system::collections::generic::list_1::List_1<
147 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
148 > as ::unity::IlType>::il_type()];
149 ::unity::lookup::method_info_on_class_with_signature(
150 <GroupOperation as ::unity::ClassIdentity>::class(),
151 "DependenciesAreUnchanged",
152 1,
153 param_types,
154 false,
155 )
156 });
157 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
158 match &*METHOD {
159 ::core::result::Result::Ok(mi) => *mi,
160 ::core::result::Result::Err(e) => {
161 panic!(
162 "method lookup failed: {}
163::{}
164: {}
165",
166 <GroupOperation as ::unity::ClassIdentity>::NAME,
167 "DependenciesAreUnchanged",
168 e
169 )
170 },
171 }
172 }
173 }
174 #[doc(hidden)]
175 #[allow(non_snake_case)]
176 pub mod __lookup_complete_if_dependencies_complete {
177 use super::*;
178 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
179 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[];
180 ::unity::lookup::method_info_on_class_with_signature(
181 <GroupOperation as ::unity::ClassIdentity>::class(),
182 "CompleteIfDependenciesComplete",
183 0,
184 param_types,
185 false,
186 )
187 });
188 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
189 match &*METHOD {
190 ::core::result::Result::Ok(mi) => *mi,
191 ::core::result::Result::Err(e) => {
192 panic!(
193 "method lookup failed: {}
194::{}
195: {}
196",
197 <GroupOperation as ::unity::ClassIdentity>::NAME,
198 "CompleteIfDependenciesComplete",
199 e
200 )
201 },
202 }
203 }
204 }
205 #[doc(hidden)]
206 #[allow(non_snake_case)]
207 pub mod __lookup_init {
208 use super::*;
209 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
210 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[
211 <crate::system::collections::generic::list_1::List_1<
212 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
213 > as ::unity::IlType>::il_type(),
214 <bool as ::unity::IlType>::il_type(),
215 <bool as ::unity::IlType>::il_type(),
216 ];
217 ::unity::lookup::method_info_on_class_with_signature(<GroupOperation as ::unity::ClassIdentity>::class(), "Init", 3, param_types, false)
218 });
219 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
220 match &*METHOD {
221 ::core::result::Result::Ok(mi) => *mi,
222 ::core::result::Result::Err(e) => {
223 panic!(
224 "method lookup failed: {}
225::{}
226: {}
227",
228 <GroupOperation as ::unity::ClassIdentity>::NAME,
229 "Init",
230 e
231 )
232 },
233 }
234 }
235 }
236 #[doc(hidden)]
237 #[allow(non_snake_case)]
238 pub mod __lookup_init_2 {
239 use super::*;
240 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
241 let param_types: &[& 'static::unity::il2cpp::Il2CppType]= &[<crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>as::unity::IlType> ::il_type(), <crate::unity_engine::resource_management::async_operations::groupoperation::GroupOperation_GroupOperationSettings as::unity::IlType> ::il_type()];
242 ::unity::lookup::method_info_on_class_with_signature(<GroupOperation as ::unity::ClassIdentity>::class(), "Init", 2, param_types, false)
243 });
244 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
245 match &*METHOD {
246 ::core::result::Result::Ok(mi) => *mi,
247 ::core::result::Result::Err(e) => {
248 panic!(
249 "method lookup failed: {}
250::{}
251: {}
252",
253 <GroupOperation as ::unity::ClassIdentity>::NAME,
254 "Init",
255 e
256 )
257 },
258 }
259 }
260 }
261 #[doc(hidden)]
262 #[allow(non_snake_case)]
263 pub mod __lookup_on_operation_completed {
264 use super::*;
265 static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
266 let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[
267 <crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle as ::unity::IlType>::il_type(
268 ),
269 ];
270 ::unity::lookup::method_info_on_class_with_signature(
271 <GroupOperation as ::unity::ClassIdentity>::class(),
272 "OnOperationCompleted",
273 1,
274 param_types,
275 false,
276 )
277 });
278 pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
279 match &*METHOD {
280 ::core::result::Result::Ok(mi) => *mi,
281 ::core::result::Result::Err(e) => {
282 panic!(
283 "method lookup failed: {}
284::{}
285: {}
286",
287 <GroupOperation as ::unity::ClassIdentity>::NAME,
288 "OnOperationCompleted",
289 e
290 )
291 },
292 }
293 }
294 }
295}
296
297#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
298pub trait IGroupOperationMethods: IGroupOperation {
299 #[doc = "`.ctor()` overload"]
300 fn ctor(self) -> () {
301 unsafe {
302 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
303 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_ctor::get_method_info().method_ptr,();
304(GroupOperation)__receiver)
305 }
306 }
307 #[doc = "`InvokeWaitForCompletion()` overload"]
308 fn invoke_wait_for_completion(self) -> bool {
309 unsafe {
310 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
311 {
312 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
313 let __vi = *__vt.get(33usize).unwrap_or_else(|| {
314 panic!(
315 "unity: virtual slot {}
316 out of range (vtable len {}
317) on the runtime class behind {}
318 (method `{}
319`)",
320 33usize,
321 __vt.len(),
322 <GroupOperation as ::unity::ClassIdentity>::NAME,
323 "InvokeWaitForCompletion",
324 )
325 });
326 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__vi.method_ptr);
327 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
328 __inner(__receiver, __mi)
329 }
330 }
331 }
332 #[doc = "`UnityEngine.ResourceManagement.AsyncOperations.ICachable.get_Key()` overload"]
333 fn unity_engine_resource_management_async_operations_i_cachable_get_key(
334 self,
335 ) -> crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey {
336 unsafe {
337 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
338 {
339 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
340 let __vi = *__vt.get(36usize).unwrap_or_else(|| {
341 panic!(
342 "unity: virtual slot {}
343 out of range (vtable len {}
344) on the runtime class behind {}
345 (method `{}
346`)",
347 36usize,
348 __vt.len(),
349 <GroupOperation as ::unity::ClassIdentity>::NAME,
350 "UnityEngine.ResourceManagement.AsyncOperations.ICachable.get_Key",
351 )
352 });
353 let __inner: extern "C" fn(
354 GroupOperation,
355 ::unity::OptionalMethod,
356 )
357 -> crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey =
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, __mi)
361 }
362 }
363 }
364 #[doc = "`UnityEngine.ResourceManagement.AsyncOperations.ICachable.set_Key(crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey)` overload"]
365 fn unity_engine_resource_management_async_operations_i_cachable_set_key(
366 self,
367 value: impl ::core::convert::Into<crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey>,
368 ) -> () {
369 unsafe {
370 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
371 {
372 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
373 let __vi = *__vt.get(37usize).unwrap_or_else(|| {
374 panic!(
375 "unity: virtual slot {}
376 out of range (vtable len {}
377) on the runtime class behind {}
378 (method `{}
379`)",
380 37usize,
381 __vt.len(),
382 <GroupOperation as ::unity::ClassIdentity>::NAME,
383 "UnityEngine.ResourceManagement.AsyncOperations.ICachable.set_Key",
384 )
385 });
386 let __inner: extern "C" fn(
387 GroupOperation,
388 crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey,
389 ::unity::OptionalMethod,
390 ) -> () = ::core::mem::transmute(__vi.method_ptr);
391 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
392 __inner(__receiver, ::core::convert::Into::into(value), __mi)
393 }
394 }
395 }
396 #[doc = "`GetDependentOps()` overload"]
397 fn get_dependent_ops(
398 self,
399 ) -> crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
400 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
401 > {
402 unsafe {
403 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
404 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_get_dependent_ops::get_method_info().method_ptr,crate::system::collections::generic::ilist_1_interface::IList_1_Interface<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle> ;
405(GroupOperation)__receiver)
406 }
407 }
408 #[doc = "`GetDependencies(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>)` overload"]
409 fn get_dependencies(
410 self,
411 deps: impl ::core::convert::Into<
412 crate::system::collections::generic::list_1::List_1<
413 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
414 >,
415 >,
416 ) -> () {
417 unsafe {
418 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
419 {
420 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
421 let __vi = *__vt.get(32usize).unwrap_or_else(|| {
422 panic!(
423 "unity: virtual slot {}
424 out of range (vtable len {}
425) on the runtime class behind {}
426 (method `{}
427`)",
428 32usize,
429 __vt.len(),
430 <GroupOperation as ::unity::ClassIdentity>::NAME,
431 "GetDependencies",
432 )
433 });
434 let __inner: extern "C" fn(
435 GroupOperation,
436 crate::system::collections::generic::list_1::List_1<
437 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
438 >,
439 ::unity::OptionalMethod,
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, ::core::convert::Into::into(deps), __mi)
443 }
444 }
445 }
446 #[doc = "`ReleaseDependencies()` overload"]
447 fn release_dependencies(self) -> () {
448 unsafe {
449 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
450 {
451 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
452 let __vi = *__vt.get(34usize).unwrap_or_else(|| {
453 panic!(
454 "unity: virtual slot {}
455 out of range (vtable len {}
456) on the runtime class behind {}
457 (method `{}
458`)",
459 34usize,
460 __vt.len(),
461 <GroupOperation as ::unity::ClassIdentity>::NAME,
462 "ReleaseDependencies",
463 )
464 });
465 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
466 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
467 __inner(__receiver, __mi)
468 }
469 }
470 }
471 #[doc = "`GetDownloadStatus(crate::system::collections::generic::hashset_1::HashSet_1<crate::system::object::Object>)` overload"]
472 fn get_download_status(
473 self,
474 visited: impl ::core::convert::Into<crate::system::collections::generic::hashset_1::HashSet_1<crate::system::object::Object>>,
475 ) -> crate::unity_engine::resource_management::async_operations::downloadstatus::DownloadStatus {
476 unsafe {
477 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
478 {
479 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
480 let __vi = *__vt.get(35usize).unwrap_or_else(|| {
481 panic!(
482 "unity: virtual slot {}
483 out of range (vtable len {}
484) on the runtime class behind {}
485 (method `{}
486`)",
487 35usize,
488 __vt.len(),
489 <GroupOperation as ::unity::ClassIdentity>::NAME,
490 "GetDownloadStatus",
491 )
492 });
493 let __inner: extern "C" fn(
494 GroupOperation,
495 crate::system::collections::generic::hashset_1::HashSet_1<crate::system::object::Object>,
496 ::unity::OptionalMethod,
497 )
498 -> crate::unity_engine::resource_management::async_operations::downloadstatus::DownloadStatus =
499 ::core::mem::transmute(__vi.method_ptr);
500 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
501 __inner(__receiver, ::core::convert::Into::into(visited), __mi)
502 }
503 }
504 }
505 #[doc = "`DependenciesAreUnchanged(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>)` overload"]
506 fn dependencies_are_unchanged(
507 self,
508 deps: impl ::core::convert::Into<
509 crate::system::collections::generic::list_1::List_1<
510 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
511 >,
512 >,
513 ) -> bool {
514 unsafe {
515 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
516 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_dependencies_are_unchanged::get_method_info().method_ptr,bool;
517(GroupOperation)__receiver,(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>)::core::convert::Into::into(deps))
518 }
519 }
520 #[doc = "`get_DebugName()` overload"]
521 fn get_debug_name(self) -> ::unity::Il2CppString {
522 unsafe {
523 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
524 {
525 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
526 let __vi = *__vt.get(31usize).unwrap_or_else(|| {
527 panic!(
528 "unity: virtual slot {}
529 out of range (vtable len {}
530) on the runtime class behind {}
531 (method `{}
532`)",
533 31usize,
534 __vt.len(),
535 <GroupOperation as ::unity::ClassIdentity>::NAME,
536 "get_DebugName",
537 )
538 });
539 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> ::unity::Il2CppString =
540 ::core::mem::transmute(__vi.method_ptr);
541 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
542 __inner(__receiver, __mi)
543 }
544 }
545 }
546 #[doc = "`Execute()` overload"]
547 fn execute(self) -> () {
548 unsafe {
549 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
550 {
551 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
552 let __vi = *__vt.get(28usize).unwrap_or_else(|| {
553 panic!(
554 "unity: virtual slot {}
555 out of range (vtable len {}
556) on the runtime class behind {}
557 (method `{}
558`)",
559 28usize,
560 __vt.len(),
561 <GroupOperation as ::unity::ClassIdentity>::NAME,
562 "Execute",
563 )
564 });
565 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
566 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
567 __inner(__receiver, __mi)
568 }
569 }
570 }
571 #[doc = "`CompleteIfDependenciesComplete()` overload"]
572 fn complete_if_dependencies_complete(self) -> () {
573 unsafe {
574 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
575 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_complete_if_dependencies_complete::get_method_info().method_ptr,();
576(GroupOperation)__receiver)
577 }
578 }
579 #[doc = "`Destroy()` overload"]
580 fn destroy(self) -> () {
581 unsafe {
582 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
583 {
584 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
585 let __vi = *__vt.get(29usize).unwrap_or_else(|| {
586 panic!(
587 "unity: virtual slot {}
588 out of range (vtable len {}
589) on the runtime class behind {}
590 (method `{}
591`)",
592 29usize,
593 __vt.len(),
594 <GroupOperation as ::unity::ClassIdentity>::NAME,
595 "Destroy",
596 )
597 });
598 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
599 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
600 __inner(__receiver, __mi)
601 }
602 }
603 }
604 #[doc = "`get_Progress()` overload"]
605 fn get_progress(self) -> f32 {
606 unsafe {
607 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
608 {
609 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
610 let __vi = *__vt.get(30usize).unwrap_or_else(|| {
611 panic!(
612 "unity: virtual slot {}
613 out of range (vtable len {}
614) on the runtime class behind {}
615 (method `{}
616`)",
617 30usize,
618 __vt.len(),
619 <GroupOperation as ::unity::ClassIdentity>::NAME,
620 "get_Progress",
621 )
622 });
623 let __inner: extern "C" fn(GroupOperation, ::unity::OptionalMethod) -> f32 = ::core::mem::transmute(__vi.method_ptr);
624 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
625 __inner(__receiver, __mi)
626 }
627 }
628 }
629 #[doc = "`Init(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>, bool, bool)` overload"]
630 fn init(
631 self,
632 operations: impl ::core::convert::Into<
633 crate::system::collections::generic::list_1::List_1<
634 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
635 >,
636 >,
637 release_dependencies_on_failure: impl ::core::convert::Into<bool>,
638 allow_failed_dependencies: impl ::core::convert::Into<bool>,
639 ) -> () {
640 unsafe {
641 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
642 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_init::get_method_info().method_ptr,();
643(GroupOperation)__receiver,(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>)::core::convert::Into::into(operations),(bool)::core::convert::Into::into(release_dependencies_on_failure),(bool)::core::convert::Into::into(allow_failed_dependencies))
644 }
645 }
646 #[doc = "`Init(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>, crate::unity_engine::resource_management::async_operations::groupoperation::GroupOperation_GroupOperationSettings)` overload"]
647 fn init_2(
648 self,
649 operations: impl ::core::convert::Into<
650 crate::system::collections::generic::list_1::List_1<
651 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
652 >,
653 >,
654 settings: impl ::core::convert::Into<
655 crate::unity_engine::resource_management::async_operations::groupoperation::GroupOperation_GroupOperationSettings,
656 >,
657 ) -> () {
658 unsafe {
659 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
660 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_init_2::get_method_info().method_ptr,();
661(GroupOperation)__receiver,(crate::system::collections::generic::list_1::List_1<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>)::core::convert::Into::into(operations),(crate::unity_engine::resource_management::async_operations::groupoperation::GroupOperation_GroupOperationSettings)::core::convert::Into::into(settings))
662 }
663 }
664 #[doc = "`OnOperationCompleted(crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle)` overload"]
665 fn on_operation_completed(
666 self,
667 op: impl ::core::convert::Into<crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle>,
668 ) -> () {
669 unsafe {
670 let __receiver = <GroupOperation as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
671 ::unity::il2cpp_call!(__GroupOperation_unity_raw::__lookup_on_operation_completed::get_method_info().method_ptr,();
672(GroupOperation)__receiver,(crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle)::core::convert::Into::into(op))
673 }
674 }
675}
676
677#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
678impl<__T: IGroupOperation> IGroupOperationMethods for __T {}
679
680#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
681impl GroupOperation {
682 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
683 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
684 }
685
686 pub fn invoke_wait_for_completion_method_info() -> &'static ::unity::il2cpp::MethodInfo {
687 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
688 }
689
690 pub fn unity_engine_resource_management_async_operations_i_cachable_get_key_method_info() -> &'static ::unity::il2cpp::MethodInfo {
691 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
692 }
693
694 pub fn unity_engine_resource_management_async_operations_i_cachable_set_key_method_info() -> &'static ::unity::il2cpp::MethodInfo {
695 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
696 }
697
698 pub fn get_dependent_ops_method_info() -> &'static ::unity::il2cpp::MethodInfo {
699 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
700 }
701
702 pub fn get_dependencies_method_info() -> &'static ::unity::il2cpp::MethodInfo {
703 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
704 }
705
706 pub fn release_dependencies_method_info() -> &'static ::unity::il2cpp::MethodInfo {
707 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
708 }
709
710 pub fn get_download_status_method_info() -> &'static ::unity::il2cpp::MethodInfo {
711 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
712 }
713
714 pub fn dependencies_are_unchanged_method_info() -> &'static ::unity::il2cpp::MethodInfo {
715 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
716 }
717
718 pub fn get_debug_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
719 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
720 }
721
722 pub fn execute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
723 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
724 }
725
726 pub fn complete_if_dependencies_complete_method_info() -> &'static ::unity::il2cpp::MethodInfo {
727 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
728 }
729
730 pub fn destroy_method_info() -> &'static ::unity::il2cpp::MethodInfo {
731 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
732 }
733
734 pub fn get_progress_method_info() -> &'static ::unity::il2cpp::MethodInfo {
735 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
736 }
737
738 pub fn init_method_info() -> &'static ::unity::il2cpp::MethodInfo {
739 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
740 }
741
742 pub fn init_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
743 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
744 }
745
746 pub fn on_operation_completed_method_info() -> &'static ::unity::il2cpp::MethodInfo {
747 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
748 }
749}
750
751#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
752impl GroupOperation {
753 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `InvokeWaitForCompletion`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
754 pub unsafe fn invoke_wait_for_completion(this: impl ::core::convert::Into<::unity::IlInstance>) -> bool {
755 let __mi = Self::invoke_wait_for_completion_method_info();
756 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__mi.method_ptr);
757 __inner(this.into(), ::core::option::Option::None)
758 }
759
760 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `UnityEngine.ResourceManagement.AsyncOperations.ICachable.get_Key`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
761 pub unsafe fn unity_engine_resource_management_async_operations_i_cachable_get_key(
762 this: impl ::core::convert::Into<::unity::IlInstance>,
763 ) -> crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey {
764 let __mi = Self::unity_engine_resource_management_async_operations_i_cachable_get_key_method_info();
765 let __inner: extern "C" fn(
766 ::unity::IlInstance,
767 ::unity::OptionalMethod,
768 ) -> crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey = ::core::mem::transmute(__mi.method_ptr);
769 __inner(this.into(), ::core::option::Option::None)
770 }
771
772 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `UnityEngine.ResourceManagement.AsyncOperations.ICachable.set_Key`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
773 pub unsafe fn unity_engine_resource_management_async_operations_i_cachable_set_key(
774 this: impl ::core::convert::Into<::unity::IlInstance>,
775 value: crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey,
776 ) -> () {
777 let __mi = Self::unity_engine_resource_management_async_operations_i_cachable_set_key_method_info();
778 let __inner: extern "C" fn(
779 ::unity::IlInstance,
780 crate::unity_engine::resource_management::util::ioperationcachekey::IOperationCacheKey,
781 ::unity::OptionalMethod,
782 ) -> () = ::core::mem::transmute(__mi.method_ptr);
783 __inner(this.into(), value, ::core::option::Option::None)
784 }
785
786 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `GetDependencies`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
787 pub unsafe fn get_dependencies(
788 this: impl ::core::convert::Into<::unity::IlInstance>,
789 deps: crate::system::collections::generic::list_1::List_1<
790 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
791 >,
792 ) -> () {
793 let __mi = Self::get_dependencies_method_info();
794 let __inner: extern "C" fn(
795 ::unity::IlInstance,
796 crate::system::collections::generic::list_1::List_1<
797 crate::unity_engine::resource_management::async_operations::asyncoperationhandle::AsyncOperationHandle,
798 >,
799 ::unity::OptionalMethod,
800 ) -> () = ::core::mem::transmute(__mi.method_ptr);
801 __inner(this.into(), deps, ::core::option::Option::None)
802 }
803
804 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `ReleaseDependencies`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
805 pub unsafe fn release_dependencies(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
806 let __mi = Self::release_dependencies_method_info();
807 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
808 __inner(this.into(), ::core::option::Option::None)
809 }
810
811 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `GetDownloadStatus`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
812 pub unsafe fn get_download_status(
813 this: impl ::core::convert::Into<::unity::IlInstance>,
814 visited: crate::system::collections::generic::hashset_1::HashSet_1<crate::system::object::Object>,
815 ) -> crate::unity_engine::resource_management::async_operations::downloadstatus::DownloadStatus {
816 let __mi = Self::get_download_status_method_info();
817 let __inner: extern "C" fn(
818 ::unity::IlInstance,
819 crate::system::collections::generic::hashset_1::HashSet_1<crate::system::object::Object>,
820 ::unity::OptionalMethod,
821 ) -> crate::unity_engine::resource_management::async_operations::downloadstatus::DownloadStatus = ::core::mem::transmute(__mi.method_ptr);
822 __inner(this.into(), visited, ::core::option::Option::None)
823 }
824
825 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `get_DebugName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
826 pub unsafe fn get_debug_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
827 let __mi = Self::get_debug_name_method_info();
828 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
829 __inner(this.into(), ::core::option::Option::None)
830 }
831
832 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `Execute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
833 pub unsafe fn execute(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
834 let __mi = Self::execute_method_info();
835 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
836 __inner(this.into(), ::core::option::Option::None)
837 }
838
839 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `Destroy`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
840 pub unsafe fn destroy(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
841 let __mi = Self::destroy_method_info();
842 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
843 __inner(this.into(), ::core::option::Option::None)
844 }
845
846 #[doc = "Direct (non-virtual) call to `GroupOperation`'s own `get_Progress`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
847 pub unsafe fn get_progress(this: impl ::core::convert::Into<::unity::IlInstance>) -> f32 {
848 let __mi = Self::get_progress_method_info();
849 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> f32 = ::core::mem::transmute(__mi.method_ptr);
850 __inner(this.into(), ::core::option::Option::None)
851 }
852}
853
854#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
855impl GroupOperation {
856 #[doc = "`.ctor()` — no args"]
857 pub fn new() -> Self {
858 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
859 panic!(
860 "{}
861::{}
862 failed to instantiate",
863 ::core::stringify!(GroupOperation),
864 ::core::stringify!(new),
865 )
866 });
867 <Self as IGroupOperationMethods>::ctor(this);
868 this
869 }
870}
871
872#[cfg(feature = "unity_engine-resource_management-async_operations-groupoperation")]
873#[doc(hidden)]
874pub mod prelude {
875 pub use super::{GroupOperation, GroupOperation_GroupOperationSettings, IGroupOperation, IGroupOperationMethods};
876 #[cfg(feature = "system-object")]
877 pub use crate::system::object::IObjectMethods;
878 #[cfg(feature = "system-enum")]
879 pub use crate::system::r#enum::IEnumMethods;
880 #[cfg(feature = "system-valuetype")]
881 pub use crate::system::valuetype::IValueTypeMethods;
882 #[cfg(feature = "unity_engine-resource_management-async_operations-asyncoperationbase_1")]
883 pub use crate::unity_engine::resource_management::async_operations::asyncoperationbase_1::IAsyncOperationBase_1Methods;
884 pub use crate::{
885 system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
886 unity_engine::resource_management::async_operations::asyncoperationbase_1::IAsyncOperationBase_1,
887 };
888}