engage/generated/unity_engine/ui/
outline.rs1#[cfg(feature = "unity_engine-ui-outline-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 behaviour::{Behaviour, IBehaviour},
12 component::{Component, IComponent},
13 event_systems::uibehaviour::{IUIBehaviour, UIBehaviour},
14 monobehaviour::{IMonoBehaviour, MonoBehaviour},
15 object_2::{IObject_2, Object_2},
16 ui::{
17 basemesheffect::{BaseMeshEffect, IBaseMeshEffect},
18 shadow::{IShadow, Shadow},
19 },
20 },
21 };
22
23 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/ui/outline/Outline.md"))]
24 #[::unity::class(namespace = "UnityEngine.UI", name = "Outline")]
25 #[parent(crate::unity_engine::ui::shadow::Shadow)]
26 pub struct Outline {}
27}
28
29#[cfg(feature = "unity_engine-ui-outline-types")]
30pub use __types::*;
31
32#[cfg(feature = "unity_engine-ui-outline")]
33pub trait IOutlineMethods: IOutline {
34 #[doc = "`.ctor()` overload"]
35 fn ctor(self) -> () {
36 unsafe {
37 let __receiver = <Outline as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
38 ::unity::il2cpp_call!((::unity::module_base()+0x371d8a0usize)as*mut u8,();
39(Outline)__receiver)
40 }
41 }
42 #[doc = "`ModifyMesh(crate::unity_engine::ui::vertexhelper::VertexHelper)` overload"]
43 fn modify_mesh(self, vh: impl ::core::convert::Into<crate::unity_engine::ui::vertexhelper::VertexHelper>) -> () {
44 unsafe {
45 let __receiver = <Outline as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
46 {
47 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
48 let __vi = *__vt.get(20usize).unwrap_or_else(|| {
49 panic!(
50 "unity: virtual slot {}
51 out of range (vtable len {}
52) on the runtime class behind {}
53 (method `{}
54`)",
55 20usize,
56 __vt.len(),
57 <Outline as ::unity::ClassIdentity>::NAME,
58 "ModifyMesh",
59 )
60 });
61 let __inner: extern "C" fn(Outline, crate::unity_engine::ui::vertexhelper::VertexHelper, ::unity::OptionalMethod) -> () =
62 ::core::mem::transmute(__vi.method_ptr);
63 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
64 __inner(__receiver, ::core::convert::Into::into(vh), __mi)
65 }
66 }
67 }
68}
69
70#[cfg(feature = "unity_engine-ui-outline")]
71impl<__T: IOutline> IOutlineMethods for __T {}
72
73#[cfg(feature = "unity_engine-ui-outline")]
74impl Outline {
75 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
76 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
77 }
78
79 pub fn modify_mesh_method_info() -> &'static ::unity::il2cpp::MethodInfo {
80 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
81 }
82}
83
84#[cfg(feature = "unity_engine-ui-outline")]
85impl Outline {
86 #[doc = "Direct (non-virtual) call to `Outline`'s own `ModifyMesh`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
87 pub unsafe fn modify_mesh(this: impl ::core::convert::Into<::unity::IlInstance>, vh: crate::unity_engine::ui::vertexhelper::VertexHelper) -> () {
88 let __mi = Self::modify_mesh_method_info();
89 let __inner: extern "C" fn(::unity::IlInstance, crate::unity_engine::ui::vertexhelper::VertexHelper, ::unity::OptionalMethod) -> () =
90 ::core::mem::transmute(__mi.method_ptr);
91 __inner(this.into(), vh, ::core::option::Option::None)
92 }
93}
94
95#[cfg(feature = "unity_engine-ui-outline")]
96impl Outline {
97 #[doc = "`.ctor()` — no args"]
98 pub fn new() -> Self {
99 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
100 panic!(
101 "{}
102::{}
103 failed to instantiate",
104 ::core::stringify!(Outline),
105 ::core::stringify!(new),
106 )
107 });
108 <Self as IOutlineMethods>::ctor(this);
109 this
110 }
111}
112
113#[cfg(feature = "unity_engine-ui-outline")]
114#[doc(hidden)]
115pub mod prelude {
116 pub use super::{IOutline, IOutlineMethods, Outline};
117 #[cfg(feature = "system-object")]
118 pub use crate::system::object::IObjectMethods;
119 #[cfg(feature = "unity_engine-behaviour")]
120 pub use crate::unity_engine::behaviour::IBehaviourMethods;
121 #[cfg(feature = "unity_engine-component")]
122 pub use crate::unity_engine::component::IComponentMethods;
123 #[cfg(feature = "unity_engine-event_systems-uibehaviour")]
124 pub use crate::unity_engine::event_systems::uibehaviour::IUIBehaviourMethods;
125 #[cfg(feature = "unity_engine-monobehaviour")]
126 pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
127 #[cfg(feature = "unity_engine-object_2")]
128 pub use crate::unity_engine::object_2::IObject_2Methods;
129 #[cfg(feature = "unity_engine-ui-basemesheffect")]
130 pub use crate::unity_engine::ui::basemesheffect::IBaseMeshEffectMethods;
131 #[cfg(feature = "unity_engine-ui-shadow")]
132 pub use crate::unity_engine::ui::shadow::IShadowMethods;
133 pub use crate::{
134 system::object::IObject,
135 unity_engine::{
136 behaviour::IBehaviour,
137 component::IComponent,
138 event_systems::uibehaviour::IUIBehaviour,
139 monobehaviour::IMonoBehaviour,
140 object_2::IObject_2,
141 ui::{basemesheffect::IBaseMeshEffect, shadow::IShadow},
142 },
143 };
144}