darcs-2.11.0: a distributed, interactive, smart revision control system

Safe HaskellSafe-Inferred

Darcs.Patch.RepoType

Synopsis

Documentation

data RepoType

This type is intended to be used as a phantom type via the DataKinds extension. It tracks different types of repositories, e.g. to indicate when a rebase is in progress.

Constructors

RepoType 

class IsRepoType rt where

Methods

singletonRepoType :: SRepoType rt

Reflect RepoType to the value level so that code can explicitly switch on it.

Instances

IsRebaseType rebaseType => IsRepoType (RepoType rebaseType) 

data SRepoType repoType where

A reflection of RepoType at the value level so that code can explicitly switch on it.

Constructors

SRepoType :: SRebaseType rebaseType -> SRepoType (RepoType rebaseType) 

data RebaseType

This type is intended to be used as a phantom type via the DataKinds extension, normally as part of RepoType. Indicates whether or not a rebase is in progress.

Constructors

IsRebase 
NoRebase 

type family RebaseTypeOf rt :: RebaseType

Extract the RebaseType from a RepoType

data SRebaseType rebaseType where

A reflection of RebaseType at the value level so that code can explicitly switch on it.