Skip to main content

engage/generated/unity_engine/rendering/universal/
stencilstatedata.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata-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/rendering/universal/stencilstatedata/StencilStateData.md"))]
11    #[::unity::class(namespace = "UnityEngine.Rendering.Universal", name = "StencilStateData")]
12    #[parent(crate::system::object::Object)]
13    pub struct StencilStateData {
14        #[offset(16)]
15        #[rename(name = "overrideStencilState")]
16        pub override_stencil_state: bool,
17        #[offset(20)]
18        #[rename(name = "stencilReference")]
19        pub stencil_reference: i32,
20        #[offset(24)]
21        #[rename(name = "stencilCompareFunction")]
22        pub stencil_compare_function: crate::unity_engine::rendering::comparefunction::CompareFunction,
23        #[offset(28)]
24        #[rename(name = "passOperation")]
25        pub pass_operation: crate::unity_engine::rendering::stencilop::StencilOp,
26        #[offset(32)]
27        #[rename(name = "failOperation")]
28        pub fail_operation: crate::unity_engine::rendering::stencilop::StencilOp,
29        #[offset(36)]
30        #[rename(name = "zFailOperation")]
31        pub z_fail_operation: crate::unity_engine::rendering::stencilop::StencilOp,
32    }
33}
34
35#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata-types")]
36pub use __types::*;
37
38#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata")]
39pub trait IStencilStateDataMethods: IStencilStateData {
40    #[doc = "`.ctor()` overload"]
41    fn ctor(self) -> () {
42        unsafe {
43            let __receiver = <StencilStateData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
44            ::unity::il2cpp_call!((::unity::module_base()+0x2edf9d0usize)as*mut u8,();
45(StencilStateData)__receiver)
46        }
47    }
48}
49
50#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata")]
51impl<__T: IStencilStateData> IStencilStateDataMethods for __T {}
52
53#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata")]
54impl StencilStateData {
55    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
56        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
57    }
58}
59
60#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata")]
61impl StencilStateData {
62    #[doc = "`.ctor()` — no args"]
63    pub fn new() -> Self {
64        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
65            panic!(
66                "{}
67::{}
68 failed to instantiate",
69                ::core::stringify!(StencilStateData),
70                ::core::stringify!(new),
71            )
72        });
73        <Self as IStencilStateDataMethods>::ctor(this);
74        this
75    }
76}
77
78#[cfg(feature = "unity_engine-rendering-universal-stencilstatedata")]
79#[doc(hidden)]
80pub mod prelude {
81    pub use super::{IStencilStateData, IStencilStateDataMethods, StencilStateData};
82    pub use crate::system::object::IObject;
83    #[cfg(feature = "system-object")]
84    pub use crate::system::object::IObjectMethods;
85}