Darcs.Patch.Apply
- class Apply p where
- type ApplyState p :: (* -> *) -> *
- apply :: ApplyMonad m (ApplyState p) => p x y -> m ()
- applyToFilepaths :: (Apply p, ApplyState p ~ Tree) => p x y -> [FilePath] -> [FilePath]
- applyToTree :: (Apply p, Functor m, Monad m, ApplyState p ~ Tree) => p x y -> Tree m -> m (Tree m)
- applyToState :: forall p m x y. (Apply p, ApplyMonadTrans m (ApplyState p)) => p x y -> ApplyState p m -> m (ApplyState p m)
Documentation
class Apply p where
Associated Types
type ApplyState p :: (* -> *) -> *
Methods
apply :: ApplyMonad m (ApplyState p) => p x y -> m ()
applyToFilepaths :: (Apply p, ApplyState p ~ Tree) => p x y -> [FilePath] -> [FilePath]
applyToTree :: (Apply p, Functor m, Monad m, ApplyState p ~ Tree) => p x y -> Tree m -> m (Tree m)
Apply a patch to a Tree, yielding a new Tree.
applyToState :: forall p m x y. (Apply p, ApplyMonadTrans m (ApplyState p)) => p x y -> ApplyState p m -> m (ApplyState p m)