constrained-generators-0.2.0.0: Framework for generating constrained random data using a subset of first order logic
Safe HaskellSafe-Inferred
LanguageHaskell2010

Constrained.Core

Synopsis

Documentation

data Var a Source #

Constructors

Var 

Fields

Instances

Instances details
Show (Var a) Source # 
Instance details

Defined in Constrained.Core

Methods

showsPrecIntVar a → ShowS #

showVar a → String #

showList ∷ [Var a] → ShowS #

Typeable a ⇒ Rename (Var a) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → Var a → Var a Source #

Eq (Var a) Source # 
Instance details

Defined in Constrained.Core

Methods

(==)Var a → Var a → Bool #

(/=)Var a → Var a → Bool #

Ord (Var a) Source # 
Instance details

Defined in Constrained.Core

Methods

compareVar a → Var a → Ordering #

(<)Var a → Var a → Bool #

(<=)Var a → Var a → Bool #

(>)Var a → Var a → Bool #

(>=)Var a → Var a → Bool #

maxVar a → Var a → Var a #

minVar a → Var a → Var a #

Pretty (Var a) Source # 
Instance details

Defined in Constrained.Syntax

Methods

prettyVar a → Doc ann Source #

prettyList ∷ [Var a] → Doc ann Source #

eqVar ∷ ∀ a a'. (Typeable a, Typeable a') ⇒ Var a → Var a' → Maybe (a :~: a') Source #

class Rename a where Source #

Methods

renameTypeable x ⇒ Var x → Var x → a → a Source #

Instances

Instances details
Rename Pred Source # 
Instance details

Defined in Constrained.Syntax

Methods

renameTypeable x ⇒ Var x → Var x → PredPred Source #

Rename Name Source # 
Instance details

Defined in Constrained.Syntax

Methods

renameTypeable x ⇒ Var x → Var x → NameName Source #

Rename () Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → () → () Source #

Rename (Binder a) Source # 
Instance details

Defined in Constrained.Syntax

Methods

renameTypeable x ⇒ Var x → Var x → Binder a → Binder a Source #

Rename (Term a) Source # 
Instance details

Defined in Constrained.Syntax

Methods

renameTypeable x ⇒ Var x → Var x → Term a → Term a Source #

Typeable a ⇒ Rename (Var a) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → Var a → Var a Source #

(Ord a, Rename a) ⇒ Rename (Set a) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → Set a → Set a Source #

(Functor t, Rename a) ⇒ Rename (t a) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → t a → t a Source #

Rename (f a) ⇒ Rename (Weighted f a) Source # 
Instance details

Defined in Constrained.Syntax

Methods

renameTypeable x ⇒ Var x → Var x → Weighted f a → Weighted f a Source #

(Rename a, Rename b) ⇒ Rename (a, b) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → (a, b) → (a, b) Source #

(∀ a. Rename (f a)) ⇒ Rename (List f as) Source # 
Instance details

Defined in Constrained.Core

Methods

renameTypeable x ⇒ Var x → Var x → List f as → List f as Source #

freshVarVar a → Set IntVar a Source #

freshen ∷ (Typeable a, Rename t) ⇒ Var a → t → Set Int → (Var a, t) Source #

data Value a where Source #

Constructors

ValueShow a ⇒ !a → Value a 

Instances

Instances details
Show (Value a) Source # 
Instance details

Defined in Constrained.Core

Methods

showsPrecIntValue a → ShowS #

showValue a → String #

showList ∷ [Value a] → ShowS #

Eq a ⇒ Eq (Value a) Source # 
Instance details

Defined in Constrained.Core

Methods

(==)Value a → Value a → Bool #

(/=)Value a → Value a → Bool #

Ord a ⇒ Ord (Value a) Source # 
Instance details

Defined in Constrained.Core

Methods

compareValue a → Value a → Ordering #

(<)Value a → Value a → Bool #

(<=)Value a → Value a → Bool #

(>)Value a → Value a → Bool #

(>=)Value a → Value a → Bool #

maxValue a → Value a → Value a #

minValue a → Value a → Value a #

unValueValue a → a Source #

data NonEmpty a #

Non-empty (and non-strict) list type.

Since: base-4.9.0.0

Constructors

a :| [a] infixr 5 

Instances

Instances details
Foldable NonEmpty

Since: base-4.9.0.0

Instance details

Defined in Data.Foldable

Methods

foldMonoid m ⇒ NonEmpty m → m #

foldMapMonoid m ⇒ (a → m) → NonEmpty a → m #

foldMap'Monoid m ⇒ (a → m) → NonEmpty a → m #

foldr ∷ (a → b → b) → b → NonEmpty a → b #

foldr' ∷ (a → b → b) → b → NonEmpty a → b #

foldl ∷ (b → a → b) → b → NonEmpty a → b #

foldl' ∷ (b → a → b) → b → NonEmpty a → b #

foldr1 ∷ (a → a → a) → NonEmpty a → a #

foldl1 ∷ (a → a → a) → NonEmpty a → a #

toListNonEmpty a → [a] #

nullNonEmpty a → Bool #

lengthNonEmpty a → Int #

elemEq a ⇒ a → NonEmpty a → Bool #

maximumOrd a ⇒ NonEmpty a → a #

