wasmer_deploy_schema/schema/
cpu.rs

1use serde::{Deserialize, Serialize};
2
3use super::Merge;
4
5#[derive(Serialize, Deserialize, PartialEq, Eq, Clone, Debug, schemars::JsonSchema)]
6pub struct CapabilityCpuV1 {
7    #[serde(skip_serializing_if = "Option::is_none")]
8    pub maximum_threads: Option<u32>,
9    /// Maximum CPU usage, expressed as a number where 1000 is equivalent to one
10    /// abstract virtual core.
11    #[serde(skip_serializing_if = "Option::is_none")]
12    pub maximum_usage: Option<u32>,
13}
14
15impl Merge for CapabilityCpuV1 {
16    fn merge_extend(self, other: &Self) -> Self {
17        Self {
18            maximum_threads: self.maximum_threads.merge_extend(&other.maximum_threads),
19            maximum_usage: self.maximum_usage.merge_extend(&other.maximum_usage),
20        }
21    }
22}