Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data SourceRepo = SourceRepo {}
- data RepoKind
- data RepoType
- data KnownRepoType
- knownRepoTypes :: [KnownRepoType]
- emptySourceRepo :: RepoKind -> SourceRepo
- classifyRepoType :: String -> RepoType
- classifyRepoKind :: String -> RepoKind
Documentation
data SourceRepo Source #
Information about the source revision control system for a package.
When specifying a repo it is useful to know the meaning or intention of the
information as doing so enables automation. There are two obvious common
purposes: one is to find the repo for the latest development version, the
other is to find the repo for this specific release. The ReopKind
specifies which one we mean (or another custom one).
A package can specify one or the other kind or both. Most will specify just a head repo but some may want to specify a repo to reconstruct the sources for this package release.
The required information is the RepoType
which tells us if it's using
Darcs
, Git
for example. The repoLocation
and other details are
interpreted according to the repo type.
SourceRepo | |
|
Instances
What this repo info is for, what it represents.
RepoHead | The repository for the "head" or development version of the project. This repo is where we should track the latest development activity or the usual repo people should get to contribute patches. |
RepoThis | The repository containing the sources for this exact package version or release. For this kind of repo a tag should be given to give enough information to re-create the exact sources. |
RepoKindUnknown String |
Instances
Parsec RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo parsec :: CabalParsing m => m RepoKind Source # | |||||
Pretty RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Structured RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Data RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RepoKind -> c RepoKind Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RepoKind Source # toConstr :: RepoKind -> Constr Source # dataTypeOf :: RepoKind -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RepoKind) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RepoKind) Source # gmapT :: (forall b. Data b => b -> b) -> RepoKind -> RepoKind Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RepoKind -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RepoKind -> r Source # gmapQ :: (forall d. Data d => d -> u) -> RepoKind -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> RepoKind -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> RepoKind -> m RepoKind Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RepoKind -> m RepoKind Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RepoKind -> m RepoKind Source # | |||||
Generic RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo
| |||||
Read RepoKind Source # | |||||
Show RepoKind Source # | |||||
Binary RepoKind Source # | |||||
NFData RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Eq RepoKind Source # | |||||
Ord RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
type Rep RepoKind Source # | |||||
Defined in Distribution.Types.SourceRepo type Rep RepoKind = D1 ('MetaData "RepoKind" "Distribution.Types.SourceRepo" "Cabal-syntax-3.10.2.0-86d7" 'False) (C1 ('MetaCons "RepoHead" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RepoThis" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RepoKindUnknown" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)))) |
Instances
Parsec RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo parsec :: CabalParsing m => m RepoType Source # | |||||
Pretty RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Structured RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Data RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RepoType -> c RepoType Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RepoType Source # toConstr :: RepoType -> Constr Source # dataTypeOf :: RepoType -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RepoType) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RepoType) Source # gmapT :: (forall b. Data b => b -> b) -> RepoType -> RepoType Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RepoType -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RepoType -> r Source # gmapQ :: (forall d. Data d => d -> u) -> RepoType -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> RepoType -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> RepoType -> m RepoType Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RepoType -> m RepoType Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RepoType -> m RepoType Source # | |||||
Generic RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo
| |||||
Read RepoType Source # | |||||
Show RepoType Source # | |||||
Binary RepoType Source # | |||||
NFData RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Eq RepoType Source # | |||||
Ord RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
type Rep RepoType Source # | |||||
Defined in Distribution.Types.SourceRepo type Rep RepoType = D1 ('MetaData "RepoType" "Distribution.Types.SourceRepo" "Cabal-syntax-3.10.2.0-86d7" 'False) (C1 ('MetaCons "KnownRepoType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 KnownRepoType)) :+: C1 ('MetaCons "OtherRepoType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) |
data KnownRepoType Source #
An enumeration of common source control systems. The fields used in the
SourceRepo
depend on the type of repo. The tools and methods used to
obtain and track the repo depend on the repo type.
Instances
Parsec KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo parsec :: CabalParsing m => m KnownRepoType Source # | |||||
Pretty KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo pretty :: KnownRepoType -> Doc Source # prettyVersioned :: CabalSpecVersion -> KnownRepoType -> Doc Source # | |||||
Structured KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo structure :: Proxy KnownRepoType -> Structure Source # structureHash' :: Tagged KnownRepoType MD5 | |||||
Data KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> KnownRepoType -> c KnownRepoType Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c KnownRepoType Source # toConstr :: KnownRepoType -> Constr Source # dataTypeOf :: KnownRepoType -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c KnownRepoType) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c KnownRepoType) Source # gmapT :: (forall b. Data b => b -> b) -> KnownRepoType -> KnownRepoType Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> KnownRepoType -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> KnownRepoType -> r Source # gmapQ :: (forall d. Data d => d -> u) -> KnownRepoType -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> KnownRepoType -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> KnownRepoType -> m KnownRepoType Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> KnownRepoType -> m KnownRepoType Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> KnownRepoType -> m KnownRepoType Source # | |||||
Bounded KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Enum KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo succ :: KnownRepoType -> KnownRepoType Source # pred :: KnownRepoType -> KnownRepoType Source # toEnum :: Int -> KnownRepoType Source # fromEnum :: KnownRepoType -> Int Source # enumFrom :: KnownRepoType -> [KnownRepoType] Source # enumFromThen :: KnownRepoType -> KnownRepoType -> [KnownRepoType] Source # enumFromTo :: KnownRepoType -> KnownRepoType -> [KnownRepoType] Source # enumFromThenTo :: KnownRepoType -> KnownRepoType -> KnownRepoType -> [KnownRepoType] Source # | |||||
Generic KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo
from :: KnownRepoType -> Rep KnownRepoType x Source # to :: Rep KnownRepoType x -> KnownRepoType Source # | |||||
Read KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Show KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo | |||||
Binary KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo put :: KnownRepoType -> Put Source # get :: Get KnownRepoType Source # putList :: [KnownRepoType] -> Put Source # | |||||
NFData KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo rnf :: KnownRepoType -> () Source # | |||||
Eq KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo (==) :: KnownRepoType -> KnownRepoType -> Bool # (/=) :: KnownRepoType -> KnownRepoType -> Bool # | |||||
Ord KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo compare :: KnownRepoType -> KnownRepoType -> Ordering # (<) :: KnownRepoType -> KnownRepoType -> Bool # (<=) :: KnownRepoType -> KnownRepoType -> Bool # (>) :: KnownRepoType -> KnownRepoType -> Bool # (>=) :: KnownRepoType -> KnownRepoType -> Bool # max :: KnownRepoType -> KnownRepoType -> KnownRepoType # min :: KnownRepoType -> KnownRepoType -> KnownRepoType # | |||||
type Rep KnownRepoType Source # | |||||
Defined in Distribution.Types.SourceRepo type Rep KnownRepoType = D1 ('MetaData "KnownRepoType" "Distribution.Types.SourceRepo" "Cabal-syntax-3.10.2.0-86d7" 'False) (((C1 ('MetaCons "Darcs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Git" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "SVN" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CVS" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Mercurial" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GnuArch" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Bazaar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Monotone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Pijul" 'PrefixI 'False) (U1 :: Type -> Type))))) |
emptySourceRepo :: RepoKind -> SourceRepo Source #
classifyRepoType :: String -> RepoType Source #
classifyRepoKind :: String -> RepoKind Source #