Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Constrained.Spec.Tree
Contents
Documentation
Instances
Generic (BinTree a) Source # | |
Show a ⇒ Show (BinTree a) Source # | |
HasSpec a ⇒ HasGenHint (BinTree a) Source # | |
HasSpec a ⇒ HasSpec (BinTree a) Source # | |
Defined in Constrained.Spec.Tree Methods emptySpec ∷ TypeSpec (BinTree a) Source # combineSpec ∷ TypeSpec (BinTree a) → TypeSpec (BinTree a) → Specification (BinTree a) Source # genFromTypeSpec ∷ ∀ (m ∷ Type → Type). (HasCallStack, MonadGenError m) ⇒ TypeSpec (BinTree a) → GenT m (BinTree a) Source # conformsTo ∷ BinTree a → TypeSpec (BinTree a) → Bool Source # shrinkWithTypeSpec ∷ TypeSpec (BinTree a) → BinTree a → [BinTree a] Source # toPreds ∷ Term (BinTree a) → TypeSpec (BinTree a) → Pred Source # cardinalTypeSpec ∷ TypeSpec (BinTree a) → Specification Integer Source # cardinalTrueSpec ∷ Specification Integer Source # typeSpecHasError ∷ TypeSpec (BinTree a) → Maybe (NonEmpty String) Source # alternateShow ∷ TypeSpec (BinTree a) → BinaryShow Source # monadConformsTo ∷ BinTree a → TypeSpec (BinTree a) → Writer [String] Bool Source # typeSpecOpt ∷ TypeSpec (BinTree a) → [BinTree a] → Specification (BinTree a) Source # guardTypeSpec ∷ [String] → TypeSpec (BinTree a) → Specification (BinTree a) Source # prerequisites ∷ Evidence (Prerequisites (BinTree a)) Source # | |
Eq a ⇒ Eq (BinTree a) Source # | |
Ord a ⇒ Ord (BinTree a) Source # | |
Forallable (BinTree a) (BinTree a, a, BinTree a) Source # | |
Defined in Constrained.Spec.Tree Methods fromForAllSpec ∷ Specification (BinTree a, a, BinTree a) → Specification (BinTree a) Source # forAllToList ∷ BinTree a → [(BinTree a, a, BinTree a)] Source # | |
type Rep (BinTree a) Source # | |
Defined in Constrained.Spec.Tree type Rep (BinTree a) = D1 ('MetaData "BinTree" "Constrained.Spec.Tree" "constrained-generators-0.2.0.0-inplace" 'False) (C1 ('MetaCons "BinTip" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "BinNode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (BinTree a)) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (BinTree a))))) | |
type Hint (BinTree a) Source # | |
Defined in Constrained.Spec.Tree | |
type Prerequisites (BinTree a) Source # | |
Defined in Constrained.Spec.Tree | |
type TypeSpec (BinTree a) Source # | |
Defined in Constrained.Spec.Tree |
data TreeW (dom ∷ [Type]) (rng ∷ Type) where Source #
Constructors
RootLabelW ∷ HasSpec a ⇒ TreeW '[Tree a] a |
Instances
Logic TreeW Source # | |
Defined in Constrained.Spec.Tree Methods propagateTypeSpec ∷ ∀ (as ∷ [Type]) b a. (AppRequires TreeW as b, HasSpec a) ⇒ TreeW as b → ListCtx Value as (HOLE a) → TypeSpec b → [b] → Specification a Source # propagateMemberSpec ∷ ∀ (as ∷ [Type]) b a. (AppRequires TreeW as b, HasSpec a) ⇒ TreeW as b → ListCtx Value as (HOLE a) → NonEmpty b → Specification a Source # propagate ∷ ∀ (as ∷ [Type]) b a. (AppRequires TreeW as b, HasSpec a) ⇒ TreeW as b → ListCtx Value as (HOLE a) → Specification b → Specification a Source # rewriteRules ∷ ∀ (dom ∷ [Type]) rng. (TypeList dom, Typeable dom, HasSpec rng, All HasSpec dom) ⇒ TreeW dom rng → List Term dom → Evidence (AppRequires TreeW dom rng) → Maybe (Term rng) Source # mapTypeSpec ∷ (HasSpec a, HasSpec b) ⇒ TreeW '[a] b → TypeSpec a → Specification b Source # saturate ∷ ∀ (dom ∷ [Type]). TreeW dom Bool → List Term dom → [Pred] Source # | |
Semantics TreeW Source # | |
Syntax TreeW Source # | |
Show (TreeW d r) Source # | |
Eq (TreeW d r) Source # | |
Constructors
TreeSpec | |
Fields
|