minimumOrd a ⇒ NonEmpty a → a #

sumNum a ⇒ NonEmpty a → a #

productNum a ⇒ NonEmpty a → a #

Traversable NonEmpty

Since: base-4.9.0.0

Instance details

Defined in Data.Traversable

Methods

traverseApplicative f ⇒ (a → f b) → NonEmpty a → f (NonEmpty b) #

sequenceAApplicative f ⇒ NonEmpty (f a) → f (NonEmpty a) #

mapMMonad m ⇒ (a → m b) → NonEmpty a → m (NonEmpty b) #

sequenceMonad m ⇒ NonEmpty (m a) → m (NonEmpty a) #

Applicative NonEmpty

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

pure ∷ a → NonEmpty a #

(<*>)NonEmpty (a → b) → NonEmpty a → NonEmpty b #

liftA2 ∷ (a → b → c) → NonEmpty a → NonEmpty b → NonEmpty c #

(*>)NonEmpty a → NonEmpty b → NonEmpty b #

(<*)NonEmpty a → NonEmpty b → NonEmpty a #

Functor NonEmpty

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

fmap ∷ (a → b) → NonEmpty a → NonEmpty b #

(<$) ∷ a → NonEmpty b → NonEmpty a #

Monad NonEmpty

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

(>>=)NonEmpty a → (a → NonEmpty b) → NonEmpty b #

(>>)NonEmpty a → NonEmpty b → NonEmpty b #

return ∷ a → NonEmpty a #

NFData1 NonEmpty

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

liftRnf ∷ (a → ()) → NonEmpty a → () #

Generic1 NonEmpty 
Instance details

Defined in GHC.Generics

Associated Types

type Rep1 NonEmpty ∷ k → Type #

Methods

from1 ∷ ∀ (a ∷ k). NonEmpty a → Rep1 NonEmpty a #

to1 ∷ ∀ (a ∷ k). Rep1 NonEmpty a → NonEmpty a #

Lift a ⇒ Lift (NonEmpty a ∷ Type)

Since: template-haskell-2.15.0.0

Instance details

Defined in Language.Haskell.TH.Syntax

Methods

liftQuote m ⇒ NonEmpty a → m Exp #

liftTyped ∷ ∀ (m ∷ TypeType). Quote m ⇒ NonEmpty a → Code m (NonEmpty a) #

Arbitrary a ⇒ Arbitrary (NonEmpty a) Source # 
Instance details

Defined in Constrained.Core

Semigroup (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

(<>)NonEmpty a → NonEmpty a → NonEmpty a #

sconcatNonEmpty (NonEmpty a) → NonEmpty a #

stimesIntegral b ⇒ b → NonEmpty a → NonEmpty a #

Generic (NonEmpty a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (NonEmpty a) ∷ TypeType #

Methods

fromNonEmpty a → Rep (NonEmpty a) x #

toRep (NonEmpty a) x → NonEmpty a #

IsList (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.IsList

Associated Types

type Item (NonEmpty a) #

Methods

fromList ∷ [Item (NonEmpty a)] → NonEmpty a #

fromListNInt → [Item (NonEmpty a)] → NonEmpty a #

toListNonEmpty a → [Item (NonEmpty a)] #

Read a ⇒ Read (NonEmpty a)

Since: base-4.11.0.0

Instance details

Defined in GHC.Read

Show a ⇒ Show (NonEmpty a)

Since: base-4.11.0.0

Instance details

Defined in GHC.Show

Methods

showsPrecIntNonEmpty a → ShowS #

showNonEmpty a → String #

showList ∷ [NonEmpty a] → ShowS #

NFData a ⇒ NFData (NonEmpty a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnfNonEmpty a → () #

Eq a ⇒ Eq (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

(==)NonEmpty a → NonEmpty a → Bool #

(/=)NonEmpty a → NonEmpty a → Bool #

Ord a ⇒ Ord (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

compareNonEmpty a → NonEmpty a → Ordering #

(<)NonEmpty a → NonEmpty a → Bool #

(<=)NonEmpty a → NonEmpty a → Bool #

(>)NonEmpty a → NonEmpty a → Bool #

(>=)NonEmpty a → NonEmpty a → Bool #

maxNonEmpty a → NonEmpty a → NonEmpty a #

minNonEmpty a → NonEmpty a → NonEmpty a #

Pretty a ⇒ Pretty (NonEmpty a) 
Instance details

Defined in Prettyprinter.Internal

Methods

prettyNonEmpty a → Doc ann Source #

prettyList ∷ [NonEmpty a] → Doc ann Source #

type Rep1 NonEmpty

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep (NonEmpty a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Item (NonEmpty a) 
Instance details

Defined in GHC.IsList

type Item (NonEmpty a) = a

data Evidence c where Source #

Constructors

Evidence ∷ c ⇒ Evidence c 

Instances

Instances details
Typeable c ⇒ Show (Evidence c) Source # 
Instance details

Defined in Constrained.Core

Methods

showsPrecIntEvidence c → ShowS #

showEvidence c → String #

showList ∷ [Evidence c] → ShowS #

unionWithMaybe ∷ (a → a → a) → Maybe a → Maybe a → Maybe a Source #

Orphan instances

Arbitrary a ⇒ Arbitrary (NonEmpty a) Source # 
Instance details