pub trait ConfigOperator: Sized {
type DataTy: AsBizData<u64> + Copy + Clone;
const MIN: u64;
const MAX: u64;
const DEFAULT_MAX: u64;
Show 20 methods
// Required methods
fn _default() -> Self;
fn next(&self, index: Self::DataTy) -> Option<Self::DataTy>;
fn min_val(&self) -> Self::DataTy;
fn _val(&self) -> u64;
fn _val_mut(&mut self, val: u64);
// Provided methods
fn default_value(val: Self::DataTy) -> Self { ... }
fn default_range(range: impl RangeBounds<Self::DataTy>) -> Result<Self> { ... }
fn default_all() -> Self { ... }
fn default_all_by_max(max: Self::DataTy) -> Self { ... }
fn default_array(vals: &[Self::DataTy]) -> Self { ... }
fn add_array(self, vals: &[Self::DataTy]) -> Self { ... }
fn add(self, index: Self::DataTy) -> Self { ... }
fn add_range(self, range: impl RangeBounds<Self::DataTy>) -> Result<Self> { ... }
fn merge(&self, other: &Self) -> Self { ... }
fn intersection(&self, other: &Self) -> Self { ... }
fn to_vec(&self) -> Vec<u64> { ... }
fn contain(&self, index: Self::DataTy) -> bool { ... }
fn _next(&self, index: Self::DataTy) -> Option<u64> { ... }
fn _min_val(&self) -> u64 { ... }
fn is_zero(&self) -> bool { ... }
}
Expand description
配置项的操作trait
Required Associated Constants§
Sourceconst DEFAULT_MAX: u64
const DEFAULT_MAX: u64
满值:即全选的值,比如星期7天全选,则为二进制1111 1110
Required Associated Types§
Required Methods§
fn _default() -> Self
fn next(&self, index: Self::DataTy) -> Option<Self::DataTy>
fn min_val(&self) -> Self::DataTy
fn _val(&self) -> u64
fn _val_mut(&mut self, val: u64)
Provided Methods§
fn default_value(val: Self::DataTy) -> Self
fn default_range(range: impl RangeBounds<Self::DataTy>) -> Result<Self>
fn default_all() -> Self
fn default_all_by_max(max: Self::DataTy) -> Self
fn default_array(vals: &[Self::DataTy]) -> Self
fn add_array(self, vals: &[Self::DataTy]) -> Self
fn add(self, index: Self::DataTy) -> Self
fn add_range(self, range: impl RangeBounds<Self::DataTy>) -> Result<Self>
Sourcefn intersection(&self, other: &Self) -> Self
fn intersection(&self, other: &Self) -> Self
生成2者的交集
fn to_vec(&self) -> Vec<u64>
fn contain(&self, index: Self::DataTy) -> bool
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.