Methods
hpure :: SListIN h xs => (forall (a :: k). f a) -> h f xshcpure :: AllN h c xs => proxy c -> (forall (a :: k). c a => f a) -> h f xsA variant of hpure that allows passing in a constrained argument.
Calling
hcpure f swheres :: h f xscausesfto be applied at all the types that are contained inxs. Therefore, the constraintchas to be satisfied for all elements ofxs, which is whatAllN h c xsstates.Instances:
hcpure, cpure_NP :: (All c xs ) => proxy c -> (forall a. c a => f a) -> NP f xs hcpure, cpure_POP :: (All2 c xss) => proxy c -> (forall a. c a => f a) -> POP f xss