rerefined-0.5.1: Refinement types, again
Safe HaskellSafe-Inferred
LanguageGHC2021

Rerefined.Refine.TH

Synopsis

Documentation

refineTH :: forall p a m. (Refine p a, Lift a, Quote m, MonadFail m) => a -> Code m (Refined p a) Source #

Refine a with predicate p at compile time via Template Haskell.

refine1TH :: forall p f a m. (Refine1 p f, Lift (f a), Quote m, MonadFail m) => f a -> Code m (Refined1 p f a) Source #

Refine f a with functor predicate p at compile time via Template Haskell.