engage/generated/unity_engine/addressable_assets/resource_locators/
iresourcelocator.rs1#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8
9 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/addressable_assets/resource_locators/iresourcelocator/IResourceLocator.md"))]
10 #[::unity::class(namespace = "UnityEngine.AddressableAssets.ResourceLocators", name = "IResourceLocator")]
11 pub struct IResourceLocator {}
12}
13
14#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator-types")]
15pub use __types::*;
16
17#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator")]
18pub trait IIResourceLocatorMethods: IIResourceLocator {
19 #[doc = "`get_LocatorId()` overload"]
20 fn get_locator_id(self) -> ::unity::Il2CppString {
21 unsafe {
22 let __receiver = <IResourceLocator as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
23 {
24 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
25 let __vi = *__vt.get(0usize).unwrap_or_else(|| {
26 panic!(
27 "unity: virtual slot {}
28 out of range (vtable len {}
29) on the runtime class behind {}
30 (method `{}
31`)",
32 0usize,
33 __vt.len(),
34 <IResourceLocator as ::unity::ClassIdentity>::NAME,
35 "get_LocatorId",
36 )
37 });
38 let __inner: extern "C" fn(IResourceLocator, ::unity::OptionalMethod) -> ::unity::Il2CppString =
39 ::core::mem::transmute(__vi.method_ptr);
40 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
41 __inner(__receiver, __mi)
42 }
43 }
44 }
45 #[doc = "`get_Keys()` overload"]
46 fn get_keys(self) -> crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::system::object::Object> {
47 unsafe {
48 let __receiver = <IResourceLocator as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
49 {
50 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
51 let __vi = *__vt.get(1usize).unwrap_or_else(|| {
52 panic!(
53 "unity: virtual slot {}
54 out of range (vtable len {}
55) on the runtime class behind {}
56 (method `{}
57`)",
58 1usize,
59 __vt.len(),
60 <IResourceLocator as ::unity::ClassIdentity>::NAME,
61 "get_Keys",
62 )
63 });
64 let __inner: extern "C" fn(
65 IResourceLocator,
66 ::unity::OptionalMethod,
67 )
68 -> crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::system::object::Object> =
69 ::core::mem::transmute(__vi.method_ptr);
70 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
71 __inner(__receiver, __mi)
72 }
73 }
74 }
75 #[doc = "`Locate(crate::system::object::Object, ::unity::SystemType, *mutcrate::system::collections::generic::ilist_1_interface::IList_1_Interface<crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation>)` overload"]
76 fn locate(
77 self,
78 key: impl ::core::convert::Into<crate::system::object::Object>,
79 r#type: impl ::core::convert::Into<::unity::SystemType>,
80 ) -> (
81 bool,
82 crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
83 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
84 >,
85 ) {
86 unsafe {
87 let __receiver = <IResourceLocator as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
88 let mut __out_0 = ::core::mem::MaybeUninit::<
89 crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
90 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
91 >,
92 >::uninit();
93 let __ret = {
94 {
95 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
96 let __vi = *__vt.get(2usize).unwrap_or_else(|| {
97 panic!(
98 "unity: virtual slot {}
99 out of range (vtable len {}
100) on the runtime class behind {}
101 (method `{}
102`)",
103 2usize,
104 __vt.len(),
105 <IResourceLocator as ::unity::ClassIdentity>::NAME,
106 "Locate",
107 )
108 });
109 let __inner: extern "C" fn(
110 IResourceLocator,
111 crate::system::object::Object,
112 ::unity::SystemType,
113 *mut crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
114 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
115 >,
116 ::unity::OptionalMethod,
117 ) -> bool = ::core::mem::transmute(__vi.method_ptr);
118 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
119 __inner(
120 __receiver,
121 ::core::convert::Into::into(key),
122 ::core::convert::Into::into(r#type),
123 __out_0.as_mut_ptr(),
124 __mi,
125 )
126 }
127 };
128 (__ret, __out_0.assume_init())
129 }
130 }
131}
132
133#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator")]
134impl<__T: IIResourceLocator> IIResourceLocatorMethods for __T {}
135
136#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator")]
137impl IResourceLocator {
138 pub fn get_locator_id_method_info() -> &'static ::unity::il2cpp::MethodInfo {
139 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
140 }
141
142 pub fn get_keys_method_info() -> &'static ::unity::il2cpp::MethodInfo {
143 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
144 }
145
146 pub fn locate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
147 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
148 }
149}
150
151#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator")]
152impl IResourceLocator {
153 #[doc = "Direct (non-virtual) call to `IResourceLocator`'s own `get_LocatorId`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
154 pub unsafe fn get_locator_id(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
155 let __mi = Self::get_locator_id_method_info();
156 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
157 __inner(this.into(), ::core::option::Option::None)
158 }
159
160 #[doc = "Direct (non-virtual) call to `IResourceLocator`'s own `get_Keys`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
161 pub unsafe fn get_keys(
162 this: impl ::core::convert::Into<::unity::IlInstance>,
163 ) -> crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::system::object::Object> {
164 let __mi = Self::get_keys_method_info();
165 let __inner: extern "C" fn(
166 ::unity::IlInstance,
167 ::unity::OptionalMethod,
168 ) -> crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::system::object::Object> =
169 ::core::mem::transmute(__mi.method_ptr);
170 __inner(this.into(), ::core::option::Option::None)
171 }
172
173 #[doc = "Direct (non-virtual) call to `IResourceLocator`'s own `Locate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
174 pub unsafe fn locate(
175 this: impl ::core::convert::Into<::unity::IlInstance>,
176 key: crate::system::object::Object,
177 r#type: ::unity::SystemType,
178 locations: *mut crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
179 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
180 >,
181 ) -> bool {
182 let __mi = Self::locate_method_info();
183 let __inner: extern "C" fn(
184 ::unity::IlInstance,
185 crate::system::object::Object,
186 ::unity::SystemType,
187 *mut crate::system::collections::generic::ilist_1_interface::IList_1_Interface<
188 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
189 >,
190 ::unity::OptionalMethod,
191 ) -> bool = ::core::mem::transmute(__mi.method_ptr);
192 __inner(this.into(), key, r#type, locations, ::core::option::Option::None)
193 }
194}
195
196#[cfg(feature = "unity_engine-addressable_assets-resource_locators-iresourcelocator")]
197#[doc(hidden)]
198pub mod prelude {
199 pub use super::{IIResourceLocator, IIResourceLocatorMethods, IResourceLocator};
200}