Safe Haskell | None |
---|---|
Language | Haskell98 |
- diff :: forall phi top. (Transform phi, Children phi (PF phi) top, EmptyMemo phi top (Ixs phi), ChildrenTable phi top (Ixs phi), GetChildrenTable phi (Ixs phi) top, Eq top) => phi top -> top -> top -> Transformation phi top
- apply :: forall phi ix. Transform phi => phi ix -> ix -> Transformation phi ix -> Maybe ix
- type family Ixs phi :: [*]
- type Transformation phi top = [Insert phi top top]
Documentation
diff :: forall phi top. (Transform phi, Children phi (PF phi) top, EmptyMemo phi top (Ixs phi), ChildrenTable phi top (Ixs phi), GetChildrenTable phi (Ixs phi) top, Eq top) => phi top -> top -> top -> Transformation phi top Source
Find a set of insertions to transform the first into the second tree
apply :: forall phi ix. Transform phi => phi ix -> ix -> Transformation phi ix -> Maybe ix Source
Apply the transformation to the given tree
type Transformation phi top = [Insert phi top top] Source
Transformations are just sequences of insertions