Copyright | Copyright (C) 2015 Kyle Carter |
---|---|
License | BSD3 |
Maintainer | Kyle Carter <kylcarte@indiana.edu> |
Stability | experimental |
Portability | RankNTypes |
Safe Haskell | None |
Language | Haskell2010 |
Documentation
Witness p q (f (g a)) => Witness p q ((:.:) k l f g a) Source # | |
TestEquality l1 f => TestEquality1 l (l -> l1) ((:.:) l l1 f) Source # | |
TestEquality l f => TestEquality k ((:.:) k l f g) Source # | |
Show1 l f => Show1 k ((:.:) k l f g) Source # | |
Ord1 l f => Ord1 k ((:.:) k l f g) Source # | |
Eq1 l f => Eq1 k ((:.:) k l f g) Source # | |
Eq (f (g a)) => Eq ((:.:) k l f g a) Source # | |
Ord (f (g a)) => Ord ((:.:) k l f g a) Source # | |
Read (f (g a)) => Read ((:.:) k l f g a) Source # | |
Show (f (g a)) => Show ((:.:) k l f g a) Source # | |
type WitnessC p q ((:.:) k l f g a) Source # | |
Witness p q r => Witness p q (C k r a) Source # | |
Read r => Read1 k (C k r) Source # | |
Show r => Show1 k (C k r) Source # | |
Ord r => Ord1 k (C k r) Source # | |
Eq r => Eq1 k (C k r) Source # | |
Functor (C * r) Source # | |
Foldable (C * r) Source # | |
Traversable (C * r) Source # | |
Eq r => Eq (C k r a) Source # | |
Num r => Num (C k r a) Source # | |
Ord r => Ord (C k r a) Source # | |
Read r => Read (C k r a) Source # | |
Show r => Show (C k r a) Source # | |
type WitnessC p q (C k r a) Source # | |
Witness p q (f a b) => Witness p q (Flip k k1 f b a) Source # | |
TestEquality1 k1 k p => TestEquality k (Flip k k1 p b) Source # | |
Known k1 (p a) b => Known k (Flip k k1 p b) a Source # | |
Eq (p a b) => Eq (Flip k k1 p b a) Source # | |
Ord (p a b) => Ord (Flip k k1 p b a) Source # | |
Read (p a b) => Read (Flip k k1 p b a) Source # | |
Show (p a b) => Show (Flip k k1 p b a) Source # | |
type WitnessC p q (Flip k k1 f b a) Source # | |
type KnownC k (Flip k k1 p b) a Source # | |
flipTestEquality1 :: TestEquality (p c) => Flip p a c -> Flip p b c -> Maybe (a :~: b) Source #
Witness q r (p ((#) k l a b)) => Witness q r (Cur k l p a b) Source # | |
Known (k1, k) p ((#) k1 k a b) => Known k (Cur k1 k p a) b Source # | |
Eq (p ((#) k l a b)) => Eq (Cur k l p a b) Source # | |
Ord (p ((#) k l a b)) => Ord (Cur k l p a b) Source # | |
Read (p ((#) k l a b)) => Read (Cur k l p a b) Source # | |
Show (p ((#) k l a b)) => Show (Cur k l p a b) Source # | |
type WitnessC q r (Cur k l p a b) Source # | |
type KnownC k (Cur k1 k p a) b Source # | |
data Uncur p :: (k, l) -> * where Source #
(Witness r s (p a b), (~) (k, l) q ((#) k l a b)) => Witness r s (Uncur l k p q) Source # | |
Read2 l k p => Read1 (k, l) (Uncur l k p) Source # | |
(Known l (p a) b, (~) (k, l) q ((#) k l a b)) => Known (k, l) (Uncur l k p) q Source # | |
Eq (p (Fst k l x) (Snd k l x)) => Eq (Uncur l k p x) Source # | |
Ord (p (Fst k l x) (Snd k l x)) => Ord (Uncur l k p x) Source # | |
((~) (k, l) x ((#) k l a b), Read (p a b)) => Read (Uncur l k p x) Source # | |
Show (p (Fst k l x) (Snd k l x)) => Show (Uncur l k p x) Source # | |
type WitnessC r s (Uncur l k p q) Source # | |
type KnownC (k, l) (Uncur l k p) q Source # | |
Witness q r (p ((,,) k l m a b c)) => Witness q r (Cur3 k l m p a b c) Source # | |
Known (k1, l, k) p ((,,) k1 l k a b c) => Known k (Cur3 k1 l k p a b) c Source # | |
Eq (p ((,,) k l m a b c)) => Eq (Cur3 k l m p a b c) Source # | |
Ord (p ((,,) k l m a b c)) => Ord (Cur3 k l m p a b c) Source # | |
Read (p ((,,) k l m a b c)) => Read (Cur3 k l m p a b c) Source # | |
Show (p ((,,) k l m a b c)) => Show (Cur3 k l m p a b c) Source # | |
type WitnessC q r (Cur3 k l m p a b c) Source # | |
type KnownC k (Cur3 k1 l k p a b) c Source # | |
data Uncur3 p :: (k, l, m) -> * where Source #
(Witness r s (p a b c), (~) (k, l, m) q ((,,) k l m a b c)) => Witness r s (Uncur3 m l k p q) Source # | |
Read3 m l k p => Read1 (k, l, m) (Uncur3 m l k p) Source # | |
(Known m (p a b) c, (~) (k, l, m) q ((,,) k l m a b c)) => Known (k, l, m) (Uncur3 m l k p) q Source # | |
Eq (p (Fst3 k l m x) (Snd3 k l m x) (Thd3 k l m x)) => Eq (Uncur3 m l k p x) Source # | |
Ord (p (Fst3 k l m x) (Snd3 k l m x) (Thd3 k l m x)) => Ord (Uncur3 m l k p x) Source # | |
((~) (k, l, m) x ((,,) k l m a b c), Read (p a b c)) => Read (Uncur3 m l k p x) Source # | |
Show (p (Fst3 k l m x) (Snd3 k l m x) (Thd3 k l m x)) => Show (Uncur3 m l k p x) Source # | |
type WitnessC r s (Uncur3 m l k p q) Source # | |
type KnownC (k, l, m) (Uncur3 m l k p) q Source # | |
mapUncur3 :: (p (Fst3 x) (Snd3 x) (Thd3 x) -> q d e f) -> Uncur3 p x -> Uncur3 q '(d, e, f) Source #
Witness p q (f a a) => Witness p q (Join k f a) Source # | |
Show2 k k f => Show1 k (Join k f) Source # | |
Ord2 k k f => Ord1 k (Join k f) Source # | |
Eq2 k k f => Eq1 k (Join k f) Source # | |
Known k (f a) a => Known k (Join k f) a Source # | |
Eq (f a a) => Eq (Join k f a) Source # | |
Ord (f a a) => Ord (Join k f a) Source # | |
Read (f a a) => Read (Join k f a) Source # | |
Show (f a a) => Show (Join k f a) Source # | |
type WitnessC p q (Join k f a) Source # | |
type KnownC k (Join k f) a Source # | |