engage/generated/system/reflection/
monopropertyinfo.rs1#[cfg(feature = "system-reflection-monopropertyinfo-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::system::{
9 object::{IObject, Object},
10 valuetype::{IValueType, ValueType},
11 };
12
13 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/system/reflection/monopropertyinfo/MonoPropertyInfo.md"))]
14 #[repr(C)]
15 #[derive(::core::clone::Clone, ::core::marker::Copy)]
16 pub struct MonoPropertyInfo {
17 pub parent: ::unity::SystemType,
18 pub declaring_type: ::unity::SystemType,
19 pub name: ::unity::Il2CppString,
20 pub get_method: crate::system::reflection::methodinfo::MethodInfo,
21 pub set_method: crate::system::reflection::methodinfo::MethodInfo,
22 pub attrs: crate::system::reflection::propertyattributes::PropertyAttributes,
23 }
24 impl ::unity::ClassIdentity for MonoPropertyInfo {
25 const NAME: &'static str = "MonoPropertyInfo";
26 const NAMESPACE: &'static str = "System.Reflection";
27
28 fn class() -> ::unity::Class {
29 static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
30 *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
31 }
32 }
33 impl ::unity::IlType for MonoPropertyInfo {
34 fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
35 &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
36 }
37 }
38}
39
40#[cfg(feature = "system-reflection-monopropertyinfo-types")]
41pub use __types::*;
42
43#[cfg(feature = "system-reflection-monopropertyinfo")]
44impl MonoPropertyInfo {
45 #[doc = "`get_property_info(crate::system::reflection::monoproperty::MonoProperty, *mutcrate::system::reflection::monopropertyinfo::MonoPropertyInfo, crate::system::reflection::pinfo::PInfo)` overload"]
46 pub fn get_property_info(
47 prop: impl ::core::convert::Into<crate::system::reflection::monoproperty::MonoProperty>,
48 req_info: impl ::core::convert::Into<crate::system::reflection::pinfo::PInfo>,
49 ) -> crate::system::reflection::monopropertyinfo::MonoPropertyInfo {
50 unsafe {
51 let mut __out_0 = ::core::mem::MaybeUninit::<crate::system::reflection::monopropertyinfo::MonoPropertyInfo>::uninit();
52 ::unity::il2cpp_call!((::unity::module_base()+0x3383820usize)as*mut u8,();
53(crate::system::reflection::monoproperty::MonoProperty)::core::convert::Into::into(prop),(*mut crate::system::reflection::monopropertyinfo::MonoPropertyInfo)__out_0.as_mut_ptr(),(crate::system::reflection::pinfo::PInfo)::core::convert::Into::into(req_info));
54 __out_0.assume_init()
55 }
56 }
57
58 #[doc = "`GetTypeModifiers(crate::system::reflection::monoproperty::MonoProperty, bool)` overload"]
59 pub fn get_type_modifiers(
60 prop: impl ::core::convert::Into<crate::system::reflection::monoproperty::MonoProperty>,
61 optional: impl ::core::convert::Into<bool>,
62 ) -> ::unity::Array<::unity::SystemType> {
63 unsafe {
64 ::unity::il2cpp_call!((::unity::module_base()+0x3384af0usize)as*mut u8, ::unity::Array< ::unity::SystemType> ;
65(crate::system::reflection::monoproperty::MonoProperty)::core::convert::Into::into(prop),(bool)::core::convert::Into::into(optional))
66 }
67 }
68
69 #[doc = "`get_default_value(crate::system::reflection::monoproperty::MonoProperty)` overload"]
70 pub fn get_default_value(
71 prop: impl ::core::convert::Into<crate::system::reflection::monoproperty::MonoProperty>,
72 ) -> crate::system::object::Object {
73 unsafe {
74 ::unity::il2cpp_call!((::unity::module_base()+0x3384120usize)as*mut u8,crate::system::object::Object;
75(crate::system::reflection::monoproperty::MonoProperty)::core::convert::Into::into(prop))
76 }
77 }
78}
79
80#[cfg(feature = "system-reflection-monopropertyinfo")]
81impl MonoPropertyInfo {
82 pub fn get_property_info_method_info() -> &'static ::unity::il2cpp::MethodInfo {
83 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
84 }
85
86 pub fn get_type_modifiers_method_info() -> &'static ::unity::il2cpp::MethodInfo {
87 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
88 }
89
90 pub fn get_default_value_method_info() -> &'static ::unity::il2cpp::MethodInfo {
91 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
92 }
93}
94
95#[cfg(feature = "system-reflection-monopropertyinfo")]
96#[doc(hidden)]
97pub mod prelude {
98 pub use super::MonoPropertyInfo;
99 #[cfg(feature = "system-object")]
100 pub use crate::system::object::IObjectMethods;
101 #[cfg(feature = "system-valuetype")]
102 pub use crate::system::valuetype::IValueTypeMethods;
103 pub use crate::system::{object::IObject, valuetype::IValueType};
104}