Cabal-syntax-3.10.1.0: A library for working with .cabal files
Safe HaskellSafe-Inferred
LanguageHaskell2010

Distribution.Types.MungedPackageId

Synopsis

Documentation

data MungedPackageId Source #

A simple pair of a MungedPackageName and Version. MungedPackageName is to MungedPackageId as PackageName is to PackageId. See MungedPackageName for more info.

Constructors

MungedPackageId 

Fields

Instances

Instances details
HasMungedPackageId MungedPackageId Source # 
Instance details

Defined in Distribution.Package

Parsec MungedPackageId Source #
>>> simpleParsec "foo-bar-0" :: Maybe MungedPackageId
Just (MungedPackageId {mungedName = MungedPackageName (PackageName "foo-bar") LMainLibName, mungedVersion = mkVersion [0]})
>>> simpleParsec "foo-bar" :: Maybe MungedPackageId
Just (MungedPackageId {mungedName = MungedPackageName (PackageName "foo-bar") LMainLibName, mungedVersion = mkVersion []})
>>> simpleParsec "z-foo-bar-z-baz-0" :: Maybe MungedPackageId
Just (MungedPackageId {mungedName = MungedPackageName (PackageName "foo-bar") (LSubLibName (UnqualComponentName "baz")), mungedVersion = mkVersion [0]})
>>> simpleParsec "foo-bar-0-0" :: Maybe MungedPackageId
Nothing
>>> simpleParsec "foo-bar.0" :: Maybe MungedPackageId
Nothing
>>> simpleParsec "foo-bar.4-2" :: Maybe MungedPackageId
Nothing
Instance details

Defined in Distribution.Types.MungedPackageId

Pretty MungedPackageId Source #
>>> prettyShow $ MungedPackageId (MungedPackageName "servant" LMainLibName) (mkVersion [1,2,3])
"servant-1.2.3"
>>> prettyShow $ MungedPackageId (MungedPackageName "servant" (LSubLibName "lackey")) (mkVersion [0,1,2])
"z-servant-z-lackey-0.1.2"
Instance details

Defined in Distribution.Types.MungedPackageId

Structured MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Data MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Methods

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

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

toConstr :: MungedPackageId -> Constr #

dataTypeOf :: MungedPackageId -> DataType #

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

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

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

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

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

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

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

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

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

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

Generic MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Associated Types

type Rep MungedPackageId :: Type -> Type #

Read MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Show MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Binary MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

NFData MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Methods

rnf :: MungedPackageId -> () #

Eq MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

Ord MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

type Rep MungedPackageId Source # 
Instance details

Defined in Distribution.Types.MungedPackageId

type Rep MungedPackageId = D1 ('MetaData "MungedPackageId" "Distribution.Types.MungedPackageId" "Cabal-syntax-3.10.1.0-CzFvy6Vr4NPEeFMO9pQqoE" 'False) (C1 ('MetaCons "MungedPackageId" 'PrefixI 'True) (S1 ('MetaSel ('Just "mungedName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MungedPackageName) :*: S1 ('MetaSel ('Just "mungedVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Version)))