Skip to main content

engage/generated/moon_sharp/interpreter/tree/statements/
emptystatement.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        moon_sharp::interpreter::tree::{
10            nodebase::{INodeBase, NodeBase},
11            statement::{IStatement, Statement},
12        },
13        system::object::{IObject, Object},
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/moon_sharp/interpreter/tree/statements/emptystatement/EmptyStatement.md"))]
17    #[::unity::class(namespace = "MoonSharp.Interpreter.Tree.Statements", name = "EmptyStatement")]
18    #[parent(crate::moon_sharp::interpreter::tree::statement::Statement)]
19    pub struct EmptyStatement {}
20}
21
22#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement-types")]
23pub use __types::*;
24
25#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
26#[doc(hidden)]
27#[allow(non_snake_case, non_camel_case_types, clippy::too_many_arguments)]
28mod __EmptyStatement_unity_raw {
29    use super::*;
30    #[doc(hidden)]
31    #[allow(non_snake_case)]
32    pub mod __lookup_ctor {
33        use super::*;
34        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
35            let param_types: &[&'static ::unity::il2cpp::Il2CppType] =
36                &[<crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext as ::unity::IlType>::il_type()];
37            ::unity::lookup::method_info_on_class_with_signature(<EmptyStatement as ::unity::ClassIdentity>::class(), ".ctor", 1, param_types, false)
38        });
39        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
40            match &*METHOD {
41                ::core::result::Result::Ok(mi) => *mi,
42                ::core::result::Result::Err(e) => {
43                    panic!(
44                        "method lookup failed: {}
45::{}
46: {}
47",
48                        <EmptyStatement as ::unity::ClassIdentity>::NAME,
49                        ".ctor",
50                        e
51                    )
52                },
53            }
54        }
55    }
56}
57
58#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
59pub trait IEmptyStatementMethods: IEmptyStatement {
60    #[doc = "`.ctor(crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext)` overload"]
61    fn ctor(self, lcontext: impl ::core::convert::Into<crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext>) -> () {
62        unsafe {
63            let __receiver = <EmptyStatement as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
64            ::unity::il2cpp_call!(__EmptyStatement_unity_raw::__lookup_ctor::get_method_info().method_ptr,();
65(EmptyStatement)__receiver,(crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext)::core::convert::Into::into(lcontext))
66        }
67    }
68    #[doc = "`Compile(crate::moon_sharp::interpreter::execution::vm::bytecode::ByteCode)` overload"]
69    fn compile(self, bc: impl ::core::convert::Into<crate::moon_sharp::interpreter::execution::vm::bytecode::ByteCode>) -> () {
70        unsafe {
71            let __receiver = <EmptyStatement as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
72            {
73                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
74                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
75                    panic!(
76                        "unity: virtual slot {}
77 out of range (vtable len {}
78) on the runtime class behind {}
79 (method `{}
80`)",
81                        4usize,
82                        __vt.len(),
83                        <EmptyStatement as ::unity::ClassIdentity>::NAME,
84                        "Compile",
85                    )
86                });
87                let __inner: extern "C" fn(
88                    EmptyStatement,
89                    crate::moon_sharp::interpreter::execution::vm::bytecode::ByteCode,
90                    ::unity::OptionalMethod,
91                ) -> () = ::core::mem::transmute(__vi.method_ptr);
92                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
93                __inner(__receiver, ::core::convert::Into::into(bc), __mi)
94            }
95        }
96    }
97}
98
99#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
100impl<__T: IEmptyStatement> IEmptyStatementMethods for __T {}
101
102#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
103impl EmptyStatement {
104    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
105        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
106    }
107
108    pub fn compile_method_info() -> &'static ::unity::il2cpp::MethodInfo {
109        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
110    }
111}
112
113#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
114impl EmptyStatement {
115    #[doc = "Direct (non-virtual) call to `EmptyStatement`'s own `Compile`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
116    pub unsafe fn compile(
117        this: impl ::core::convert::Into<::unity::IlInstance>,
118        bc: crate::moon_sharp::interpreter::execution::vm::bytecode::ByteCode,
119    ) -> () {
120        let __mi = Self::compile_method_info();
121        let __inner: extern "C" fn(
122            ::unity::IlInstance,
123            crate::moon_sharp::interpreter::execution::vm::bytecode::ByteCode,
124            ::unity::OptionalMethod,
125        ) -> () = ::core::mem::transmute(__mi.method_ptr);
126        __inner(this.into(), bc, ::core::option::Option::None)
127    }
128}
129
130#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
131impl EmptyStatement {
132    #[doc = "`.ctor(crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext)` — overload selector"]
133    pub fn new(lcontext: crate::moon_sharp::interpreter::execution::scriptloadingcontext::ScriptLoadingContext) -> Self {
134        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
135            panic!(
136                "{}
137::{}
138 failed to instantiate",
139                ::core::stringify!(EmptyStatement),
140                ::core::stringify!(new),
141            )
142        });
143        <Self as IEmptyStatementMethods>::ctor(this, lcontext);
144        this
145    }
146}
147
148#[cfg(feature = "moon_sharp-interpreter-tree-statements-emptystatement")]
149#[doc(hidden)]
150pub mod prelude {
151    pub use super::{EmptyStatement, IEmptyStatement, IEmptyStatementMethods};
152    #[cfg(feature = "moon_sharp-interpreter-tree-nodebase")]
153    pub use crate::moon_sharp::interpreter::tree::nodebase::INodeBaseMethods;
154    #[cfg(feature = "moon_sharp-interpreter-tree-statement")]
155    pub use crate::moon_sharp::interpreter::tree::statement::IStatementMethods;
156    #[cfg(feature = "system-object")]
157    pub use crate::system::object::IObjectMethods;
158    pub use crate::{
159        moon_sharp::interpreter::tree::{nodebase::INodeBase, statement::IStatement},
160        system::object::IObject,
161    };
162}