Skip to main content

engage/generated/unity_engine/
resourcerequest.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-resourcerequest-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::{
11            asyncoperation::{AsyncOperation, IAsyncOperation},
12            yieldinstruction::{IYieldInstruction, YieldInstruction},
13        },
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/resourcerequest/ResourceRequest.md"))]
17    #[::unity::class(namespace = "UnityEngine", name = "ResourceRequest")]
18    #[parent(crate::unity_engine::asyncoperation::AsyncOperation)]
19    pub struct ResourceRequest {
20        #[offset(32)]
21        #[rename(name = "m_Path")]
22        pub m_path: ::unity::Il2CppString,
23        #[offset(40)]
24        #[rename(name = "m_Type")]
25        pub m_type: ::unity::SystemType,
26    }
27}
28
29#[cfg(feature = "unity_engine-resourcerequest-types")]
30pub use __types::*;
31
32#[cfg(feature = "unity_engine-resourcerequest")]
33pub trait IResourceRequestMethods: IResourceRequest {
34    #[doc = "`GetResult()` overload"]
35    fn get_result(self) -> crate::unity_engine::object_2::Object_2 {
36        unsafe {
37            let __receiver = <ResourceRequest as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
38            {
39                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
40                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
41                    panic!(
42                        "unity: virtual slot {}
43 out of range (vtable len {}
44) on the runtime class behind {}
45 (method `{}
46`)",
47                        4usize,
48                        __vt.len(),
49                        <ResourceRequest as ::unity::ClassIdentity>::NAME,
50                        "GetResult",
51                    )
52                });
53                let __inner: extern "C" fn(ResourceRequest, ::unity::OptionalMethod) -> crate::unity_engine::object_2::Object_2 =
54                    ::core::mem::transmute(__vi.method_ptr);
55                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
56                __inner(__receiver, __mi)
57            }
58        }
59    }
60    #[doc = "`get_asset()` overload"]
61    fn get_asset(self) -> crate::unity_engine::object_2::Object_2 {
62        unsafe {
63            let __receiver = <ResourceRequest as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
64            ::unity::il2cpp_call!((::unity::module_base()+0x2f89050usize)as*mut u8,crate::unity_engine::object_2::Object_2;
65(ResourceRequest)__receiver)
66        }
67    }
68    #[doc = "`.ctor()` overload"]
69    fn ctor(self) -> () {
70        unsafe {
71            let __receiver = <ResourceRequest as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
72            ::unity::il2cpp_call!((::unity::module_base()+0x2f89060usize)as*mut u8,();
73(ResourceRequest)__receiver)
74        }
75    }
76}
77
78#[cfg(feature = "unity_engine-resourcerequest")]
79impl<__T: IResourceRequest> IResourceRequestMethods for __T {}
80
81#[cfg(feature = "unity_engine-resourcerequest")]
82impl ResourceRequest {
83    pub fn get_result_method_info() -> &'static ::unity::il2cpp::MethodInfo {
84        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
85    }
86
87    pub fn get_asset_method_info() -> &'static ::unity::il2cpp::MethodInfo {
88        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
89    }
90
91    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
92        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
93    }
94}
95
96#[cfg(feature = "unity_engine-resourcerequest")]
97impl ResourceRequest {
98    #[doc = "Direct (non-virtual) call to `ResourceRequest`'s own `GetResult`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
99    pub unsafe fn get_result(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::unity_engine::object_2::Object_2 {
100        let __mi = Self::get_result_method_info();
101        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::unity_engine::object_2::Object_2 =
102            ::core::mem::transmute(__mi.method_ptr);
103        __inner(this.into(), ::core::option::Option::None)
104    }
105}
106
107#[cfg(feature = "unity_engine-resourcerequest")]
108impl ResourceRequest {
109    #[doc = "`.ctor()` — no args"]
110    pub fn new() -> Self {
111        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
112            panic!(
113                "{}
114::{}
115 failed to instantiate",
116                ::core::stringify!(ResourceRequest),
117                ::core::stringify!(new),
118            )
119        });
120        <Self as IResourceRequestMethods>::ctor(this);
121        this
122    }
123}
124
125#[cfg(feature = "unity_engine-resourcerequest")]
126#[doc(hidden)]
127pub mod prelude {
128    pub use super::{IResourceRequest, IResourceRequestMethods, ResourceRequest};
129    #[cfg(feature = "system-object")]
130    pub use crate::system::object::IObjectMethods;
131    #[cfg(feature = "unity_engine-asyncoperation")]
132    pub use crate::unity_engine::asyncoperation::IAsyncOperationMethods;
133    #[cfg(feature = "unity_engine-yieldinstruction")]
134    pub use crate::unity_engine::yieldinstruction::IYieldInstructionMethods;
135    pub use crate::{
136        system::object::IObject,
137        unity_engine::{asyncoperation::IAsyncOperation, yieldinstruction::IYieldInstruction},
138    };
139}