| Copyright | (c) Duncan Coutts 2012 |
|---|---|
| License | BSD-like |
| Maintainer | duncan@community.haskell.org |
| Safe Haskell | None |
| Language | Haskell2010 |
Distribution.Simple.BuildTarget
Description
Handling for user-specified build targets
Synopsis
- readTargetInfos :: Verbosity -> PackageDescription -> LocalBuildInfo -> [String] -> IO [TargetInfo]
- readBuildTargets :: Verbosity -> PackageDescription -> [String] -> IO [BuildTarget]
- data BuildTarget
- showBuildTarget :: PackageId -> BuildTarget -> String
- data QualLevel
- buildTargetComponentName :: BuildTarget -> ComponentName
- data UserBuildTarget
- readUserBuildTargets :: [String] -> ([UserBuildTargetProblem], [UserBuildTarget])
- showUserBuildTarget :: UserBuildTarget -> String
- data UserBuildTargetProblem = UserBuildTargetUnrecognised String
- reportUserBuildTargetProblems :: Verbosity -> [UserBuildTargetProblem] -> IO ()
- resolveBuildTargets :: PackageDescription -> [(UserBuildTarget, Bool)] -> ([BuildTargetProblem], [BuildTarget])
- data BuildTargetProblem
- reportBuildTargetProblems :: Verbosity -> [BuildTargetProblem] -> IO ()
Main interface
readTargetInfos :: Verbosity -> PackageDescription -> LocalBuildInfo -> [String] -> IO [TargetInfo] Source #
Take a list of String build targets, and parse and validate them
into actual TargetInfo s to be builtregisteredwhatever.
readBuildTargets :: Verbosity -> PackageDescription -> [String] -> IO [BuildTarget] Source #
Read a list of user-supplied build target strings and resolve them to
BuildTarget s according to a PackageDescription . If there are problems
with any of the targets e.g. they don't exist or are misformatted, throw an
IOException .
Build targets
data BuildTarget Source #
A fully resolved build target.
Constructors
Instances
Instances details
Instance details
Defined in Distribution.Simple.BuildTarget
Associated Types
Instance details
Defined in Distribution.Simple.BuildTarget
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
showsPrec :: Int -> BuildTarget -> ShowS #
show :: BuildTarget -> String #
showList :: [BuildTarget] -> ShowS #
Instance details
Defined in Distribution.Simple.BuildTarget
Instance details
Defined in Distribution.Simple.BuildTarget
Instance details
Defined in Distribution.Simple.BuildTarget
showBuildTarget :: PackageId -> BuildTarget -> String Source #
Unambiguously render a BuildTarget , so that it can
be parsed in all situations.
Instances
Instances details
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
succ :: QualLevel -> QualLevel #
pred :: QualLevel -> QualLevel #
fromEnum :: QualLevel -> Int #
enumFrom :: QualLevel -> [QualLevel] #
enumFromThen :: QualLevel -> QualLevel -> [QualLevel] #
enumFromTo :: QualLevel -> QualLevel -> [QualLevel] #
enumFromThenTo :: QualLevel -> QualLevel -> QualLevel -> [QualLevel] #
Parsing user build targets
data UserBuildTarget Source #
Various ways that a user may specify a build target.
Instances
Instances details
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
showsPrec :: Int -> UserBuildTarget -> ShowS #
show :: UserBuildTarget -> String #
showList :: [UserBuildTarget] -> ShowS #
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
(==) :: UserBuildTarget -> UserBuildTarget -> Bool #
(/=) :: UserBuildTarget -> UserBuildTarget -> Bool #
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
compare :: UserBuildTarget -> UserBuildTarget -> Ordering #
(<) :: UserBuildTarget -> UserBuildTarget -> Bool #
(<=) :: UserBuildTarget -> UserBuildTarget -> Bool #
(>) :: UserBuildTarget -> UserBuildTarget -> Bool #
(>=) :: UserBuildTarget -> UserBuildTarget -> Bool #
max :: UserBuildTarget -> UserBuildTarget -> UserBuildTarget #
min :: UserBuildTarget -> UserBuildTarget -> UserBuildTarget #
readUserBuildTargets :: [String] -> ([UserBuildTargetProblem], [UserBuildTarget]) Source #
data UserBuildTargetProblem Source #
Constructors
Instances
Instances details
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
showsPrec :: Int -> UserBuildTargetProblem -> ShowS #
show :: UserBuildTargetProblem -> String #
showList :: [UserBuildTargetProblem] -> ShowS #
reportUserBuildTargetProblems :: Verbosity -> [UserBuildTargetProblem] -> IO () Source #
Resolving build targets
resolveBuildTargets :: PackageDescription -> [(UserBuildTarget, Bool)] -> ([BuildTargetProblem], [BuildTarget]) Source #
Given a bunch of user-specified targets, try to resolve what it is they refer to.
data BuildTargetProblem Source #
Constructors
Instances
Instances details
Instance details
Defined in Distribution.Simple.BuildTarget
Methods
showsPrec :: Int -> BuildTargetProblem -> ShowS #
show :: BuildTargetProblem -> String #
showList :: [BuildTargetProblem] -> ShowS #
reportBuildTargetProblems :: Verbosity -> [BuildTargetProblem] -> IO () Source #