cabal-install-3.12.1.0: The command-line interface for Cabal and Hackage.

Safe Haskell | None
Language | Haskell2010

Distribution.Client.TargetProblem

Synopsis

- data TargetProblem a
  - = TargetNotInProject PackageName
  - | TargetAvailableInIndex PackageName
  - | TargetComponentNotProjectLocal PackageId ComponentName SubComponentTarget
  - | TargetComponentNotBuildable PackageId ComponentName SubComponentTarget
  - | TargetOptionalStanzaDisabledByUser PackageId ComponentName SubComponentTarget
  - | TargetOptionalStanzaDisabledBySolver PackageId ComponentName SubComponentTarget
  - | TargetProblemUnknownComponent PackageName (Either UnqualComponentName ComponentName)
  - | TargetProblemNoneEnabled TargetSelector [AvailableTarget ()]
  - | TargetProblemNoTargets TargetSelector
  - | TargetProblemNoSuchPackage PackageId
  - | TargetProblemNoSuchComponent PackageId ComponentName
  - | CustomTargetProblem a
- type TargetProblem' = TargetProblem Void

# Documentation

data TargetProblem a #

Target problems that occur during project orchestration.

Constructors

TargetNotInProject PackageName |
TargetAvailableInIndex PackageName |
TargetComponentNotProjectLocal PackageId ComponentName SubComponentTarget |
TargetComponentNotBuildable PackageId ComponentName SubComponentTarget |
TargetOptionalStanzaDisabledByUser PackageId ComponentName SubComponentTarget |
TargetOptionalStanzaDisabledBySolver PackageId ComponentName SubComponentTarget |
TargetProblemUnknownComponent PackageName (Either UnqualComponentName ComponentName) |
TargetProblemNoneEnabled TargetSelector [AvailableTarget ()] | The `TargetSelector` matches component (testbenchmark...) but none are buildable
TargetProblemNoTargets TargetSelector | There are no targets at all
TargetProblemNoSuchPackage PackageId |
TargetProblemNoSuchComponent PackageId ComponentName |
CustomTargetProblem a | A custom target problem

#### Instances

Instances details

Functor TargetProblem # |
Instance details Defined in Distribution.Client.TargetProblem Methods fmap :: (a -> b) -> TargetProblem a -> TargetProblem b # (<$) :: a -> TargetProblem b -> TargetProblem a #
Show a => Show (TargetProblem a) # |
Instance details Defined in Distribution.Client.TargetProblem Methods showsPrec :: Int -> TargetProblem a -> ShowS # show :: TargetProblem a -> String # showList :: [TargetProblem a] -> ShowS #
Eq a => Eq (TargetProblem a) # |
Instance details Defined in Distribution.Client.TargetProblem Methods (==) :: TargetProblem a -> TargetProblem a -> Bool # (/=) :: TargetProblem a -> TargetProblem a -> Bool #

type TargetProblem' = TargetProblem Void #

Type alias for a `TargetProblem` with no user-defined problems/errors.

Can use the utilities below for reporting/rendering problems.