morphism type: add apply_subst()
This commit is contained in:
parent
6fa46ae45d
commit
72705e824e
2 changed files with 8 additions and 4 deletions
|
@ -54,10 +54,7 @@ impl<'a, M:SugaredMorphism+Clone> SugaredShortestPathProblem<'a, M> {
|
|||
let mut creates_loop = false;
|
||||
|
||||
let mut new_path = prev_path.clone();
|
||||
for n in new_path.morphisms.iter_mut() {
|
||||
n.apply_subst(&morph_inst.get_subst());
|
||||
}
|
||||
|
||||
new_path.apply_subst(&morph_inst.get_subst());
|
||||
for m in new_path.morphisms.iter() {
|
||||
if m.get_type().src_type == dst_type {
|
||||
creates_loop = true;
|
||||
|
|
|
@ -135,6 +135,13 @@ impl SugaredMorphismType {
|
|||
(x,y) => SugaredMorphismType { src_type: x.clone(), dst_type: y.clone() }
|
||||
}
|
||||
}
|
||||
|
||||
pub fn apply_subst(&self, σ: &impl SugaredSubstitution) -> SugaredMorphismType {
|
||||
SugaredMorphismType {
|
||||
src_type: self.src_type.clone().apply_subst(σ).clone(),
|
||||
dst_type: self.dst_type.clone().apply_subst(σ).clone()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub trait SugaredMorphism : Sized {
|
||||
|
|
Loading…
Add table
Reference in a new issue