engage/generated/unity_engine/
iexposedpropertytable.rs1#[cfg(feature = "unity_engine-iexposedpropertytable-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/iexposedpropertytable/IExposedPropertyTable.md"))]
10 #[::unity::class(namespace = "UnityEngine", name = "IExposedPropertyTable")]
11 pub struct IExposedPropertyTable {}
12}
13
14#[cfg(feature = "unity_engine-iexposedpropertytable-types")]
15pub use __types::*;
16
17#[cfg(feature = "unity_engine-iexposedpropertytable")]
18pub trait IIExposedPropertyTableMethods: IIExposedPropertyTable {
19 #[doc = "`GetReferenceValue(crate::unity_engine::propertyname::PropertyName, *mutbool)` overload"]
20 fn get_reference_value(
21 self,
22 id: impl ::core::convert::Into<crate::unity_engine::propertyname::PropertyName>,
23 ) -> (crate::unity_engine::object_2::Object_2, bool) {
24 unsafe {
25 let __receiver = <IExposedPropertyTable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
26 let mut __out_0 = ::core::mem::MaybeUninit::<bool>::uninit();
27 let __ret = {
28 {
29 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
30 let __vi = *__vt.get(0usize).unwrap_or_else(|| {
31 panic!(
32 "unity: virtual slot {}
33 out of range (vtable len {}
34) on the runtime class behind {}
35 (method `{}
36`)",
37 0usize,
38 __vt.len(),
39 <IExposedPropertyTable as ::unity::ClassIdentity>::NAME,
40 "GetReferenceValue",
41 )
42 });
43 let __inner: extern "C" fn(
44 IExposedPropertyTable,
45 crate::unity_engine::propertyname::PropertyName,
46 *mut bool,
47 ::unity::OptionalMethod,
48 ) -> crate::unity_engine::object_2::Object_2 = ::core::mem::transmute(__vi.method_ptr);
49 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
50 __inner(__receiver, ::core::convert::Into::into(id), __out_0.as_mut_ptr(), __mi)
51 }
52 };
53 (__ret, __out_0.assume_init())
54 }
55 }
56}
57
58#[cfg(feature = "unity_engine-iexposedpropertytable")]
59impl<__T: IIExposedPropertyTable> IIExposedPropertyTableMethods for __T {}
60
61#[cfg(feature = "unity_engine-iexposedpropertytable")]
62impl IExposedPropertyTable {
63 pub fn get_reference_value_method_info() -> &'static ::unity::il2cpp::MethodInfo {
64 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
65 }
66}
67
68#[cfg(feature = "unity_engine-iexposedpropertytable")]
69impl IExposedPropertyTable {
70 #[doc = "Direct (non-virtual) call to `IExposedPropertyTable`'s own `GetReferenceValue`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
71 pub unsafe fn get_reference_value(
72 this: impl ::core::convert::Into<::unity::IlInstance>,
73 id: crate::unity_engine::propertyname::PropertyName,
74 id_valid: *mut bool,
75 ) -> crate::unity_engine::object_2::Object_2 {
76 let __mi = Self::get_reference_value_method_info();
77 let __inner: extern "C" fn(
78 ::unity::IlInstance,
79 crate::unity_engine::propertyname::PropertyName,
80 *mut bool,
81 ::unity::OptionalMethod,
82 ) -> crate::unity_engine::object_2::Object_2 = ::core::mem::transmute(__mi.method_ptr);
83 __inner(this.into(), id, id_valid, ::core::option::Option::None)
84 }
85}
86
87#[cfg(feature = "unity_engine-iexposedpropertytable")]
88#[doc(hidden)]
89pub mod prelude {
90 pub use super::{IExposedPropertyTable, IIExposedPropertyTable, IIExposedPropertyTableMethods};
91}