Skip to main content

engage/generated/app/
railendmarker.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-railendmarker-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            object_2::{IObject_2, Object_2},
12            scriptableobject::{IScriptableObject, ScriptableObject},
13            timeline::marker::{IMarker, Marker},
14        },
15    };
16
17    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/railendmarker/RailEndMarker.md"))]
18    #[::unity::class(namespace = "App", name = "RailEndMarker")]
19    #[parent(crate::unity_engine::timeline::marker::Marker)]
20    pub struct RailEndMarker {}
21}
22
23#[cfg(feature = "app-railendmarker-types")]
24pub use __types::*;
25
26#[cfg(feature = "app-railendmarker")]
27pub trait IRailEndMarkerMethods: IRailEndMarker {
28    #[doc = "`get_id()` overload"]
29    fn get_id(self) -> crate::unity_engine::propertyname::PropertyName {
30        unsafe {
31            let __receiver = <RailEndMarker as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
32            {
33                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
34                let __vi = *__vt.get(9usize).unwrap_or_else(|| {
35                    panic!(
36                        "unity: virtual slot {}
37 out of range (vtable len {}
38) on the runtime class behind {}
39 (method `{}
40`)",
41                        9usize,
42                        __vt.len(),
43                        <RailEndMarker as ::unity::ClassIdentity>::NAME,
44                        "get_id",
45                    )
46                });
47                let __inner: extern "C" fn(RailEndMarker, ::unity::OptionalMethod) -> crate::unity_engine::propertyname::PropertyName =
48                    ::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, __mi)
51            }
52        }
53    }
54    #[doc = "`.ctor()` overload"]
55    fn ctor(self) -> () {
56        unsafe {
57            let __receiver = <RailEndMarker as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
58            ::unity::il2cpp_call!((::unity::module_base()+0x2373e60usize)as*mut u8,();
59(RailEndMarker)__receiver)
60        }
61    }
62}
63
64#[cfg(feature = "app-railendmarker")]
65impl<__T: IRailEndMarker> IRailEndMarkerMethods for __T {}
66
67#[cfg(feature = "app-railendmarker")]
68impl RailEndMarker {
69    pub fn get_id_method_info() -> &'static ::unity::il2cpp::MethodInfo {
70        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
71    }
72
73    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
74        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
75    }
76}
77
78#[cfg(feature = "app-railendmarker")]
79impl RailEndMarker {
80    #[doc = "Direct (non-virtual) call to `RailEndMarker`'s own `get_id`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
81    pub unsafe fn get_id(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::unity_engine::propertyname::PropertyName {
82        let __mi = Self::get_id_method_info();
83        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::unity_engine::propertyname::PropertyName =
84            ::core::mem::transmute(__mi.method_ptr);
85        __inner(this.into(), ::core::option::Option::None)
86    }
87}
88
89#[cfg(feature = "app-railendmarker")]
90impl RailEndMarker {
91    #[doc = "`.ctor()` — no args"]
92    pub fn new() -> Self {
93        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
94            panic!(
95                "{}
96::{}
97 failed to instantiate",
98                ::core::stringify!(RailEndMarker),
99                ::core::stringify!(new),
100            )
101        });
102        <Self as IRailEndMarkerMethods>::ctor(this);
103        this
104    }
105}
106
107#[cfg(feature = "app-railendmarker")]
108#[doc(hidden)]
109pub mod prelude {
110    pub use super::{IRailEndMarker, IRailEndMarkerMethods, RailEndMarker};
111    #[cfg(feature = "system-object")]
112    pub use crate::system::object::IObjectMethods;
113    #[cfg(feature = "unity_engine-object_2")]
114    pub use crate::unity_engine::object_2::IObject_2Methods;
115    #[cfg(feature = "unity_engine-scriptableobject")]
116    pub use crate::unity_engine::scriptableobject::IScriptableObjectMethods;
117    #[cfg(feature = "unity_engine-timeline-marker")]
118    pub use crate::unity_engine::timeline::marker::IMarkerMethods;
119    pub use crate::{
120        system::object::IObject,
121        unity_engine::{object_2::IObject_2, scriptableobject::IScriptableObject, timeline::marker::IMarker},
122    };
123}