diff options
| author | 2024-06-14 01:47:39 +0200 | |
|---|---|---|
| committer | 2024-06-14 01:47:39 +0200 | |
| commit | a25b1af45690bdd8e1cbb20ee3a5b1c4342de455 (patch) | |
| tree | 432044cf682dd73d1019a2f964749e78db178865 /runtime/src/system | |
| parent | e6d0b3bda5042a1017a5944a5227c97e0ed6caf9 (diff) | |
| download | iced-a25b1af45690bdd8e1cbb20ee3a5b1c4342de455.tar.gz iced-a25b1af45690bdd8e1cbb20ee3a5b1c4342de455.tar.bz2 iced-a25b1af45690bdd8e1cbb20ee3a5b1c4342de455.zip  | |
Replace `Command` with a new `Task` API with chain support
Diffstat (limited to 'runtime/src/system')
| -rw-r--r-- | runtime/src/system/action.rs | 39 | ||||
| -rw-r--r-- | runtime/src/system/information.rs | 29 | 
2 files changed, 0 insertions, 68 deletions
diff --git a/runtime/src/system/action.rs b/runtime/src/system/action.rs deleted file mode 100644 index dea9536f..00000000 --- a/runtime/src/system/action.rs +++ /dev/null @@ -1,39 +0,0 @@ -use crate::system; - -use iced_futures::MaybeSend; -use std::fmt; - -/// An operation to be performed on the system. -pub enum Action<T> { -    /// Query system information and produce `T` with the result. -    QueryInformation(Box<dyn Closure<T>>), -} - -pub trait Closure<T>: Fn(system::Information) -> T + MaybeSend {} - -impl<T, O> Closure<O> for T where T: Fn(system::Information) -> O + MaybeSend {} - -impl<T> Action<T> { -    /// Maps the output of a system [`Action`] using the provided closure. -    pub fn map<A>( -        self, -        f: impl Fn(T) -> A + 'static + MaybeSend + Sync, -    ) -> Action<A> -    where -        T: 'static, -    { -        match self { -            Self::QueryInformation(o) => { -                Action::QueryInformation(Box::new(move |s| f(o(s)))) -            } -        } -    } -} - -impl<T> fmt::Debug for Action<T> { -    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { -        match self { -            Self::QueryInformation(_) => write!(f, "Action::QueryInformation"), -        } -    } -} diff --git a/runtime/src/system/information.rs b/runtime/src/system/information.rs deleted file mode 100644 index 0f78f5e9..00000000 --- a/runtime/src/system/information.rs +++ /dev/null @@ -1,29 +0,0 @@ -/// Contains informations about the system (e.g. system name, processor, memory, graphics adapter). -#[derive(Clone, Debug)] -pub struct Information { -    /// The operating system name -    pub system_name: Option<String>, -    /// Operating system kernel version -    pub system_kernel: Option<String>, -    /// Long operating system version -    /// -    /// Examples: -    /// - MacOS 10.15 Catalina -    /// - Windows 10 Pro -    /// - Ubuntu 20.04 LTS (Focal Fossa) -    pub system_version: Option<String>, -    /// Short operating system version number -    pub system_short_version: Option<String>, -    /// Detailed processor model information -    pub cpu_brand: String, -    /// The number of physical cores on the processor -    pub cpu_cores: Option<usize>, -    /// Total RAM size, in bytes -    pub memory_total: u64, -    /// Memory used by this process, in bytes -    pub memory_used: Option<u64>, -    /// Underlying graphics backend for rendering -    pub graphics_backend: String, -    /// Model information for the active graphics adapter -    pub graphics_adapter: String, -}  | 
