engage/generated/unity_engine/resource_management/resource_providers/
assetbundlelocalprovider.rs1#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 system::object::{IObject, Object},
10 unity_engine::resource_management::resource_providers::resourceproviderbase::{IResourceProviderBase, ResourceProviderBase},
11 };
12
13 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/resource_management/resource_providers/assetbundlelocalprovider/AssetBundleLocalProvider.md"))]
14 #[::unity::class(namespace = "UnityEngine.ResourceManagement.ResourceProviders", name = "AssetBundleLocalProvider")]
15 #[parent(crate::unity_engine::resource_management::resource_providers::resourceproviderbase::ResourceProviderBase)]
16 pub struct AssetBundleLocalProvider {}
17}
18
19#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider-types")]
20pub use __types::*;
21
22#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
23pub trait IAssetBundleLocalProviderMethods: IAssetBundleLocalProvider {
24 #[doc = "`.ctor()` overload"]
25 fn ctor(self) -> () {
26 unsafe {
27 let __receiver =
28 <AssetBundleLocalProvider as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
29 ::unity::il2cpp_call!((::unity::module_base()+0x21198e0usize)as*mut u8,();
30(AssetBundleLocalProvider)__receiver)
31 }
32 }
33 #[doc = "`Provide(crate::unity_engine::resource_management::resource_providers::providehandle::ProvideHandle)` overload"]
34 fn provide(
35 self,
36 provider_interface: impl ::core::convert::Into<crate::unity_engine::resource_management::resource_providers::providehandle::ProvideHandle>,
37 ) -> () {
38 unsafe {
39 let __receiver =
40 <AssetBundleLocalProvider as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
41 {
42 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
43 let __vi = *__vt.get(17usize).unwrap_or_else(|| {
44 panic!(
45 "unity: virtual slot {}
46 out of range (vtable len {}
47) on the runtime class behind {}
48 (method `{}
49`)",
50 17usize,
51 __vt.len(),
52 <AssetBundleLocalProvider as ::unity::ClassIdentity>::NAME,
53 "Provide",
54 )
55 });
56 let __inner: extern "C" fn(
57 AssetBundleLocalProvider,
58 crate::unity_engine::resource_management::resource_providers::providehandle::ProvideHandle,
59 ::unity::OptionalMethod,
60 ) -> () = ::core::mem::transmute(__vi.method_ptr);
61 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
62 __inner(__receiver, ::core::convert::Into::into(provider_interface), __mi)
63 }
64 }
65 }
66 #[doc = "`GetDefaultType(crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation)` overload"]
67 fn get_default_type(
68 self,
69 location: impl ::core::convert::Into<crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation>,
70 ) -> ::unity::SystemType {
71 unsafe {
72 let __receiver =
73 <AssetBundleLocalProvider as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
74 {
75 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
76 let __vi = *__vt.get(16usize).unwrap_or_else(|| {
77 panic!(
78 "unity: virtual slot {}
79 out of range (vtable len {}
80) on the runtime class behind {}
81 (method `{}
82`)",
83 16usize,
84 __vt.len(),
85 <AssetBundleLocalProvider as ::unity::ClassIdentity>::NAME,
86 "GetDefaultType",
87 )
88 });
89 let __inner: extern "C" fn(
90 AssetBundleLocalProvider,
91 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
92 ::unity::OptionalMethod,
93 ) -> ::unity::SystemType = ::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, ::core::convert::Into::into(location), __mi)
96 }
97 }
98 }
99 #[doc = "`Release(crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation, crate::system::object::Object)` overload"]
100 fn release(
101 self,
102 location: impl ::core::convert::Into<crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation>,
103 asset: impl ::core::convert::Into<crate::system::object::Object>,
104 ) -> () {
105 unsafe {
106 let __receiver =
107 <AssetBundleLocalProvider as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
108 {
109 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
110 let __vi = *__vt.get(15usize).unwrap_or_else(|| {
111 panic!(
112 "unity: virtual slot {}
113 out of range (vtable len {}
114) on the runtime class behind {}
115 (method `{}
116`)",
117 15usize,
118 __vt.len(),
119 <AssetBundleLocalProvider as ::unity::ClassIdentity>::NAME,
120 "Release",
121 )
122 });
123 let __inner: extern "C" fn(
124 AssetBundleLocalProvider,
125 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
126 crate::system::object::Object,
127 ::unity::OptionalMethod,
128 ) -> () = ::core::mem::transmute(__vi.method_ptr);
129 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
130 __inner(
131 __receiver,
132 ::core::convert::Into::into(location),
133 ::core::convert::Into::into(asset),
134 __mi,
135 )
136 }
137 }
138 }
139}
140
141#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
142impl<__T: IAssetBundleLocalProvider> IAssetBundleLocalProviderMethods for __T {}
143
144#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
145impl AssetBundleLocalProvider {
146 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
147 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
148 }
149
150 pub fn provide_method_info() -> &'static ::unity::il2cpp::MethodInfo {
151 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
152 }
153
154 pub fn get_default_type_method_info() -> &'static ::unity::il2cpp::MethodInfo {
155 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
156 }
157
158 pub fn release_method_info() -> &'static ::unity::il2cpp::MethodInfo {
159 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
160 }
161}
162
163#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
164impl AssetBundleLocalProvider {
165 #[doc = "Direct (non-virtual) call to `AssetBundleLocalProvider`'s own `Provide`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
166 pub unsafe fn provide(
167 this: impl ::core::convert::Into<::unity::IlInstance>,
168 provider_interface: crate::unity_engine::resource_management::resource_providers::providehandle::ProvideHandle,
169 ) -> () {
170 let __mi = Self::provide_method_info();
171 let __inner: extern "C" fn(
172 ::unity::IlInstance,
173 crate::unity_engine::resource_management::resource_providers::providehandle::ProvideHandle,
174 ::unity::OptionalMethod,
175 ) -> () = ::core::mem::transmute(__mi.method_ptr);
176 __inner(this.into(), provider_interface, ::core::option::Option::None)
177 }
178
179 #[doc = "Direct (non-virtual) call to `AssetBundleLocalProvider`'s own `GetDefaultType`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
180 pub unsafe fn get_default_type(
181 this: impl ::core::convert::Into<::unity::IlInstance>,
182 location: crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
183 ) -> ::unity::SystemType {
184 let __mi = Self::get_default_type_method_info();
185 let __inner: extern "C" fn(
186 ::unity::IlInstance,
187 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
188 ::unity::OptionalMethod,
189 ) -> ::unity::SystemType = ::core::mem::transmute(__mi.method_ptr);
190 __inner(this.into(), location, ::core::option::Option::None)
191 }
192
193 #[doc = "Direct (non-virtual) call to `AssetBundleLocalProvider`'s own `Release`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
194 pub unsafe fn release(
195 this: impl ::core::convert::Into<::unity::IlInstance>,
196 location: crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
197 asset: crate::system::object::Object,
198 ) -> () {
199 let __mi = Self::release_method_info();
200 let __inner: extern "C" fn(
201 ::unity::IlInstance,
202 crate::unity_engine::resource_management::resource_locations::iresourcelocation::IResourceLocation,
203 crate::system::object::Object,
204 ::unity::OptionalMethod,
205 ) -> () = ::core::mem::transmute(__mi.method_ptr);
206 __inner(this.into(), location, asset, ::core::option::Option::None)
207 }
208}
209
210#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
211impl AssetBundleLocalProvider {
212 #[doc = "`.ctor()` — no args"]
213 pub fn new() -> Self {
214 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
215 panic!(
216 "{}
217::{}
218 failed to instantiate",
219 ::core::stringify!(AssetBundleLocalProvider),
220 ::core::stringify!(new),
221 )
222 });
223 <Self as IAssetBundleLocalProviderMethods>::ctor(this);
224 this
225 }
226}
227
228#[cfg(feature = "unity_engine-resource_management-resource_providers-assetbundlelocalprovider")]
229#[doc(hidden)]
230pub mod prelude {
231 pub use super::{AssetBundleLocalProvider, IAssetBundleLocalProvider, IAssetBundleLocalProviderMethods};
232 #[cfg(feature = "system-object")]
233 pub use crate::system::object::IObjectMethods;
234 #[cfg(feature = "unity_engine-resource_management-resource_providers-resourceproviderbase")]
235 pub use crate::unity_engine::resource_management::resource_providers::resourceproviderbase::IResourceProviderBaseMethods;
236 pub use crate::{system::object::IObject, unity_engine::resource_management::resource_providers::resourceproviderbase::IResourceProviderBase};
237}