unison-parser-typechecker-0.0.0
Safe HaskellNone
LanguageHaskell2010

Unison.Codebase.BranchUtil

Synopsis

Branch creation

fromNames :: forall (m :: Type -> Type). Monad m => Names -> Branch m Source #

Creates a branch containing all of the given names, with a single history node.

Branch queries

getBranch :: forall (m :: Type -> Type). Split Path -> Branch0 m -> Maybe (Branch m) Source #

Branch modifications

makeSetBranch :: forall path (m :: Type -> Type). Split path -> Branch m -> (path, Branch0 m -> Branch0 m) Source #

makeAddTypeName :: forall p (m :: Type -> Type). Split p -> TypeReference -> (p, Branch0 m -> Branch0 m) Source #

makeDeleteTypeName :: forall p (m :: Type -> Type). Split p -> TypeReference -> (p, Branch0 m -> Branch0 m) Source #

makeAnnihilateTypeName :: forall path (m :: Type -> Type). Split path -> (path, Branch0 m -> Branch0 m) Source #

makeAddTermName :: forall p (m :: Type -> Type). Split p -> Referent -> (p, Branch0 m -> Branch0 m) Source #

makeDeleteTermName :: forall p (m :: Type -> Type). Split p -> Referent -> (p, Branch0 m -> Branch0 m) Source #

makeAnnihilateTermName :: forall path (m :: Type -> Type). Split path -> (path, Branch0 m -> Branch0 m) Source #