mixed-types-num-0.4.1: Alternative Prelude with numeric and logic expressions typed bottom-up
Safe HaskellNone
LanguageHaskell2010

Control.CollectErrors

Synopsis

Monad for collecting errors in expressions

data CollectErrors es v Source #

A wrapper around values which can accommodate a list of (potential) errors that have (maybe) occurred during the computation of a value. A value may be missing, leaving only the error(s).

Such error collection allows one to write expressions with partial functions (ie functions that fail for some inputs) instead of branching after each application of such function. Dealing with the errors can be moved outside the expression. If the error data contain enough information, their list can be used to trace the source of the errors.

Constructors

CollectErrors 

Fields

Instances

Instances details
(SuitableForCE es, CanEnsureCE es a) => CanEnsureCE es (CollectErrors es a) Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es (CollectErrors es a) Source #

type EnsureNoCE es (CollectErrors es a) Source #

(ConvertibleExactly Bool t, Monoid es) => ConvertibleExactly Bool (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Literals

(ConvertibleExactly Double t, Monoid es) => ConvertibleExactly Double (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Literals

(ConvertibleExactly Int t, Monoid es) => ConvertibleExactly Int (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Literals

(ConvertibleExactly Integer t, Monoid es) => ConvertibleExactly Integer (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Literals

(ConvertibleExactly Rational t, Monoid es) => ConvertibleExactly Rational (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Literals

(CanAndOrAsymmetric Bool t2, SuitableForCE es, CanEnsureCE es t2, CanEnsureCE es (AndOrType Bool t2)) => CanAndOrAsymmetric Bool (CollectErrors es t2) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

Associated Types

type AndOrType Bool (CollectErrors es t2) Source #

(HasOrderAsymmetric Double b, CanEnsureCE es b, CanEnsureCE es (OrderCompareType Double b), IsBool (EnsureCE es (OrderCompareType Double b)), SuitableForCE es) => HasOrderAsymmetric Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType Double (CollectErrors es b) Source #

(HasOrderAsymmetric Int b, CanEnsureCE es b, CanEnsureCE es (OrderCompareType Int b), IsBool (EnsureCE es (OrderCompareType Int b)), SuitableForCE es) => HasOrderAsymmetric Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType Int (CollectErrors es b) Source #

(HasOrderAsymmetric Integer b, CanEnsureCE es b, CanEnsureCE es (OrderCompareType Integer b), IsBool (EnsureCE es (OrderCompareType Integer b)), SuitableForCE es) => HasOrderAsymmetric Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType Integer (CollectErrors es b) Source #

(HasOrderAsymmetric Rational b, CanEnsureCE es b, CanEnsureCE es (OrderCompareType Rational b), IsBool (EnsureCE es (OrderCompareType Rational b)), SuitableForCE es) => HasOrderAsymmetric Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType Rational (CollectErrors es b) Source #

(HasEqAsymmetric Bool b, CanEnsureCE es b, CanEnsureCE es (EqCompareType Bool b), IsBool (EnsureCE es (EqCompareType Bool b)), SuitableForCE es) => HasEqAsymmetric Bool (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType Bool (CollectErrors es b) Source #

(HasEqAsymmetric Double b, CanEnsureCE es b, CanEnsureCE es (EqCompareType Double b), IsBool (EnsureCE es (EqCompareType Double b)), SuitableForCE es) => HasEqAsymmetric Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType Double (CollectErrors es b) Source #

(HasEqAsymmetric Int b, CanEnsureCE es b, CanEnsureCE es (EqCompareType Int b), IsBool (EnsureCE es (EqCompareType Int b)), SuitableForCE es) => HasEqAsymmetric Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType Int (CollectErrors es b) Source #

(HasEqAsymmetric Integer b, CanEnsureCE es b, CanEnsureCE es (EqCompareType Integer b), IsBool (EnsureCE es (EqCompareType Integer b)), SuitableForCE es) => HasEqAsymmetric Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType Integer (CollectErrors es b) Source #

(HasEqAsymmetric Rational b, CanEnsureCE es b, CanEnsureCE es (EqCompareType Rational b), IsBool (EnsureCE es (EqCompareType Rational b)), SuitableForCE es) => HasEqAsymmetric Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType Rational (CollectErrors es b) Source #

(CanMinMaxAsymmetric Double b, CanEnsureCE es b, CanEnsureCE es (MinMaxType Double b), SuitableForCE es) => CanMinMaxAsymmetric Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType Double (CollectErrors es b) Source #

(CanMinMaxAsymmetric Int b, CanEnsureCE es b, CanEnsureCE es (MinMaxType Int b), SuitableForCE es) => CanMinMaxAsymmetric Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType Int (CollectErrors es b) Source #

(CanMinMaxAsymmetric Integer b, CanEnsureCE es b, CanEnsureCE es (MinMaxType Integer b), SuitableForCE es) => CanMinMaxAsymmetric Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType Integer (CollectErrors es b) Source #

(CanMinMaxAsymmetric Rational b, CanEnsureCE es b, CanEnsureCE es (MinMaxType Rational b), SuitableForCE es) => CanMinMaxAsymmetric Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType Rational (CollectErrors es b) Source #

(CanSub Double b, CanEnsureCE es b, CanEnsureCE es (SubType Double b), SuitableForCE es) => CanSub Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType Double (CollectErrors es b) Source #

(CanSub Int b, CanEnsureCE es b, CanEnsureCE es (SubType Int b), SuitableForCE es) => CanSub Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType Int (CollectErrors es b) Source #

Methods

sub :: Int -> CollectErrors es b -> SubType Int (CollectErrors es b) Source #

(CanSub Integer b, CanEnsureCE es b, CanEnsureCE es (SubType Integer b), SuitableForCE es) => CanSub Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType Integer (CollectErrors es b) Source #

(CanSub Rational b, CanEnsureCE es b, CanEnsureCE es (SubType Rational b), SuitableForCE es) => CanSub Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType Rational (CollectErrors es b) Source #

(CanAddAsymmetric Double b, CanEnsureCE es b, CanEnsureCE es (AddType Double b), SuitableForCE es) => CanAddAsymmetric Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType Double (CollectErrors es b) Source #

(CanAddAsymmetric Int b, CanEnsureCE es b, CanEnsureCE es (AddType Int b), SuitableForCE es) => CanAddAsymmetric Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType Int (CollectErrors es b) Source #

Methods

add :: Int -> CollectErrors es b -> AddType Int (CollectErrors es b) Source #

(CanAddAsymmetric Integer b, CanEnsureCE es b, CanEnsureCE es (AddType Integer b), SuitableForCE es) => CanAddAsymmetric Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType Integer (CollectErrors es b) Source #

(CanAddAsymmetric Rational b, CanEnsureCE es b, CanEnsureCE es (AddType Rational b), SuitableForCE es) => CanAddAsymmetric Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType Rational (CollectErrors es b) Source #

(CanPow Double b, CanEnsureCE es b, CanEnsureCE es (PowType Double b), CanEnsureCE es (PowTypeNoCN Double b), SuitableForCE es) => CanPow Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN Double (CollectErrors es b) Source #

type PowType Double (CollectErrors es b) Source #

(CanPow Int b, CanEnsureCE es b, CanEnsureCE es (PowType Int b), CanEnsureCE es (PowTypeNoCN Int b), SuitableForCE es) => CanPow Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN Int (CollectErrors es b) Source #

type PowType Int (CollectErrors es b) Source #

(CanPow Integer b, CanEnsureCE es b, CanEnsureCE es (PowType Integer b), CanEnsureCE es (PowTypeNoCN Integer b), SuitableForCE es) => CanPow Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN Integer (CollectErrors es b) Source #

type PowType Integer (CollectErrors es b) Source #

(CanPow Rational b, CanEnsureCE es b, CanEnsureCE es (PowType Rational b), CanEnsureCE es (PowTypeNoCN Rational b), SuitableForCE es) => CanPow Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

(CanMulAsymmetric Double b, CanEnsureCE es b, CanEnsureCE es (MulType Double b), SuitableForCE es) => CanMulAsymmetric Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType Double (CollectErrors es b) Source #

(CanMulAsymmetric Int b, CanEnsureCE es b, CanEnsureCE es (MulType Int b), SuitableForCE es) => CanMulAsymmetric Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType Int (CollectErrors es b) Source #

Methods

mul :: Int -> CollectErrors es b -> MulType Int (CollectErrors es b) Source #

(CanMulAsymmetric Integer b, CanEnsureCE es b, CanEnsureCE es (MulType Integer b), SuitableForCE es) => CanMulAsymmetric Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType Integer (CollectErrors es b) Source #

(CanMulAsymmetric Rational b, CanEnsureCE es b, CanEnsureCE es (MulType Rational b), SuitableForCE es) => CanMulAsymmetric Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType Rational (CollectErrors es b) Source #

(CanDiv Double b, CanEnsureCE es b, CanEnsureCE es (DivType Double b), CanEnsureCE es (DivTypeNoCN Double b), SuitableForCE es) => CanDiv Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN Double (CollectErrors es b) Source #

type DivType Double (CollectErrors es b) Source #

(CanDiv Int b, CanEnsureCE es b, CanEnsureCE es (DivType Int b), CanEnsureCE es (DivTypeNoCN Int b), SuitableForCE es) => CanDiv Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN Int (CollectErrors es b) Source #

type DivType Int (CollectErrors es b) Source #

(CanDiv Integer b, CanEnsureCE es b, CanEnsureCE es (DivType Integer b), CanEnsureCE es (DivTypeNoCN Integer b), SuitableForCE es) => CanDiv Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN Integer (CollectErrors es b) Source #

type DivType Integer (CollectErrors es b) Source #

(CanDiv Rational b, CanEnsureCE es b, CanEnsureCE es (DivType Rational b), CanEnsureCE es (DivTypeNoCN Rational b), SuitableForCE es) => CanDiv Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Monoid es => Monad (CollectErrors es) Source # 
Instance details

Defined in Control.CollectErrors

Methods

(>>=) :: CollectErrors es a -> (a -> CollectErrors es b) -> CollectErrors es b #

(>>) :: CollectErrors es a -> CollectErrors es b -> CollectErrors es b #

return :: a -> CollectErrors es a #

Functor (CollectErrors es) Source # 
Instance details

Defined in Control.CollectErrors

Methods

fmap :: (a -> b) -> CollectErrors es a -> CollectErrors es b #

(<$) :: a -> CollectErrors es b -> CollectErrors es a #

Monoid es => Applicative (CollectErrors es) Source # 
Instance details

Defined in Control.CollectErrors

Methods

pure :: a -> CollectErrors es a #

(<*>) :: CollectErrors es (a -> b) -> CollectErrors es a -> CollectErrors es b #

liftA2 :: (a -> b -> c) -> CollectErrors es a -> CollectErrors es b -> CollectErrors es c #

(*>) :: CollectErrors es a -> CollectErrors es b -> CollectErrors es b #

(<*) :: CollectErrors es a -> CollectErrors es b -> CollectErrors es a #

OrderedCertainlyRing (CN Integer) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

OrderedCertainlyRing (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

OrderedRing (CN Integer) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

OrderedRing (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Ring (CN Integer) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Ring (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

OrderedCertainlyField (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

OrderedField (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Field (CN Rational) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

(HasEqAsymmetric (Maybe Bool) b, CanEnsureCE es b, CanEnsureCE es (EqCompareType (Maybe Bool) b), IsBool (EnsureCE es (EqCompareType (Maybe Bool) b)), SuitableForCE es) => HasEqAsymmetric (Maybe Bool) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (Maybe Bool) (CollectErrors es b) Source #

(Show v, SuitableForCE es) => Show (CollectErrors es v) Source # 
Instance details

Defined in Control.CollectErrors

Methods

showsPrec :: Int -> CollectErrors es v -> ShowS #

show :: CollectErrors es v -> String #

showList :: [CollectErrors es v] -> ShowS #

(Arbitrary t, Monoid es) => Arbitrary (CollectErrors es t) Source # 
Instance details

Defined in Control.CollectErrors

Methods

arbitrary :: Gen (CollectErrors es t) #

shrink :: CollectErrors es t -> [CollectErrors es t] #

(CanNeg t, SuitableForCE es, CanEnsureCE es t, CanEnsureCE es (NegType t)) => CanNeg (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

Associated Types

type NegType (CollectErrors es t) Source #

(CanTestCertainly t, SuitableForCE es) => CanTestCertainly (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

(CanTestPosNeg t, SuitableForCE es) => CanTestPosNeg (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

(CanPickNonZero a, SuitableForCE es) => CanPickNonZero (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Methods

pickNonZero :: [(CollectErrors es a, s)] -> Maybe (CollectErrors es a, s) Source #

(CanTestZero t, SuitableForCE es) => CanTestZero (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

(CanTestInteger t, SuitableForCE es) => CanTestInteger (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

(CanTestFinite t, SuitableForCE es) => CanTestFinite (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

(CanTestNaN t, SuitableForCE es) => CanTestNaN (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Methods

isNaN :: CollectErrors es t -> Bool Source #

(CanAbs a, CanEnsureCE es a, CanEnsureCE es (AbsType a), SuitableForCE es) => CanAbs (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type AbsType (CollectErrors es a) Source #

Methods

abs :: CollectErrors es a -> AbsType (CollectErrors es a) Source #

(CanSinCos a, CanEnsureCE es a, CanEnsureCE es (SinCosType a), SuitableForCE es) => CanSinCos (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

Associated Types

type SinCosType (CollectErrors es a) Source #

(CanLog a, CanEnsureCE es a, CanEnsureCE es (LogType a), SuitableForCE es) => CanLog (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

Associated Types

type LogType (CollectErrors es a) Source #

Methods

log :: CollectErrors es a -> LogType (CollectErrors es a) Source #

(CanExp a, CanEnsureCE es a, CanEnsureCE es (ExpType a), SuitableForCE es) => CanExp (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

Associated Types

type ExpType (CollectErrors es a) Source #

Methods

exp :: CollectErrors es a -> ExpType (CollectErrors es a) Source #

(CanSqrt a, CanEnsureCE es a, CanEnsureCE es (SqrtType a), SuitableForCE es) => CanSqrt (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

Associated Types

type SqrtType (CollectErrors es a) Source #

Methods

sqrt :: CollectErrors es a -> SqrtType (CollectErrors es a) Source #

(CanAndOrAsymmetric t1 Bool, SuitableForCE es, CanEnsureCE es t1, CanEnsureCE es (AndOrType t1 Bool)) => CanAndOrAsymmetric (CollectErrors es t1) Bool Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

Associated Types

type AndOrType (CollectErrors es t1) Bool Source #

(HasOrderAsymmetric a Integer, CanEnsureCE es a, CanEnsureCE es (OrderCompareType a Integer), IsBool (EnsureCE es (OrderCompareType a Integer)), SuitableForCE es) => HasOrderAsymmetric (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType (CollectErrors es a) Integer Source #

(HasOrderAsymmetric a Int, CanEnsureCE es a, CanEnsureCE es (OrderCompareType a Int), IsBool (EnsureCE es (OrderCompareType a Int)), SuitableForCE es) => HasOrderAsymmetric (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType (CollectErrors es a) Int Source #

(HasOrderAsymmetric a Rational, CanEnsureCE es a, CanEnsureCE es (OrderCompareType a Rational), IsBool (EnsureCE es (OrderCompareType a Rational)), SuitableForCE es) => HasOrderAsymmetric (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType (CollectErrors es a) Rational Source #

(HasOrderAsymmetric a Double, CanEnsureCE es a, CanEnsureCE es (OrderCompareType a Double), IsBool (EnsureCE es (OrderCompareType a Double)), SuitableForCE es) => HasOrderAsymmetric (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType (CollectErrors es a) Double Source #

(HasEqAsymmetric a Bool, CanEnsureCE es a, CanEnsureCE es (EqCompareType a Bool), IsBool (EnsureCE es (EqCompareType a Bool)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) Bool Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) Bool Source #

(HasEqAsymmetric a Integer, CanEnsureCE es a, CanEnsureCE es (EqCompareType a Integer), IsBool (EnsureCE es (EqCompareType a Integer)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) Integer Source #

(HasEqAsymmetric a Int, CanEnsureCE es a, CanEnsureCE es (EqCompareType a Int), IsBool (EnsureCE es (EqCompareType a Int)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) Int Source #

(HasEqAsymmetric a Rational, CanEnsureCE es a, CanEnsureCE es (EqCompareType a Rational), IsBool (EnsureCE es (EqCompareType a Rational)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) Rational Source #

(HasEqAsymmetric a Double, CanEnsureCE es a, CanEnsureCE es (EqCompareType a Double), IsBool (EnsureCE es (EqCompareType a Double)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) Double Source #

(CanMinMaxAsymmetric a Integer, CanEnsureCE es a, CanEnsureCE es (MinMaxType a Integer), SuitableForCE es) => CanMinMaxAsymmetric (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType (CollectErrors es a) Integer Source #

(CanMinMaxAsymmetric a Int, CanEnsureCE es a, CanEnsureCE es (MinMaxType a Int), SuitableForCE es) => CanMinMaxAsymmetric (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType (CollectErrors es a) Int Source #

(CanMinMaxAsymmetric a Rational, CanEnsureCE es a, CanEnsureCE es (MinMaxType a Rational), SuitableForCE es) => CanMinMaxAsymmetric (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType (CollectErrors es a) Rational Source #

(CanMinMaxAsymmetric a Double, CanEnsureCE es a, CanEnsureCE es (MinMaxType a Double), SuitableForCE es) => CanMinMaxAsymmetric (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType (CollectErrors es a) Double Source #

(CanSub a Integer, CanEnsureCE es a, CanEnsureCE es (SubType a Integer), SuitableForCE es) => CanSub (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType (CollectErrors es a) Integer Source #

(CanSub a Int, CanEnsureCE es a, CanEnsureCE es (SubType a Int), SuitableForCE es) => CanSub (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType (CollectErrors es a) Int Source #

Methods

sub :: CollectErrors es a -> Int -> SubType (CollectErrors es a) Int Source #

(CanSub a Rational, CanEnsureCE es a, CanEnsureCE es (SubType a Rational), SuitableForCE es) => CanSub (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType (CollectErrors es a) Rational Source #

(CanSub a Double, CanEnsureCE es a, CanEnsureCE es (SubType a Double), SuitableForCE es) => CanSub (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType (CollectErrors es a) Double Source #

(CanAddAsymmetric a Integer, CanEnsureCE es a, CanEnsureCE es (AddType a Integer), SuitableForCE es) => CanAddAsymmetric (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType (CollectErrors es a) Integer Source #

(CanAddAsymmetric a Int, CanEnsureCE es a, CanEnsureCE es (AddType a Int), SuitableForCE es) => CanAddAsymmetric (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType (CollectErrors es a) Int Source #

Methods

add :: CollectErrors es a -> Int -> AddType (CollectErrors es a) Int Source #

(CanAddAsymmetric a Rational, CanEnsureCE es a, CanEnsureCE es (AddType a Rational), SuitableForCE es) => CanAddAsymmetric (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType (CollectErrors es a) Rational Source #

(CanAddAsymmetric a Double, CanEnsureCE es a, CanEnsureCE es (AddType a Double), SuitableForCE es) => CanAddAsymmetric (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType (CollectErrors es a) Double Source #

(CanPow a Integer, CanEnsureCE es a, CanEnsureCE es (PowType a Integer), CanEnsureCE es (PowTypeNoCN a Integer), SuitableForCE es) => CanPow (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN (CollectErrors es a) Integer Source #

type PowType (CollectErrors es a) Integer Source #

(CanPow a Int, CanEnsureCE es a, CanEnsureCE es (PowType a Int), CanEnsureCE es (PowTypeNoCN a Int), SuitableForCE es) => CanPow (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN (CollectErrors es a) Int Source #

type PowType (CollectErrors es a) Int Source #

(CanPow a Rational, CanEnsureCE es a, CanEnsureCE es (PowType a Rational), CanEnsureCE es (PowTypeNoCN a Rational), SuitableForCE es) => CanPow (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

(CanPow a Double, CanEnsureCE es a, CanEnsureCE es (PowType a Double), CanEnsureCE es (PowTypeNoCN a Double), SuitableForCE es) => CanPow (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN (CollectErrors es a) Double Source #

type PowType (CollectErrors es a) Double Source #

(CanMulAsymmetric a Integer, CanEnsureCE es a, CanEnsureCE es (MulType a Integer), SuitableForCE es) => CanMulAsymmetric (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType (CollectErrors es a) Integer Source #

(CanMulAsymmetric a Int, CanEnsureCE es a, CanEnsureCE es (MulType a Int), SuitableForCE es) => CanMulAsymmetric (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType (CollectErrors es a) Int Source #

Methods

mul :: CollectErrors es a -> Int -> MulType (CollectErrors es a) Int Source #

(CanMulAsymmetric a Rational, CanEnsureCE es a, CanEnsureCE es (MulType a Rational), SuitableForCE es) => CanMulAsymmetric (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType (CollectErrors es a) Rational Source #

(CanMulAsymmetric a Double, CanEnsureCE es a, CanEnsureCE es (MulType a Double), SuitableForCE es) => CanMulAsymmetric (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType (CollectErrors es a) Double Source #

(CanDiv a Integer, CanEnsureCE es a, CanEnsureCE es (DivType a Integer), CanEnsureCE es (DivTypeNoCN a Integer), SuitableForCE es) => CanDiv (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN (CollectErrors es a) Integer Source #

type DivType (CollectErrors es a) Integer Source #

(CanDiv a Int, CanEnsureCE es a, CanEnsureCE es (DivType a Int), CanEnsureCE es (DivTypeNoCN a Int), SuitableForCE es) => CanDiv (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN (CollectErrors es a) Int Source #

type DivType (CollectErrors es a) Int Source #

(CanDiv a Rational, CanEnsureCE es a, CanEnsureCE es (DivType a Rational), CanEnsureCE es (DivTypeNoCN a Rational), SuitableForCE es) => CanDiv (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Field

(CanDiv a Double, CanEnsureCE es a, CanEnsureCE es (DivType a Double), CanEnsureCE es (DivTypeNoCN a Double), SuitableForCE es) => CanDiv (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN (CollectErrors es a) Double Source #

type DivType (CollectErrors es a) Double Source #

(HasEqAsymmetric a (Maybe Bool), CanEnsureCE es a, CanEnsureCE es (EqCompareType a (Maybe Bool)), IsBool (EnsureCE es (EqCompareType a (Maybe Bool))), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) (Maybe Bool) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) (Maybe Bool) Source #

(CanAndOrAsymmetric t1 t2, SuitableForCE es, CanEnsureCE es t1, CanEnsureCE es t2, CanEnsureCE es (AndOrType t1 t2)) => CanAndOrAsymmetric (CollectErrors es t1) (CollectErrors es t2) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

Associated Types

type AndOrType (CollectErrors es t1) (CollectErrors es t2) Source #

(HasOrderAsymmetric a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (OrderCompareType a b), IsBool (EnsureCE es (OrderCompareType a b)), SuitableForCE es) => HasOrderAsymmetric (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

Associated Types

type OrderCompareType (CollectErrors es a) (CollectErrors es b) Source #

(HasEqAsymmetric a b, CanEnsureCE es (EqCompareType a b), CanEnsureCE es a, CanEnsureCE es b, IsBool (EnsureCE es (EqCompareType a b)), SuitableForCE es) => HasEqAsymmetric (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

Associated Types

type EqCompareType (CollectErrors es a) (CollectErrors es b) Source #

(CanMinMaxAsymmetric a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (MinMaxType a b), SuitableForCE es) => CanMinMaxAsymmetric (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

Associated Types

type MinMaxType (CollectErrors es a) (CollectErrors es b) Source #

(CanSub a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (SubType a b), SuitableForCE es) => CanSub (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type SubType (CollectErrors es a) (CollectErrors es b) Source #

Methods

sub :: CollectErrors es a -> CollectErrors es b -> SubType (CollectErrors es a) (CollectErrors es b) Source #

(CanAddAsymmetric a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (AddType a b), SuitableForCE es) => CanAddAsymmetric (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

Associated Types

type AddType (CollectErrors es a) (CollectErrors es b) Source #

Methods

add :: CollectErrors es a -> CollectErrors es b -> AddType (CollectErrors es a) (CollectErrors es b) Source #

(CanPow a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (PowTypeNoCN a b), CanEnsureCE es (PowType a b), SuitableForCE es) => CanPow (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type PowTypeNoCN (CollectErrors es a) (CollectErrors es b) Source #

type PowType (CollectErrors es a) (CollectErrors es b) Source #

(CanMulAsymmetric a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (MulType a b), SuitableForCE es) => CanMulAsymmetric (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

Associated Types

type MulType (CollectErrors es a) (CollectErrors es b) Source #

Methods

mul :: CollectErrors es a -> CollectErrors es b -> MulType (CollectErrors es a) (CollectErrors es b) Source #

(CanDiv a b, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es (DivType a b), CanEnsureCE es (DivTypeNoCN a b), SuitableForCE es) => CanDiv (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

Associated Types

type DivTypeNoCN (CollectErrors es a) (CollectErrors es b) Source #

type DivType (CollectErrors es a) (CollectErrors es b) Source #

type EnsureCE es (CollectErrors es a) Source # 
Instance details

Defined in Control.CollectErrors

type EnsureCE es (CollectErrors es a) = EnsureCE es a
type EnsureNoCE es (CollectErrors es a) Source # 
Instance details

Defined in Control.CollectErrors

type EnsureNoCE es (CollectErrors es a) = EnsureNoCE es a
type AndOrType Bool (CollectErrors es t2) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

type OrderCompareType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type EqCompareType Bool (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type MinMaxType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type SubType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type PowTypeNoCN Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type DivTypeNoCN Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType Double (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType Int (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType Integer (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType Rational (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type EqCompareType (Maybe Bool) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type NegType (CollectErrors es t) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

type NegType (CollectErrors es t) = EnsureCE es (NegType t)
type AbsType (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type AbsType (CollectErrors es a) = EnsureCE es (AbsType a)
type SinCosType (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

type LogType (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

type LogType (CollectErrors es a) = EnsureCE es (LogType a)
type ExpType (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

type ExpType (CollectErrors es a) = EnsureCE es (ExpType a)
type SqrtType (CollectErrors es a) Source # 
Instance details

Defined in Numeric.MixedTypes.Elementary

type AndOrType (CollectErrors es t1) Bool Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

type OrderCompareType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type OrderCompareType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type EqCompareType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type EqCompareType (CollectErrors es a) Bool Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type MinMaxType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type MinMaxType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type SubType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type PowTypeNoCN (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowTypeNoCN (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type DivTypeNoCN (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivTypeNoCN (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) Double Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) Rational Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) Int Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) Integer Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type EqCompareType (CollectErrors es a) (Maybe Bool) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type AndOrType (CollectErrors es t1) (CollectErrors es t2) Source # 
Instance details

Defined in Numeric.MixedTypes.Bool

type AndOrType (CollectErrors es t1) (CollectErrors es t2) = EnsureCE es (AndOrType t1 t2)
type OrderCompareType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ord

type EqCompareType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Eq

type MinMaxType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.MinMaxAbs

type SubType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type SubType (CollectErrors es a) (CollectErrors es b) = EnsureCE es (SubType a b)
type AddType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.AddSub

type AddType (CollectErrors es a) (CollectErrors es b) = EnsureCE es (AddType a b)
type PowTypeNoCN (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type PowType (CollectErrors es a) (CollectErrors es b) = EnsureCE es (PowType a b)
type MulType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Ring

type MulType (CollectErrors es a) (CollectErrors es b) = EnsureCE es (MulType a b)
type DivTypeNoCN (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) (CollectErrors es b) Source # 
Instance details

Defined in Numeric.MixedTypes.Field

type DivType (CollectErrors es a) (CollectErrors es b) = EnsureCE es (DivType a b)

class CanTestErrorsCertain es where Source #

Methods

hasCertainError :: es -> Bool Source #

Instances

Instances details
CanTestErrorsCertain NumErrors Source # 
Instance details

Defined in Numeric.CollectErrors

class CanTestErrorsPresent es where Source #

Methods

hasError :: es -> Bool Source #

Instances

Instances details
CanTestErrorsPresent NumErrors Source # 
Instance details

Defined in Numeric.CollectErrors

getValueIfNoErrorCE :: SuitableForCE es => CollectErrors es v -> (v -> t) -> (es -> t) -> t Source #

A safe way to get a value out of the CollectErrors wrapper.

Tools for avoiding CollectErrors(CollectErrors t) and putting CE inside containers

class (Monoid es, EnsureCE es (EnsureCE es a) ~ EnsureCE es a, EnsureCE es (EnsureNoCE es a) ~ EnsureCE es a, EnsureNoCE es (EnsureCE es a) ~ EnsureNoCE es a, EnsureNoCE es (EnsureNoCE es a) ~ EnsureNoCE es a) => CanEnsureCE es a where Source #

A mechanism for adding and removing CollectErrors to a type in a manner that depends on the shape of the type, especially whether it already has CollectErrors.

Minimal complete definition

Nothing

Associated Types

type EnsureCE es a Source #

Add CollectErrors to a type except when the type already has CollectErrors in it.

type EnsureCE es a = CollectErrors es a

type EnsureNoCE es a Source #

type EnsureNoCE es a = a

Methods

ensureCE Source #

Arguments

:: Maybe es

sample only

-> a 
-> EnsureCE es a 

Translate a value of a type a to a value of a type EnsureCE es a.

default ensureCE :: EnsureCE es a ~ CollectErrors es a => Maybe es -> a -> EnsureCE es a Source #

deEnsureCE Source #

Arguments

:: Maybe es

sample only

-> EnsureCE es a 
-> Either es a 

default deEnsureCE :: (EnsureCE es a ~ CollectErrors es a, Eq es) => Maybe es -> EnsureCE es a -> Either es a Source #

ensureNoCE Source #

Arguments

:: Maybe es

sample only

-> a 
-> (Maybe (EnsureNoCE es a), es) 

default ensureNoCE :: (EnsureNoCE es a ~ a, Eq es, Monoid es) => Maybe es -> a -> (Maybe (EnsureNoCE es a), es) Source #

noValueECE Source #

Arguments

:: Maybe a

sample only

-> es 
-> EnsureCE es a 

Make CollectErrors record with no value, only errors.

default noValueECE :: EnsureCE es a ~ CollectErrors es a => Maybe a -> es -> EnsureCE es a Source #

prependErrorsECE :: Maybe a -> es -> EnsureCE es a -> EnsureCE es a Source #

default prependErrorsECE :: EnsureCE es a ~ CollectErrors es a => Maybe a -> es -> EnsureCE es a -> EnsureCE es a Source #

Instances

Instances details
SuitableForCE es => CanEnsureCE es () Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es () Source #

type EnsureNoCE es () Source #

Methods

ensureCE :: Maybe es -> () -> EnsureCE es () Source #

deEnsureCE :: Maybe es -> EnsureCE es () -> Either es () Source #

ensureNoCE :: Maybe es -> () -> (Maybe (EnsureNoCE es ()), es) Source #

noValueECE :: Maybe () -> es -> EnsureCE es () Source #

prependErrorsECE :: Maybe () -> es -> EnsureCE es () -> EnsureCE es () Source #

SuitableForCE es => CanEnsureCE es Char Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Char Source #

type EnsureNoCE es Char Source #

SuitableForCE es => CanEnsureCE es Bool Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Bool Source #

type EnsureNoCE es Bool Source #

SuitableForCE es => CanEnsureCE es Double Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Double Source #

type EnsureNoCE es Double Source #

SuitableForCE es => CanEnsureCE es Rational Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Rational Source #

type EnsureNoCE es Rational Source #

SuitableForCE es => CanEnsureCE es Integer Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Integer Source #

type EnsureNoCE es Integer Source #

SuitableForCE es => CanEnsureCE es Int Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es Int Source #

type EnsureNoCE es Int Source #

(SuitableForCE es, CanEnsureCE es a) => CanEnsureCE es (Maybe a) Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es (Maybe a) Source #

type EnsureNoCE es (Maybe a) Source #

Methods

ensureCE :: Maybe es -> Maybe a -> EnsureCE es (Maybe a) Source #

deEnsureCE :: Maybe es -> EnsureCE es (Maybe a) -> Either es (Maybe a) Source #

ensureNoCE :: Maybe es -> Maybe a -> (Maybe (EnsureNoCE es (Maybe a)), es) Source #

noValueECE :: Maybe (Maybe a) -> es -> EnsureCE es (Maybe a) Source #

prependErrorsECE :: Maybe (Maybe a) -> es -> EnsureCE es (Maybe a) -> EnsureCE es (Maybe a) Source #

(SuitableForCE es, CanEnsureCE es a) => CanEnsureCE es (b -> a) Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es (b -> a) Source #

type EnsureNoCE es (b -> a) Source #

Methods

ensureCE :: Maybe es -> (b -> a) -> EnsureCE es (b -> a) Source #

deEnsureCE :: Maybe es -> EnsureCE es (b -> a) -> Either es (b -> a) Source #

ensureNoCE :: Maybe es -> (b -> a) -> (Maybe (EnsureNoCE es (b -> a)), es) Source #

noValueECE :: Maybe (b -> a) -> es -> EnsureCE es (b -> a) Source #

prependErrorsECE :: Maybe (b -> a) -> es -> EnsureCE es (b -> a) -> EnsureCE es (b -> a) Source #

(SuitableForCE es, CanEnsureCE es a) => CanEnsureCE es (CollectErrors es a) Source # 
Instance details

Defined in Control.CollectErrors

Associated Types

type EnsureCE es (CollectErrors es a) Source #

type EnsureNoCE es (CollectErrors es a) Source #

getValueOrThrowErrorsNCE Source #

Arguments

:: (SuitableForCE es, CanEnsureCE es v, Show v) 
=> Maybe es

sample only

-> v 
-> EnsureNoCE es v 

An unsafe way to get a value out of an CollectErrors wrapper.

lift1CE :: (SuitableForCE es, CanEnsureCE es a, CanEnsureCE es c) => (a -> c) -> CollectErrors es a -> EnsureCE es c Source #

Add error collection support to an unary function whose result may already have collected errors.

lift2CE :: (SuitableForCE es, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es c) => (a -> b -> c) -> CollectErrors es a -> CollectErrors es b -> EnsureCE es c Source #

Add error collection support to a binary function whose result may already have collected errors.

lift2TCE :: (SuitableForCE es, CanEnsureCE es a, CanEnsureCE es c) => (a -> b -> c) -> CollectErrors es a -> b -> EnsureCE es c Source #

Add error collection support to a binary function whose result may already have collected errors. A version where the second operand is not lifted, only the first one.

lift2TLCE :: (SuitableForCE es, CanEnsureCE es b, CanEnsureCE es c) => (a -> b -> c) -> a -> CollectErrors es b -> EnsureCE es c Source #

Add error collection support to a binary function whose result may already have collected errors. A version where the first operand is not lifted, only the second one.

lift3CE :: (SuitableForCE es, CanEnsureCE es a, CanEnsureCE es b, CanEnsureCE es c, CanEnsureCE es d) => (a -> b -> c -> d) -> CollectErrors es a -> CollectErrors es b -> CollectErrors es c -> EnsureCE es d Source #

Add error collection support to a binary function whose result may already have collected errors.

Tools for pulling errors out of structures

class SuitableForCE es => CanExtractCE es f where Source #

Ability to lift collected (potential) errors from inside some structure/collection.

This is useful mostly for structures that use the default implementation of 'CanEnsureCE es'.

Minimal complete definition

Nothing

Methods

extractCE :: CanEnsureCE es c => Maybe es -> f c -> CollectErrors es (f (EnsureNoCE es c)) Source #

default extractCE :: (CanEnsureCE es c, Traversable f) => Maybe es -> f c -> CollectErrors es (f (EnsureNoCE es c)) Source #