Skip to main content

engage/generated/app/
gamecalculator.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-gamecalculator-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            calculatormanager::{CalculatorManager, ICalculatorManager},
11            calculatorutil::{CalculatorUtil, ICalculatorUtil},
12            systemcalculator::{ISystemCalculator, SystemCalculator},
13            systemcalculatorinstance_1::{ISystemCalculatorInstance_1, SystemCalculatorInstance_1},
14        },
15        system::object::{IObject, Object},
16    };
17
18    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/gamecalculator/GameCalculator.md"))]
19    #[::unity::class(namespace = "App", name = "GameCalculator")]
20    #[parent(crate::app::systemcalculatorinstance_1::SystemCalculatorInstance_1<crate::app::gamecalculator::GameCalculator>)]
21    pub struct GameCalculator {}
22}
23
24#[cfg(feature = "app-gamecalculator-types")]
25pub use __types::*;
26
27#[cfg(feature = "app-gamecalculator")]
28pub trait IGameCalculatorMethods: IGameCalculator {
29    fn add_command_with_reverse<M0: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity>(self) -> () {
30        static OPEN: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
31            ::unity::lookup::method_info_on_class(<GameCalculator as ::unity::ClassIdentity>::class(), "AddCommandWithReverse", 0)
32        });
33        #[allow(clippy::type_complexity)]
34        static CACHE: ::std::sync::OnceLock<::std::sync::Mutex<::std::collections::HashMap<usize, &'static ::unity::il2cpp::MethodInfo>>> =
35            ::std::sync::OnceLock::new();
36        let _ = false;
37        let __open: &'static ::unity::il2cpp::MethodInfo = match &*OPEN {
38            ::core::result::Result::Ok(mi) => *mi,
39            ::core::result::Result::Err(e) => {
40                panic!(
41                    "method lookup failed: {}
42::{}
43: {}
44",
45                    <GameCalculator as ::unity::ClassIdentity>::NAME,
46                    "AddCommandWithReverse",
47                    e
48                )
49            },
50        };
51        let __cache = CACHE.get_or_init(|| ::std::sync::Mutex::new(::std::collections::HashMap::new()));
52        let __key: usize = <M0 as ::unity::IlType>::il_type() as *const _ as usize;
53        let __inflated: &'static ::unity::il2cpp::MethodInfo = {
54            let mut __guard = __cache.lock().unwrap();
55            *__guard
56                .entry(__key)
57                .or_insert_with(|| ::unity::il2cpp::generic::create_generic_method_info(__open, &[<M0 as ::unity::IlType>::il_type()]))
58        };
59        unsafe {
60            let __receiver = <GameCalculator as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
61            let __f: extern "C" fn(GameCalculator, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__inflated.method_ptr);
62            let __mi_opaque: &'static () = &*(__inflated as *const _ as *const ());
63            __f(__receiver, ::core::option::Option::Some(__mi_opaque))
64        }
65    }
66    #[doc = "`.ctor()` overload"]
67    fn ctor(self) -> () {
68        unsafe {
69            let __receiver = <GameCalculator as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
70            ::unity::il2cpp_call!((::unity::module_base()+0x2278420usize)as*mut u8,();
71(GameCalculator)__receiver)
72        }
73    }
74}
75
76#[cfg(feature = "app-gamecalculator")]
77impl<__T: IGameCalculator> IGameCalculatorMethods for __T {}
78
79#[cfg(feature = "app-gamecalculator")]
80impl GameCalculator {
81    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
82        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
83    }
84}
85
86#[cfg(feature = "app-gamecalculator")]
87impl GameCalculator {
88    #[doc = "`.ctor()` — no args"]
89    pub fn new() -> Self {
90        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
91            panic!(
92                "{}
93::{}
94 failed to instantiate",
95                ::core::stringify!(GameCalculator),
96                ::core::stringify!(new),
97            )
98        });
99        <Self as IGameCalculatorMethods>::ctor(this);
100        this
101    }
102}
103
104#[cfg(feature = "app-gamecalculator")]
105#[doc(hidden)]
106pub mod prelude {
107    pub use super::{GameCalculator, IGameCalculator, IGameCalculatorMethods};
108    #[cfg(feature = "app-calculatormanager")]
109    pub use crate::app::calculatormanager::ICalculatorManagerMethods;
110    #[cfg(feature = "app-calculatorutil")]
111    pub use crate::app::calculatorutil::ICalculatorUtilMethods;
112    #[cfg(feature = "app-systemcalculator")]
113    pub use crate::app::systemcalculator::ISystemCalculatorMethods;
114    #[cfg(feature = "app-systemcalculatorinstance_1")]
115    pub use crate::app::systemcalculatorinstance_1::ISystemCalculatorInstance_1Methods;
116    #[cfg(feature = "system-object")]
117    pub use crate::system::object::IObjectMethods;
118    pub use crate::{
119        app::{
120            calculatormanager::ICalculatorManager, calculatorutil::ICalculatorUtil, systemcalculator::ISystemCalculator,
121            systemcalculatorinstance_1::ISystemCalculatorInstance_1,
122        },
123        system::object::IObject,
124    };
125}