Cabal-syntax-3.11.0.0: A library for working with .cabal files
Safe HaskellNone
LanguageHaskell2010

Distribution.Types.SourceRepo.Lens

Synopsis

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.

Instances

Instances details
Structured SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Binary SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

NFData SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Methods

rnf :: SourceRepo -> () Source #

Data SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourceRepo -> c SourceRepo #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourceRepo #

toConstr :: SourceRepo -> Constr #

dataTypeOf :: SourceRepo -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourceRepo) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourceRepo) #

gmapT :: (forall b. Data b => b -> b) -> SourceRepo -> SourceRepo #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourceRepo -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourceRepo -> r #

gmapQ :: (forall d. Data d => d -> u) -> SourceRepo -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SourceRepo -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourceRepo -> m SourceRepo #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceRepo -> m SourceRepo #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceRepo -> m SourceRepo #

Generic SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Read SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Show SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Eq SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

Ord SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo

type Rep SourceRepo Source # 
Instance details

Defined in Distribution.Types.SourceRepo