stack-1.7.1: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Stack.Types.Version

Description

Versions for packages.

Synopsis

Documentation

data Version #

A package version.

Instances
Eq Version # 
Instance details

Defined in Stack.Types.Version

Methods

(==) :: Version -> Version -> Bool #

(/=) :: Version -> Version -> Bool #

Data Version # 
Instance details

Defined in Stack.Types.Version

Methods

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

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

toConstr :: Version -> Constr #

dataTypeOf :: Version -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord Version # 
Instance details

Defined in Stack.Types.Version

Show Version # 
Instance details

Defined in Stack.Types.Version

Generic Version # 
Instance details

Defined in Stack.Types.Version

Associated Types

type Rep Version :: * -> * #

Methods

from :: Version -> Rep Version x #

to :: Rep Version x -> Version #

Lift Version # 
Instance details

Defined in Stack.Types.Version

Methods

lift :: Version -> Q Exp #

NFData Version # 
Instance details

Defined in Stack.Types.Version

Methods

rnf :: Version -> () #

Hashable Version # 
Instance details

Defined in Stack.Types.Version

Methods

hashWithSalt :: Int -> Version -> Int #

hash :: Version -> Int #

ToJSON Version # 
Instance details

Defined in Stack.Types.Version

FromJSON Version # 
Instance details

Defined in Stack.Types.Version

FromJSONKey Version # 
Instance details

Defined in Stack.Types.Version

Display Version # 
Instance details

Defined in Stack.Types.Version

Store Version # 
Instance details

Defined in Stack.Types.Version

Display Version # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann Version :: * #

Methods

display :: Version -> Doc (Ann Version) #

type Rep Version # 
Instance details

Defined in Stack.Types.Version

type Rep Version = D1 (MetaData "Version" "Stack.Types.Version" "stack-1.7.1-79VQHXRBDVUIQMpSmzqhhb" True) (C1 (MetaCons "Version" PrefixI True) (S1 (MetaSel (Just "unVersion") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Vector Word))))
type Ann Version # 
Instance details

Defined in Stack.PrettyPrint

data VersionRange #

Instances
Eq VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Data VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Methods

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

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

toConstr :: VersionRange -> Constr #

dataTypeOf :: VersionRange -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord VersionRange # 
Instance details

Defined in Stack.Build.ConstructPlan

Read VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Show VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Generic VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Associated Types

type Rep VersionRange :: * -> * #

Text VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Parsec VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Pretty VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Methods

pretty :: VersionRange -> Doc #

Binary VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

NFData VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

Methods

rnf :: VersionRange -> () #

type Rep VersionRange 
Instance details

Defined in Distribution.Types.VersionRange

type Rep VersionRange = D1 (MetaData "VersionRange" "Distribution.Types.VersionRange" "Cabal-2.2.0.1" False) (((C1 (MetaCons "AnyVersion" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ThisVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version))) :+: (C1 (MetaCons "LaterVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version)) :+: (C1 (MetaCons "OrLaterVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version)) :+: C1 (MetaCons "EarlierVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version))))) :+: ((C1 (MetaCons "OrEarlierVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version)) :+: (C1 (MetaCons "WildcardVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version)) :+: C1 (MetaCons "MajorBoundVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version)))) :+: (C1 (MetaCons "UnionVersionRanges" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 VersionRange) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 VersionRange)) :+: (C1 (MetaCons "IntersectVersionRanges" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 VersionRange) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 VersionRange)) :+: C1 (MetaCons "VersionRangeParens" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 VersionRange))))))

versionParser :: Parser Version #

Attoparsec parser for a package version.

parseVersion :: MonadThrow m => Text -> m Version #

Convenient way to parse a package version from a Text.

parseVersionFromString :: MonadThrow m => String -> m Version #

Migration function.

versionString :: Version -> String #

Get a string representation of a package version.

versionText :: Version -> Text #

Get a string representation of a package version.

toCabalVersion :: Version -> Version #

Convert to a Cabal version.

fromCabalVersion :: Version -> Version #

Convert from a Cabal version.

mkVersion :: String -> Q Exp #

Make a package version.

versionRangeText :: VersionRange -> Text #

Display a version range

withinRange :: Version -> VersionRange -> Bool #

Check if a version is within a version range.

intersectVersionRanges :: VersionRange -> VersionRange -> VersionRange #

A modified intersection which also simplifies, for better display.

toMajorVersion :: Version -> Version #

Returns the first two components, defaulting to 0 if not present

latestApplicableVersion :: VersionRange -> Set Version -> Maybe Version #

Given a version range and a set of versions, find the latest version from the set that is within the range.

nextMajorVersion :: Version -> Version #

Get the next major version number for the given version

data UpgradeTo #

A Package upgrade; Latest or a specific version.

Constructors

Specific Version 
Latest 
Instances
Show UpgradeTo # 
Instance details

Defined in Stack.Types.Version

minorVersion :: Version -> Version #

Get minor version (excludes any patchlevel)

stackVersion :: Version #

Current Stack version

stackMinorVersion :: Version #

Current Stack minor version (excludes patchlevel)