engage/generated/unity_engine/
attributehelperengine.rs1#[cfg(feature = "unity_engine-attributehelperengine-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::system::object::{IObject, Object};
9
10 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/attributehelperengine/AttributeHelperEngine.md"))]
11 #[::unity::class(namespace = "UnityEngine", name = "AttributeHelperEngine")]
12 #[parent(crate::system::object::Object)]
13 pub struct AttributeHelperEngine {
14 #[static_field]
15 #[rename(name = "_disallowMultipleComponentArray")]
16 pub disallow_multiple_component_array: ::unity::Array<crate::unity_engine::disallowmultiplecomponent::DisallowMultipleComponent>,
17 #[static_field]
18 #[rename(name = "_executeInEditModeArray")]
19 pub execute_in_edit_mode_array: ::unity::Array<crate::unity_engine::executeineditmode::ExecuteInEditMode>,
20 #[static_field]
21 #[rename(name = "_requireComponentArray")]
22 pub require_component_array: ::unity::Array<crate::unity_engine::requirecomponent::RequireComponent>,
23 }
24}
25
26#[cfg(feature = "unity_engine-attributehelperengine-types")]
27pub use __types::*;
28
29#[cfg(feature = "unity_engine-attributehelperengine")]
30impl AttributeHelperEngine {
31 #[doc = "`GetParentTypeDisallowingMultipleInclusion(::unity::SystemType)` overload"]
32 pub fn get_parent_type_disallowing_multiple_inclusion(r#type: impl ::core::convert::Into<::unity::SystemType>) -> ::unity::SystemType {
33 unsafe {
34 ::unity::il2cpp_call!((::unity::module_base()+0x2c36850usize)as*mut u8, ::unity::SystemType;
35(::unity::SystemType)::core::convert::Into::into(r#type))
36 }
37 }
38
39 #[doc = "`GetRequiredComponents(::unity::SystemType)` overload"]
40 pub fn get_required_components(klass: impl ::core::convert::Into<::unity::SystemType>) -> ::unity::Array<::unity::SystemType> {
41 unsafe {
42 ::unity::il2cpp_call!((::unity::module_base()+0x2c36970usize)as*mut u8, ::unity::Array< ::unity::SystemType> ;
43(::unity::SystemType)::core::convert::Into::into(klass))
44 }
45 }
46
47 #[doc = "`GetExecuteMode(::unity::SystemType)` overload"]
48 pub fn get_execute_mode(klass: impl ::core::convert::Into<::unity::SystemType>) -> i32 {
49 unsafe {
50 ::unity::il2cpp_call!((::unity::module_base()+0x2c36d20usize)as*mut u8,i32;
51(::unity::SystemType)::core::convert::Into::into(klass))
52 }
53 }
54
55 #[doc = "`CheckIsEditorScript(::unity::SystemType)` overload"]
56 pub fn check_is_editor_script(klass: impl ::core::convert::Into<::unity::SystemType>) -> i32 {
57 unsafe {
58 ::unity::il2cpp_call!((::unity::module_base()+0x2c36e40usize)as*mut u8,i32;
59(::unity::SystemType)::core::convert::Into::into(klass))
60 }
61 }
62
63 #[doc = "`GetDefaultExecutionOrderFor(::unity::SystemType)` overload"]
64 pub fn get_default_execution_order_for(klass: impl ::core::convert::Into<::unity::SystemType>) -> i32 {
65 unsafe {
66 ::unity::il2cpp_call!((::unity::module_base()+0x2c36f40usize)as*mut u8,i32;
67(::unity::SystemType)::core::convert::Into::into(klass))
68 }
69 }
70
71 pub fn get_custom_attribute_of_type<M0: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity>(
72 klass: impl ::core::convert::Into<::unity::SystemType>,
73 ) -> M0 {
74 static OPEN: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
75 ::unity::lookup::method_info_on_class(<AttributeHelperEngine as ::unity::ClassIdentity>::class(), "GetCustomAttributeOfType", 1)
76 });
77 #[allow(clippy::type_complexity)]
78 static CACHE: ::std::sync::OnceLock<::std::sync::Mutex<::std::collections::HashMap<usize, &'static ::unity::il2cpp::MethodInfo>>> =
79 ::std::sync::OnceLock::new();
80 let _ = true;
81 let __open: &'static ::unity::il2cpp::MethodInfo = match &*OPEN {
82 ::core::result::Result::Ok(mi) => *mi,
83 ::core::result::Result::Err(e) => {
84 panic!(
85 "method lookup failed: {}
86::{}
87: {}
88",
89 <AttributeHelperEngine as ::unity::ClassIdentity>::NAME,
90 "GetCustomAttributeOfType",
91 e
92 )
93 },
94 };
95 let __cache = CACHE.get_or_init(|| ::std::sync::Mutex::new(::std::collections::HashMap::new()));
96 let __key: usize = <M0 as ::unity::IlType>::il_type() as *const _ as usize;
97 let __inflated: &'static ::unity::il2cpp::MethodInfo = {
98 let mut __guard = __cache.lock().unwrap();
99 *__guard
100 .entry(__key)
101 .or_insert_with(|| ::unity::il2cpp::generic::create_generic_method_info(__open, &[<M0 as ::unity::IlType>::il_type()]))
102 };
103 unsafe {
104 let __f: extern "C" fn(::unity::SystemType, ::unity::OptionalMethod) -> M0 = ::core::mem::transmute(__inflated.method_ptr);
105 let __mi_opaque: &'static () = &*(__inflated as *const _ as *const ());
106 __f(::core::convert::Into::into(klass), ::core::option::Option::Some(__mi_opaque))
107 }
108 }
109
110 #[doc = "`.cctor()` overload"]
111 pub fn cctor() -> () {
112 unsafe {
113 ::unity::il2cpp_call!((::unity::module_base()+0x2c36ff0usize)as*mut u8,();
114 )
115 }
116 }
117}
118
119#[cfg(feature = "unity_engine-attributehelperengine")]
120impl AttributeHelperEngine {
121 pub fn get_parent_type_disallowing_multiple_inclusion_method_info() -> &'static ::unity::il2cpp::MethodInfo {
122 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
123 }
124
125 pub fn get_required_components_method_info() -> &'static ::unity::il2cpp::MethodInfo {
126 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
127 }
128
129 pub fn get_execute_mode_method_info() -> &'static ::unity::il2cpp::MethodInfo {
130 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
131 }
132
133 pub fn check_is_editor_script_method_info() -> &'static ::unity::il2cpp::MethodInfo {
134 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
135 }
136
137 pub fn get_default_execution_order_for_method_info() -> &'static ::unity::il2cpp::MethodInfo {
138 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
139 }
140
141 pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
142 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
143 }
144}
145
146#[cfg(feature = "unity_engine-attributehelperengine")]
147#[doc(hidden)]
148pub mod prelude {
149 pub use super::{AttributeHelperEngine, IAttributeHelperEngine};
150 pub use crate::system::object::IObject;
151 #[cfg(feature = "system-object")]
152 pub use crate::system::object::IObjectMethods;
153}