Cabal-3.2.1.0: A framework for packaging Haskell software
Safe Haskell None
Language Haskell2010

Distribution.Types.Condition

Synopsis

Documentation

data Condition c Source #

A boolean expression parameterized over the variable type used.

Instances

Instances details
Monad Condition Source #
Instance details

Defined in Distribution.Types.Condition

Functor Condition Source #
Instance details

Defined in Distribution.Types.Condition

Applicative Condition Source #
Instance details

Defined in Distribution.Types.Condition

Foldable Condition Source #
Instance details

Defined in Distribution.Types.Condition

Traversable Condition Source #
Instance details

Defined in Distribution.Types.Condition

Alternative Condition Source #
Instance details

Defined in Distribution.Types.Condition

MonadPlus Condition Source #
Instance details

Defined in Distribution.Types.Condition

Eq c => Eq ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

Data c => Data ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

Methods

gfoldl :: ( forall d b. Data d => c0 (d -> b) -> d -> c0 b) -> ( forall g. g -> c0 g) -> Condition c -> c0 ( Condition c) Source #

gunfold :: ( forall b r. Data b => c0 (b -> r) -> c0 r) -> ( forall r. r -> c0 r) -> Constr -> c0 ( Condition c) Source #

toConstr :: Condition c -> Constr Source #

dataTypeOf :: Condition c -> DataType Source #

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

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

gmapT :: ( forall b. Data b => b -> b) -> Condition c -> Condition c Source #

gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> Condition c -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> Condition c -> r Source #

gmapQ :: ( forall d. Data d => d -> u) -> Condition c -> [u] Source #

gmapQi :: Int -> ( forall d. Data d => d -> u) -> Condition c -> u Source #

gmapM :: Monad m => ( forall d. Data d => d -> m d) -> Condition c -> m ( Condition c) Source #

gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> Condition c -> m ( Condition c) Source #

gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> Condition c -> m ( Condition c) Source #

Show c => Show ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

Generic ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

Associated Types

type Rep ( Condition c) :: Type -> Type Source #

Semigroup ( Condition a) Source #
Instance details

Defined in Distribution.Types.Condition

Monoid ( Condition a) Source #
Instance details

Defined in Distribution.Types.Condition

Binary c => Binary ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

NFData c => NFData ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

Structured c => Structured ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

type Rep ( Condition c) Source #
Instance details

Defined in Distribution.Types.Condition

cNot :: Condition a -> Condition a Source #

Boolean negation of a Condition value.

cAnd :: Condition a -> Condition a -> Condition a Source #

Boolean AND of two Condtion values.

simplifyCondition Source #

Arguments

:: Condition c
-> (c -> Either d Bool )

(partial) variable assignment

-> ( Condition d, [d])

Simplify the condition and return its free variables.