Skip to main content

engage/generated/unity_engine/rendering/
scalefunc.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-rendering-scalefunc-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::system::{
9        delegate::{Delegate, IDelegate},
10        multicastdelegate::{IMulticastDelegate, MulticastDelegate},
11        object::{IObject, Object},
12    };
13
14    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/scalefunc/ScaleFunc.md"))]
15    #[::unity::class(namespace = "UnityEngine.Rendering", name = "ScaleFunc")]
16    #[parent(crate::system::multicastdelegate::MulticastDelegate)]
17    pub struct ScaleFunc {}
18}
19
20#[cfg(feature = "unity_engine-rendering-scalefunc-types")]
21pub use __types::*;
22
23#[cfg(feature = "unity_engine-rendering-scalefunc")]
24pub trait IScaleFuncMethods: IScaleFunc {
25    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` overload"]
26    fn ctor(self, object: impl ::core::convert::Into<crate::system::object::Object>, method: impl ::core::convert::Into<::unity::IntPtr>) -> () {
27        unsafe {
28            let __receiver = <ScaleFunc as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
29            ::unity::il2cpp_call!((::unity::module_base()+0x33e0bb0usize)as*mut u8,();
30(ScaleFunc)__receiver,(crate::system::object::Object)::core::convert::Into::into(object),(::unity::IntPtr)::core::convert::Into::into(method))
31        }
32    }
33    #[doc = "`Invoke(crate::unity_engine::vector2int::Vector2Int)` overload"]
34    fn invoke(self, size: impl ::core::convert::Into<crate::unity_engine::vector2int::Vector2Int>) -> crate::unity_engine::vector2int::Vector2Int {
35        unsafe {
36            let __receiver = <ScaleFunc as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
37            {
38                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
39                let __vi = *__vt.get(13usize).unwrap_or_else(|| {
40                    panic!(
41                        "unity: virtual slot {}
42 out of range (vtable len {}
43) on the runtime class behind {}
44 (method `{}
45`)",
46                        13usize,
47                        __vt.len(),
48                        <ScaleFunc as ::unity::ClassIdentity>::NAME,
49                        "Invoke",
50                    )
51                });
52                let __inner: extern "C" fn(
53                    ScaleFunc,
54                    crate::unity_engine::vector2int::Vector2Int,
55                    ::unity::OptionalMethod,
56                ) -> crate::unity_engine::vector2int::Vector2Int = ::core::mem::transmute(__vi.method_ptr);
57                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
58                __inner(__receiver, ::core::convert::Into::into(size), __mi)
59            }
60        }
61    }
62}
63
64#[cfg(feature = "unity_engine-rendering-scalefunc")]
65impl<__T: IScaleFunc> IScaleFuncMethods for __T {}
66
67#[cfg(feature = "unity_engine-rendering-scalefunc")]
68impl ScaleFunc {
69    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
70        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
71    }
72
73    pub fn invoke_method_info() -> &'static ::unity::il2cpp::MethodInfo {
74        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
75    }
76}
77
78#[cfg(feature = "unity_engine-rendering-scalefunc")]
79impl ScaleFunc {
80    #[doc = "Direct (non-virtual) call to `ScaleFunc`'s own `Invoke`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
81    pub unsafe fn invoke(
82        this: impl ::core::convert::Into<::unity::IlInstance>,
83        size: crate::unity_engine::vector2int::Vector2Int,
84    ) -> crate::unity_engine::vector2int::Vector2Int {
85        let __mi = Self::invoke_method_info();
86        let __inner: extern "C" fn(
87            ::unity::IlInstance,
88            crate::unity_engine::vector2int::Vector2Int,
89            ::unity::OptionalMethod,
90        ) -> crate::unity_engine::vector2int::Vector2Int = ::core::mem::transmute(__mi.method_ptr);
91        __inner(this.into(), size, ::core::option::Option::None)
92    }
93}
94
95#[cfg(feature = "unity_engine-rendering-scalefunc")]
96impl ScaleFunc {
97    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` — overload selector"]
98    pub fn new(object: crate::system::object::Object, method: ::unity::IntPtr) -> Self {
99        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
100            panic!(
101                "{}
102::{}
103 failed to instantiate",
104                ::core::stringify!(ScaleFunc),
105                ::core::stringify!(new),
106            )
107        });
108        <Self as IScaleFuncMethods>::ctor(this, object, method);
109        this
110    }
111}
112
113#[cfg(feature = "unity_engine-rendering-scalefunc")]
114#[doc(hidden)]
115pub mod prelude {
116    pub use super::{IScaleFunc, IScaleFuncMethods, ScaleFunc};
117    #[cfg(feature = "system-delegate")]
118    pub use crate::system::delegate::IDelegateMethods;
119    #[cfg(feature = "system-multicastdelegate")]
120    pub use crate::system::multicastdelegate::IMulticastDelegateMethods;
121    #[cfg(feature = "system-object")]
122    pub use crate::system::object::IObjectMethods;
123    pub use crate::system::{delegate::IDelegate, multicastdelegate::IMulticastDelegate, object::IObject};
124}