Skip to main content

engage/generated/unity_engine/subsystems_implementation/
subsystemdescriptorstore.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-subsystems_implementation-subsystemdescriptorstore-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/unity_engine/subsystems_implementation/subsystemdescriptorstore/SubsystemDescriptorStore.md"))]
11    #[::unity::class(namespace = "UnityEngine.SubsystemsImplementation", name = "SubsystemDescriptorStore")]
12    #[parent(crate::system::object::Object)]
13    pub struct SubsystemDescriptorStore {
14        #[static_field]
15        #[rename(name = "s_IntegratedDescriptors")]
16        pub s_integrated_descriptors:
17            crate::system::collections::generic::list_1::List_1<crate::unity_engine::integratedsubsystemdescriptor::IntegratedSubsystemDescriptor>,
18        #[static_field]
19        #[rename(name = "s_StandaloneDescriptors")]
20        pub s_standalone_descriptors: crate::system::collections::generic::list_1::List_1<
21            crate::unity_engine::subsystems_implementation::subsystemdescriptorwithprovider::SubsystemDescriptorWithProvider,
22        >,
23        #[static_field]
24        #[rename(name = "s_DeprecatedDescriptors")]
25        pub s_deprecated_descriptors:
26            crate::system::collections::generic::list_1::List_1<crate::unity_engine::subsystemdescriptor::SubsystemDescriptor>,
27    }
28}
29
30#[cfg(feature = "unity_engine-subsystems_implementation-subsystemdescriptorstore-types")]
31pub use __types::*;
32
33#[cfg(feature = "unity_engine-subsystems_implementation-subsystemdescriptorstore")]
34impl SubsystemDescriptorStore {
35    #[doc = "`InitializeManagedDescriptor(::unity::IntPtr, crate::unity_engine::integratedsubsystemdescriptor::IntegratedSubsystemDescriptor)` overload"]
36    pub fn initialize_managed_descriptor(
37        ptr: impl ::core::convert::Into<::unity::IntPtr>,
38        desc: impl ::core::convert::Into<crate::unity_engine::integratedsubsystemdescriptor::IntegratedSubsystemDescriptor>,
39    ) -> () {
40        unsafe {
41            ::unity::il2cpp_call!((::unity::module_base()+0x3f3aa80usize)as*mut u8,();
42(::unity::IntPtr)::core::convert::Into::into(ptr),(crate::unity_engine::integratedsubsystemdescriptor::IntegratedSubsystemDescriptor)::core::convert::Into::into(desc))
43        }
44    }
45
46    #[doc = "`ClearManagedDescriptors()` overload"]
47    pub fn clear_managed_descriptors() -> () {
48        unsafe {
49            ::unity::il2cpp_call!((::unity::module_base()+0x3f3ab20usize)as*mut u8,();
50            )
51        }
52    }
53
54    #[doc = "`ReportSingleSubsystemAnalytics(::unity::Il2CppString)` overload"]
55    pub fn report_single_subsystem_analytics(id: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
56        unsafe {
57            ::unity::il2cpp_call!((::unity::module_base()+0x3f3acb0usize)as*mut u8,();
58(::unity::Il2CppString)::core::convert::Into::into(id))
59        }
60    }
61
62    pub fn register_descriptor<
63        M0: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity,
64        M1: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity,
65    >(
66        descriptor: impl ::core::convert::Into<M0>,
67        store_in_list: impl ::core::convert::Into<crate::system::collections::generic::list_1::List_1<M1>>,
68    ) -> () {
69        static OPEN: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
70            ::unity::lookup::method_info_on_class(<SubsystemDescriptorStore as ::unity::ClassIdentity>::class(), "RegisterDescriptor", 2)
71        });
72        #[allow(clippy::type_complexity)]
73        static CACHE: ::std::sync::OnceLock<::std::sync::Mutex<::std::collections::HashMap<usize, &'static ::unity::il2cpp::MethodInfo>>> =
74            ::std::sync::OnceLock::new();
75        let _ = true;
76        let __open: &'static ::unity::il2cpp::MethodInfo = match &*OPEN {
77            ::core::result::Result::Ok(mi) => *mi,
78            ::core::result::Result::Err(e) => {
79                panic!(
80                    "method lookup failed: {}
81::{}
82: {}
83",
84                    <SubsystemDescriptorStore as ::unity::ClassIdentity>::NAME,
85                    "RegisterDescriptor",
86                    e
87                )
88            },
89        };
90        let __cache = CACHE.get_or_init(|| ::std::sync::Mutex::new(::std::collections::HashMap::new()));
91        let __key: usize = (<M0 as ::unity::IlType>::il_type() as *const _ as usize) ^ (<M1 as ::unity::IlType>::il_type() as *const _ as usize);
92        let __inflated: &'static ::unity::il2cpp::MethodInfo = {
93            let mut __guard = __cache.lock().unwrap();
94            *__guard.entry(__key).or_insert_with(|| {
95                ::unity::il2cpp::generic::create_generic_method_info(__open, &[
96                    <M0 as ::unity::IlType>::il_type(),
97                    <M1 as ::unity::IlType>::il_type(),
98                ])
99            })
100        };
101        unsafe {
102            let __f: extern "C" fn(M0, crate::system::collections::generic::list_1::List_1<M1>, ::unity::OptionalMethod) -> () =
103                ::core::mem::transmute(__inflated.method_ptr);
104            let __mi_opaque: &'static () = &*(__inflated as *const _ as *const ());
105            __f(
106                ::core::convert::Into::into(descriptor),
107                ::core::convert::Into::into(store_in_list),
108                ::core::option::Option::Some(__mi_opaque),
109            )
110        }
111    }
112
113    #[doc = "`RegisterDeprecatedDescriptor(crate::unity_engine::subsystemdescriptor::SubsystemDescriptor)` overload"]
114    pub fn register_deprecated_descriptor(
115        descriptor: impl ::core::convert::Into<crate::unity_engine::subsystemdescriptor::SubsystemDescriptor>,
116    ) -> () {
117        unsafe {
118            ::unity::il2cpp_call!((::unity::module_base()+0x3f3a9c0usize)as*mut u8,();
119(crate::unity_engine::subsystemdescriptor::SubsystemDescriptor)::core::convert::Into::into(descriptor))
120        }
121    }
122
123    #[doc = "`.cctor()` overload"]
124    pub fn cctor() -> () {
125        unsafe {
126            ::unity::il2cpp_call!((::unity::module_base()+0x3f3ad00usize)as*mut u8,();
127            )
128        }
129    }
130}
131
132#[cfg(feature = "unity_engine-subsystems_implementation-subsystemdescriptorstore")]
133impl SubsystemDescriptorStore {
134    pub fn initialize_managed_descriptor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
135        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
136    }
137
138    pub fn clear_managed_descriptors_method_info() -> &'static ::unity::il2cpp::MethodInfo {
139        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
140    }
141
142    pub fn report_single_subsystem_analytics_method_info() -> &'static ::unity::il2cpp::MethodInfo {
143        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
144    }
145
146    pub fn register_deprecated_descriptor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
147        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
148    }
149
150    pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
151        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
152    }
153}
154
155#[cfg(feature = "unity_engine-subsystems_implementation-subsystemdescriptorstore")]
156#[doc(hidden)]
157pub mod prelude {
158    pub use super::{ISubsystemDescriptorStore, SubsystemDescriptorStore};
159    pub use crate::system::object::IObject;
160    #[cfg(feature = "system-object")]
161    pub use crate::system::object::IObjectMethods;
162}