selinux/new_policy/
types.rs1use std::num::NonZeroU16;
6
7use super::bitmap::{IdSet, IdSetBuilder};
8use super::id_type::IdType;
9
10#[derive(Copy, Clone, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)]
12pub struct TypeTag;
13
14pub type TypeId = IdType<NonZeroU16, TypeTag>;
16
17pub type PermissiveTypeSet = IdSet<TypeId, true>;
19
20#[derive(Copy, Clone, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)]
22pub struct SensitivityTag;
23
24pub type SensitivityId = IdType<NonZeroU16, SensitivityTag>;
26
27#[derive(Copy, Clone, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)]
29pub struct CategoryTag;
30
31pub type CategoryId = IdType<NonZeroU16, CategoryTag>;
33
34pub type CategorySet = IdSet<CategoryId>;
36
37pub type CategorySetBuilder = IdSetBuilder<CategoryId>;