| Copyright | (c) Grant Weyburne 2019 |
|---|---|
| License | BSD-3 |
| Maintainer | gbwey9@gmail.com |
| Safe Haskell | None |
| Language | Haskell2010 |
UtilP_TH
Description
Template Haskell methods for creating Refined and Refined3 refinement types
Synopsis
- 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))
- 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))
- refinedTH :: forall p i. (Show i, Lift i, RefinedC p i) => i -> Q (TExp (Refined p i))
- refinedTH' :: forall p i. (Show i, Lift i, RefinedC p i) => POpts -> i -> Q (TExp (Refined p i))
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)