predicate-typed-0.1.0.2: Predicates, Refinement types and Dsl

Copyright(c) Grant Weyburne 2019
LicenseBSD-3
Maintainergbwey9@gmail.com
Safe HaskellNone
LanguageHaskell2010

UtilP_TH

Description

Template Haskell methods for creating Refined and Refined3 refinement types

Synopsis

Documentation

refined3TH :: forall ip op fmt i. (Show i, Show (PP ip i), Lift i, Lift (PP ip i), Refined3C ip op fmt i) => i -> Q (TExp (Refined3 ip op fmt i)) Source #

creates a Refined3 refinement type with terse output

refined3TH' :: forall ip op fmt i. (Show i, Show (PP ip i), Lift i, Lift (PP ip i), Refined3C ip op fmt i) => POpts -> i -> Q (TExp (Refined3 ip op fmt i)) Source #

creates a Refined3 refinement type and allows you to specify options (ol to just get a summary / o2 for full detail and colors)

refinedTH :: forall p i. (Show i, Lift i, RefinedC p i) => i -> Q (TExp (Refined p i)) Source #

creates a Refined refinement type with terse output

refinedTH' :: forall p i. (Show i, Lift i, RefinedC p i) => POpts -> i -> Q (TExp (Refined p i)) Source #

creates a Refined refinement type and allows you to specify options