engage/generated/unity_engine/
trackedreference.rs1#[cfg(feature = "unity_engine-trackedreference-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/trackedreference/TrackedReference.md"))]
11 #[::unity::class(namespace = "UnityEngine", name = "TrackedReference")]
12 #[parent(crate::system::object::Object)]
13 pub struct TrackedReference {
14 #[offset(16)]
15 #[rename(name = "m_Ptr")]
16 pub m_ptr: ::unity::IntPtr,
17 }
18}
19
20#[cfg(feature = "unity_engine-trackedreference-types")]
21pub use __types::*;
22
23#[cfg(feature = "unity_engine-trackedreference")]
24impl TrackedReference {
25 #[doc = "`op_Equality(crate::unity_engine::trackedreference::TrackedReference, crate::unity_engine::trackedreference::TrackedReference)` overload"]
26 pub fn op_equality(
27 x: impl ::core::convert::Into<crate::unity_engine::trackedreference::TrackedReference>,
28 y: impl ::core::convert::Into<crate::unity_engine::trackedreference::TrackedReference>,
29 ) -> bool {
30 unsafe {
31 ::unity::il2cpp_call!((::unity::module_base()+0x378f5f0usize)as*mut u8,bool;
32(crate::unity_engine::trackedreference::TrackedReference)::core::convert::Into::into(x),(crate::unity_engine::trackedreference::TrackedReference)::core::convert::Into::into(y))
33 }
34 }
35
36 #[doc = "`op_Inequality(crate::unity_engine::trackedreference::TrackedReference, crate::unity_engine::trackedreference::TrackedReference)` overload"]
37 pub fn op_inequality(
38 x: impl ::core::convert::Into<crate::unity_engine::trackedreference::TrackedReference>,
39 y: impl ::core::convert::Into<crate::unity_engine::trackedreference::TrackedReference>,
40 ) -> bool {
41 unsafe {
42 ::unity::il2cpp_call!((::unity::module_base()+0x378f680usize)as*mut u8,bool;
43(crate::unity_engine::trackedreference::TrackedReference)::core::convert::Into::into(x),(crate::unity_engine::trackedreference::TrackedReference)::core::convert::Into::into(y))
44 }
45 }
46
47 #[doc = "`op_Implicit(crate::unity_engine::trackedreference::TrackedReference)` overload"]
48 pub fn op_implicit(exists: impl ::core::convert::Into<crate::unity_engine::trackedreference::TrackedReference>) -> bool {
49 unsafe {
50 ::unity::il2cpp_call!((::unity::module_base()+0x378f810usize)as*mut u8,bool;
51(crate::unity_engine::trackedreference::TrackedReference)::core::convert::Into::into(exists))
52 }
53 }
54}
55
56#[cfg(feature = "unity_engine-trackedreference")]
57pub trait ITrackedReferenceMethods: ITrackedReference {
58 #[doc = "`.ctor()` overload"]
59 fn ctor(self) -> () {
60 unsafe {
61 let __receiver = <TrackedReference as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
62 ::unity::il2cpp_call!((::unity::module_base()+0x378f5e0usize)as*mut u8,();
63(TrackedReference)__receiver)
64 }
65 }
66 #[doc = "`Equals(crate::system::object::Object)` overload"]
67 fn equals(self, o: impl ::core::convert::Into<crate::system::object::Object>) -> bool {
68 unsafe {
69 let __receiver = <TrackedReference as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
70 {
71 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
72 let __vi = *__vt.get(0usize).unwrap_or_else(|| {
73 panic!(
74 "unity: virtual slot {}
75 out of range (vtable len {}
76) on the runtime class behind {}
77 (method `{}
78`)",
79 0usize,
80 __vt.len(),
81 <TrackedReference as ::unity::ClassIdentity>::NAME,
82 "Equals",
83 )
84 });
85 let __inner: extern "C" fn(TrackedReference, crate::system::object::Object, ::unity::OptionalMethod) -> bool =
86 ::core::mem::transmute(__vi.method_ptr);
87 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
88 __inner(__receiver, ::core::convert::Into::into(o), __mi)
89 }
90 }
91 }
92 #[doc = "`GetHashCode()` overload"]
93 fn get_hash_code(self) -> i32 {
94 unsafe {
95 let __receiver = <TrackedReference as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
96 {
97 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
98 let __vi = *__vt.get(2usize).unwrap_or_else(|| {
99 panic!(
100 "unity: virtual slot {}
101 out of range (vtable len {}
102) on the runtime class behind {}
103 (method `{}
104`)",
105 2usize,
106 __vt.len(),
107 <TrackedReference as ::unity::ClassIdentity>::NAME,
108 "GetHashCode",
109 )
110 });
111 let __inner: extern "C" fn(TrackedReference, ::unity::OptionalMethod) -> i32 = ::core::mem::transmute(__vi.method_ptr);
112 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
113 __inner(__receiver, __mi)
114 }
115 }
116 }
117}
118
119#[cfg(feature = "unity_engine-trackedreference")]
120impl<__T: ITrackedReference> ITrackedReferenceMethods for __T {}
121
122#[cfg(feature = "unity_engine-trackedreference")]
123impl TrackedReference {
124 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
125 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
126 }
127
128 pub fn op_equality_method_info() -> &'static ::unity::il2cpp::MethodInfo {
129 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
130 }
131
132 pub fn op_inequality_method_info() -> &'static ::unity::il2cpp::MethodInfo {
133 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
134 }
135
136 pub fn equals_method_info() -> &'static ::unity::il2cpp::MethodInfo {
137 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
138 }
139
140 pub fn get_hash_code_method_info() -> &'static ::unity::il2cpp::MethodInfo {
141 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
142 }
143
144 pub fn op_implicit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
145 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
146 }
147}
148
149#[cfg(feature = "unity_engine-trackedreference")]
150impl TrackedReference {
151 #[doc = "Direct (non-virtual) call to `TrackedReference`'s own `Equals`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
152 pub unsafe fn equals(this: impl ::core::convert::Into<::unity::IlInstance>, o: crate::system::object::Object) -> bool {
153 let __mi = Self::equals_method_info();
154 let __inner: extern "C" fn(::unity::IlInstance, crate::system::object::Object, ::unity::OptionalMethod) -> bool =
155 ::core::mem::transmute(__mi.method_ptr);
156 __inner(this.into(), o, ::core::option::Option::None)
157 }
158
159 #[doc = "Direct (non-virtual) call to `TrackedReference`'s own `GetHashCode`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
160 pub unsafe fn get_hash_code(this: impl ::core::convert::Into<::unity::IlInstance>) -> i32 {
161 let __mi = Self::get_hash_code_method_info();
162 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> i32 = ::core::mem::transmute(__mi.method_ptr);
163 __inner(this.into(), ::core::option::Option::None)
164 }
165}
166
167#[cfg(feature = "unity_engine-trackedreference")]
168impl TrackedReference {
169 #[doc = "`.ctor()` — no args"]
170 pub fn new() -> Self {
171 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
172 panic!(
173 "{}
174::{}
175 failed to instantiate",
176 ::core::stringify!(TrackedReference),
177 ::core::stringify!(new),
178 )
179 });
180 <Self as ITrackedReferenceMethods>::ctor(this);
181 this
182 }
183}
184
185#[cfg(feature = "unity_engine-trackedreference")]
186#[doc(hidden)]
187pub mod prelude {
188 pub use super::{ITrackedReference, ITrackedReferenceMethods, TrackedReference};
189 pub use crate::system::object::IObject;
190 #[cfg(feature = "system-object")]
191 pub use crate::system::object::IObjectMethods;
192}