Safe Haskell | None |
---|
AOP.Internal.PolyTypeable
Documentation
data TVar a
Instances
(HIndex a g0 n, MyTypeable'' n g0 gout (TVar a)) => MyTypeable' g0 gout (TVar a) | |
HLen g0 n1 => MyTypeable'' Z g0 (HCons a g0) (TVar a) | |
Nat n => MyTypeable'' (S n) g0 g0 (TVar a) |
data TCon0 c
Instances
Typeable a => MyTypeable' g0 g0 (TCon0 a) | |
LeastGen' (TCon0 a) (TCon0 a) a s0 s0 |
data TCon1 c a1
Instances
(Typeable1 c, MyTypeable' g0 g1 a1) => MyTypeable' g0 g1 (TCon1 c a1) | |
(LeastGen' a1 b1 c1 s0 s1, ~ * (d c1) c) => LeastGen' (TCon1 d a1) (TCon1 d b1) c s0 s1 |
data TCon2 c a1 a2
Instances
(Typeable2 c, MyTypeable' g0 g a1, MyTypeable' g g2 a2) => MyTypeable' g0 g2 (TCon2 c a1 a2) | |
(LeastGen' a1 b1 c1 s0 s1, LeastGen' a2 b2 c2 s1 s2, ~ * (d c1 c2) c) => LeastGen' (TCon2 d a1 a2) (TCon2 d b1 b2) c s0 s2 |
data TCon3 c a1 a2 a3
Instances
(Typeable3 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3) => MyTypeable' g0 g3 (TCon3 c a1 a2 a3) | |
(LeastGen' a1 b1 c1 s0 s1, LeastGen' a2 b2 c2 s1 s2, LeastGen' a3 b3 c3 s2 s3, ~ * (d c1 c2 c3) c) => LeastGen' (TCon3 d a1 a2 a3) (TCon3 d b1 b2 b3) c s0 s3 |
data TCon4 c a1 a2 a3 a4
Instances
(Typeable4 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3, MyTypeable' g3 g4 a4) => MyTypeable' g0 g4 (TCon4 c a1 a2 a3 a4) | |
(LeastGen' a1 b1 c1 s0 s1, LeastGen' a2 b2 c2 s1 s2, LeastGen' a3 b3 c3 s2 s3, LeastGen' a4 b4 c4 s3 s4, ~ * (d c1 c2 c3 c4) c) => LeastGen' (TCon4 d a1 a2 a3 a4) (TCon4 d b1 b2 b3 b4) c s0 s4 |
data TCon5 c a1 a2 a3 a4 a5
Instances
(Typeable5 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3, MyTypeable' g3 g4 a4, MyTypeable' g4 g5 a5) => MyTypeable' g0 g5 (TCon5 c a1 a2 a3 a4 a5) | |
(LeastGen' a1 b1 c1 s0 s1, LeastGen' a2 b2 c2 s1 s2, LeastGen' a3 b3 c3 s2 s3, LeastGen' a4 b4 c4 s3 s4, LeastGen' a5 b5 c5 s4 s5, ~ * (d c1 c2 c3 c4 c5) c) => LeastGen' (TCon5 d a1 a2 a3 a4 a5) (TCon5 d b1 b2 b3 b4 b5) c s0 s5 |
class Analyze a b | a -> b
Instances
~ * r (TCon0 Bool) => Analyze Bool r | |
~ * r (TCon0 Char) => Analyze Char r | |
~ * r (TCon0 Double) => Analyze Double r | |
~ * r (TCon0 Float) => Analyze Float r | |
~ * r (TCon0 Int) => Analyze Int r | |
~ * r (TCon0 Int8) => Analyze Int8 r | |
~ * r (TCon0 Int16) => Analyze Int16 r | |
~ * r (TCon0 Int32) => Analyze Int32 r | |
~ * r (TCon0 Int64) => Analyze Int64 r | |
~ * r (TCon0 Integer) => Analyze Integer r | |
~ * r (TCon0 Ordering) => Analyze Ordering r | |
~ * r (TCon0 Word8) => Analyze Word8 r | |
~ * r (TCon0 Word16) => Analyze Word16 r | |
~ * r (TCon0 Word32) => Analyze Word32 r | |
~ * r (TCon0 Word64) => Analyze Word64 r | |
~ * r (TCon0 ()) => Analyze () r | |
~ * r (TVar a) => Analyze a r | |
(Analyze a1 ra1, ~ * r (TCon1 c ra1)) => Analyze (c a1) r | |
(Analyze a1 ra1, Analyze a2 ra2, ~ * r (TCon2 c ra1 ra2)) => Analyze (c a1 a2) r | |
(Analyze a1 ra1, Analyze a2 ra2, Analyze a3 ra3, ~ * r (TCon3 c ra1 ra2 ra3)) => Analyze (c a1 a2 a3) r | |
(Analyze a1 ra1, Analyze a2 ra2, Analyze a3 ra3, Analyze a4 ra4, ~ * r (TCon4 c ra1 ra2 ra3 ra4)) => Analyze (c a1 a2 a3 a4) r | |
(Analyze a1 ra1, Analyze a2 ra2, Analyze a3 ra3, Analyze a4 ra4, Analyze a5 ra5, ~ * r (TCon5 c ra1 ra2 ra3 ra4 ra5)) => Analyze (c a1 a2 a3 a4 a5) r |
class PolyTypeable a where
Methods
polyTypeOf :: a -> TypeRep
Instances
(Analyze a result, MyTypeable' HNil gout result) => PolyTypeable a | |
PolyTypeable Unique |
class MyTypeable' g0 gout classification | g0 classification -> gout where
Methods
mytypof' :: g0 -> classification -> (TypeRep, gout)
Instances
(HIndex a g0 n, MyTypeable'' n g0 gout (TVar a)) => MyTypeable' g0 gout (TVar a) | |
Typeable a => MyTypeable' g0 g0 (TCon0 a) | |
(Typeable1 c, MyTypeable' g0 g1 a1) => MyTypeable' g0 g1 (TCon1 c a1) | |
(Typeable2 c, MyTypeable' g0 g a1, MyTypeable' g g2 a2) => MyTypeable' g0 g2 (TCon2 c a1 a2) | |
(Typeable3 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3) => MyTypeable' g0 g3 (TCon3 c a1 a2 a3) | |
(Typeable4 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3, MyTypeable' g3 g4 a4) => MyTypeable' g0 g4 (TCon4 c a1 a2 a3 a4) | |
(Typeable5 c, MyTypeable' g0 g1 a1, MyTypeable' g1 g2 a2, MyTypeable' g2 g3 a3, MyTypeable' g3 g4 a4, MyTypeable' g4 g5 a5) => MyTypeable' g0 g5 (TCon5 c a1 a2 a3 a4 a5) |
class MyTypeable'' n g0 gout classification | n g0 classification -> gout where
Methods
mytypof'' :: n -> g0 -> classification -> (TypeRep, gout)
Instances
HLen g0 n1 => MyTypeable'' Z g0 (HCons a g0) (TVar a) | |
Nat n => MyTypeable'' (S n) g0 g0 (TVar a) |
class HIndex' f x l n | f x l -> n
data Z
data S a
class TypeEq' q x y b | q x y -> b