Skip to main content

engage/generated/unity_engine/resource_management/async_operations/
downloadstatus.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::system::{
9        object::{IObject, Object},
10        valuetype::{IValueType, ValueType},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/resource_management/async_operations/downloadstatus/DownloadStatus.md"))]
14    #[repr(C)]
15    #[derive(::core::clone::Clone, ::core::marker::Copy)]
16    pub struct DownloadStatus {
17        pub total_bytes: i64,
18        pub downloaded_bytes: i64,
19        pub is_done: bool,
20    }
21    impl ::unity::ClassIdentity for DownloadStatus {
22        const NAME: &'static str = "DownloadStatus";
23        const NAMESPACE: &'static str = "UnityEngine.ResourceManagement.AsyncOperations";
24
25        fn class() -> ::unity::Class {
26            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
27            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
28        }
29    }
30    impl ::unity::IlType for DownloadStatus {
31        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
32            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
33        }
34    }
35}
36
37#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus-types")]
38pub use __types::*;
39
40#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus")]
41#[doc(hidden)]
42#[allow(non_snake_case, non_camel_case_types, clippy::too_many_arguments)]
43mod __DownloadStatus_unity_raw {
44    use super::*;
45    #[doc(hidden)]
46    #[allow(non_snake_case)]
47    pub mod __lookup_get_percent {
48        use super::*;
49        static METHOD: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> = ::std::sync::LazyLock::new(|| {
50            let param_types: &[&'static ::unity::il2cpp::Il2CppType] = &[];
51            ::unity::lookup::method_info_on_class_with_signature(
52                <DownloadStatus as ::unity::ClassIdentity>::class(),
53                "get_Percent",
54                0,
55                param_types,
56                false,
57            )
58        });
59        pub fn get_method_info() -> &'static ::unity::il2cpp::MethodInfo {
60            match &*METHOD {
61                ::core::result::Result::Ok(mi) => *mi,
62                ::core::result::Result::Err(e) => {
63                    panic!(
64                        "method lookup failed: {}
65::{}
66: {}
67",
68                        <DownloadStatus as ::unity::ClassIdentity>::NAME,
69                        "get_Percent",
70                        e
71                    )
72                },
73            }
74        }
75    }
76}
77
78#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus")]
79impl DownloadStatus {
80    #[doc = "`get_Percent()` overload"]
81    pub fn get_percent(&mut self) -> f32 {
82        unsafe {
83            ::unity::il2cpp_call!(::unity::callable_ptr(__DownloadStatus_unity_raw::__lookup_get_percent::get_method_info().method_ptr),f32;
84(*mut DownloadStatus)self as*mut DownloadStatus)
85        }
86    }
87}
88
89#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus")]
90impl DownloadStatus {
91    pub fn get_percent_method_info() -> &'static ::unity::il2cpp::MethodInfo {
92        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
93    }
94}
95
96#[cfg(feature = "unity_engine-resource_management-async_operations-downloadstatus")]
97#[doc(hidden)]
98pub mod prelude {
99    pub use super::DownloadStatus;
100    #[cfg(feature = "system-object")]
101    pub use crate::system::object::IObjectMethods;
102    #[cfg(feature = "system-valuetype")]
103    pub use crate::system::valuetype::IValueTypeMethods;
104    pub use crate::system::{object::IObject, valuetype::IValueType};
105}