module Distribution.Solver.Types.Variable where
import Prelude (Eq, Show)
import Distribution.Solver.Types.OptionalStanza
import Distribution.PackageDescription (FlagName)
data Variable qpn =
PackageVar qpn
| FlagVar qpn FlagName
| StanzaVar qpn OptionalStanza
deriving (Variable qpn -> Variable qpn -> Bool
forall qpn. Eq qpn => Variable qpn -> Variable qpn -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Variable qpn -> Variable qpn -> Bool
$c/= :: forall qpn. Eq qpn => Variable qpn -> Variable qpn -> Bool
== :: Variable qpn -> Variable qpn -> Bool
$c== :: forall qpn. Eq qpn => Variable qpn -> Variable qpn -> Bool
Eq, Int -> Variable qpn -> ShowS
forall qpn. Show qpn => Int -> Variable qpn -> ShowS
forall qpn. Show qpn => [Variable qpn] -> ShowS
forall qpn. Show qpn => Variable qpn -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Variable qpn] -> ShowS
$cshowList :: forall qpn. Show qpn => [Variable qpn] -> ShowS
show :: Variable qpn -> String
$cshow :: forall qpn. Show qpn => Variable qpn -> String
showsPrec :: Int -> Variable qpn -> ShowS
$cshowsPrec :: forall qpn. Show qpn => Int -> Variable qpn -> ShowS
Show)