pub type ModalObOp = Path<ModalObType, ModeApp<ModalOp>>;
Expand description
An object operation in a modal double theory.
Aliased Type§
pub enum ModalObOp {
Id(ModeApp<QualifiedName>),
Seq(NonEmpty<ModeApp<ModalOp>>),
}
Variants§
Id(ModeApp<QualifiedName>)
The identity, or empty, path at a vertex.
Seq(NonEmpty<ModeApp<ModalOp>>)
A nontrivial path, comprising a non-empty vector of consecutive edges.
Implementations§
Source§impl ModalObOp
impl ModalObOp
Sourcepub fn generator(id: QualifiedName) -> Self
pub fn generator(id: QualifiedName) -> Self
Constructs the object operation for a generator.
Sourcepub fn concat(list: List, arity: usize, ob_type: ModalObType) -> Self
pub fn concat(list: List, arity: usize, ob_type: ModalObType) -> Self
Constructs a concatenation operation for a list modality.
Sourcepub fn apply_all(self, iter: impl IntoIterator<Item = Modality> + Clone) -> Self
pub fn apply_all(self, iter: impl IntoIterator<Item = Modality> + Clone) -> Self
Applies a sequence of modalities.