-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Mapping of Proxy Types -- -- A small collection of functions to map Proxy types @package proxy-mapping @version 0.1.0.1 -- | This module provides functions to map Proxy types -- --
-- p1 :: Proxy (Either Int Bool) -- p1 = Proxy -- -- p2 = proxy1of2 p1 -- -- ghci> :t p2 -- p2 :: Proxy Int ---- -- A toy example with a class that creates Strings from Proxy types: -- --
-- class FromProxy t where -- createString :: Proxy t -> String -- -- instance FromProxy Int where -- createString _ = "Int" -- -- instance FromProxy Bool where -- createString _ = "Bool" -- -- instance (FromProxy a, FromProxy b) => FromProxy (Either a b) where -- createString p = "Either " ++ proxy1of2 p ++ " " ++ proxy2of2 p -- -- instance (FromProxy a, FromProxy b) => FromProxy ((->) a b) where -- createString p = createString (proxy1of2 p) ++ " -> " ++ createString (proxy2of2 p) -- -- ghci> createString (Proxy :: Proxy (Either Int Bool)) -- "Either Int Bool" -- -- ghci> createString (Proxy :: Proxy (Int -> Bool -> Either Int Bool)) -- "Int -> Bool -> Either Int Bool" ---- -- A toy example where an Integer is computed from a Proxy type: -- --
-- {-# Language DataKinds #-}
-- {-# Language KindSignatures #-}
-- import GHC.TypeLits
-- import Data.Kind (Type)
-- import Data.Proxy
-- import Data.Proxy.Mapping
--
-- class Compute t where
-- compute :: Proxy t -> Integer
--
-- data Number (n :: Nat)
-- data Add a b
-- data Apply (f :: Type -> Type) (a :: Type)
--
-- instance KnownNat n => Compute (Number n) where
-- compute p = natVal (proxy1of1 p)
--
-- instance (Compute a, Compute b) => Compute (Add a b) where
-- compute p = (compute $ proxy1of2 p) + (compute $ proxy2of2 p)
--
-- instance (Compute a, Compute (f a)) => Compute (Apply f a) where
-- compute p = compute (proxyApply (proxy1of2 p) (proxy2of2 p))
--
--
-- -- ghci> compute (Proxy :: Proxy (Apply (Add (Number 1)) (Number 2))) -- 3 --module Data.Proxy.Mapping -- | Mapping to the head of the type list (x) proxyHead :: Proxy (x : xs) -> Proxy x -- | Mapping to the tail of the type list (xs) proxyTail :: Proxy (x : xs) -> Proxy xs -- | Applying a type constructor to a type proxyApply :: Proxy f -> Proxy a -> Proxy (f a) -- | Mapping to the successor of a Nat proxySucc :: Proxy n -> Proxy (n + 1) -- | Mapping to the predecessor of a Nat proxyPred :: (1 <= n) => Proxy n -> Proxy (n - 1) -- | Mapping to the type constructor (t) of a type with 1 parameter proxy0of1 :: Proxy (t a) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 1 parameter proxy1of1 :: Proxy (t a) -> Proxy a -- | Mapping to the type constructor (t) of a type with 2 parameters proxy0of2 :: Proxy (t a b) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 2 parameters proxy1of2 :: Proxy (t a b) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 2 parameters proxy2of2 :: Proxy (t a b) -> Proxy b -- | Mapping to the type constructor (t) of a type with 3 parameters proxy0of3 :: Proxy (t a b c) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 3 parameters proxy1of3 :: Proxy (t a b c) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 3 parameters proxy2of3 :: Proxy (t a b c) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 3 parameters proxy3of3 :: Proxy (t a b c) -> Proxy c -- | Mapping to the type constructor (t) of a type with 4 parameters proxy0of4 :: Proxy (t a b c d) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 4 parameters proxy1of4 :: Proxy (t a b c d) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 4 parameters proxy2of4 :: Proxy (t a b c d) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 4 parameters proxy3of4 :: Proxy (t a b c d) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 4 parameters proxy4of4 :: Proxy (t a b c d) -> Proxy d -- | Mapping to the type constructor (t) of a type with 5 parameters proxy0of5 :: Proxy (t a b c d e) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 5 parameters proxy1of5 :: Proxy (t a b c d e) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 5 parameters proxy2of5 :: Proxy (t a b c d e) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 5 parameters proxy3of5 :: Proxy (t a b c d e) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 5 parameters proxy4of5 :: Proxy (t a b c d e) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 5 parameters proxy5of5 :: Proxy (t a b c d e) -> Proxy e -- | Mapping to the type constructor (t) of a type with 6 parameters proxy0of6 :: Proxy (t a b c d e f) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 6 parameters proxy1of6 :: Proxy (t a b c d e f) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 6 parameters proxy2of6 :: Proxy (t a b c d e f) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 6 parameters proxy3of6 :: Proxy (t a b c d e f) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 6 parameters proxy4of6 :: Proxy (t a b c d e f) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 6 parameters proxy5of6 :: Proxy (t a b c d e f) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 6 parameters proxy6of6 :: Proxy (t a b c d e f) -> Proxy f -- | Mapping to the type constructor (t) of a type with 7 parameters proxy0of7 :: Proxy (t a b c d e f g) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 7 parameters proxy1of7 :: Proxy (t a b c d e f g) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 7 parameters proxy2of7 :: Proxy (t a b c d e f g) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 7 parameters proxy3of7 :: Proxy (t a b c d e f g) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 7 parameters proxy4of7 :: Proxy (t a b c d e f g) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 7 parameters proxy5of7 :: Proxy (t a b c d e f g) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 7 parameters proxy6of7 :: Proxy (t a b c d e f g) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 7 parameters proxy7of7 :: Proxy (t a b c d e f g) -> Proxy g -- | Mapping to the type constructor (t) of a type with 8 parameters proxy0of8 :: Proxy (t a b c d e f g h) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 8 parameters proxy1of8 :: Proxy (t a b c d e f g h) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 8 parameters proxy2of8 :: Proxy (t a b c d e f g h) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 8 parameters proxy3of8 :: Proxy (t a b c d e f g h) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 8 parameters proxy4of8 :: Proxy (t a b c d e f g h) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 8 parameters proxy5of8 :: Proxy (t a b c d e f g h) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 8 parameters proxy6of8 :: Proxy (t a b c d e f g h) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 8 parameters proxy7of8 :: Proxy (t a b c d e f g h) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 8 parameters proxy8of8 :: Proxy (t a b c d e f g h) -> Proxy h -- | Mapping to the type constructor (t) of a type with 9 parameters proxy0of9 :: Proxy (t a b c d e f g h i) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 9 parameters proxy1of9 :: Proxy (t a b c d e f g h i) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 9 parameters proxy2of9 :: Proxy (t a b c d e f g h i) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 9 parameters proxy3of9 :: Proxy (t a b c d e f g h i) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 9 parameters proxy4of9 :: Proxy (t a b c d e f g h i) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 9 parameters proxy5of9 :: Proxy (t a b c d e f g h i) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 9 parameters proxy6of9 :: Proxy (t a b c d e f g h i) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 9 parameters proxy7of9 :: Proxy (t a b c d e f g h i) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 9 parameters proxy8of9 :: Proxy (t a b c d e f g h i) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 9 parameters proxy9of9 :: Proxy (t a b c d e f g h i) -> Proxy i -- | Mapping to the type constructor (t) of a type with 10 parameters proxy0of10 :: Proxy (t a b c d e f g h i j) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 10 parameters proxy1of10 :: Proxy (t a b c d e f g h i j) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 10 parameters proxy2of10 :: Proxy (t a b c d e f g h i j) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 10 parameters proxy3of10 :: Proxy (t a b c d e f g h i j) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 10 parameters proxy4of10 :: Proxy (t a b c d e f g h i j) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 10 parameters proxy5of10 :: Proxy (t a b c d e f g h i j) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 10 parameters proxy6of10 :: Proxy (t a b c d e f g h i j) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 10 parameters proxy7of10 :: Proxy (t a b c d e f g h i j) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 10 parameters proxy8of10 :: Proxy (t a b c d e f g h i j) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 10 parameters proxy9of10 :: Proxy (t a b c d e f g h i j) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 10 parameters proxy10of10 :: Proxy (t a b c d e f g h i j) -> Proxy j -- | Mapping to the type constructor (t) of a type with 11 parameters proxy0of11 :: Proxy (t a b c d e f g h i j k) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 11 parameters proxy1of11 :: Proxy (t a b c d e f g h i j k) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 11 parameters proxy2of11 :: Proxy (t a b c d e f g h i j k) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 11 parameters proxy3of11 :: Proxy (t a b c d e f g h i j k) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 11 parameters proxy4of11 :: Proxy (t a b c d e f g h i j k) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 11 parameters proxy5of11 :: Proxy (t a b c d e f g h i j k) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 11 parameters proxy6of11 :: Proxy (t a b c d e f g h i j k) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 11 parameters proxy7of11 :: Proxy (t a b c d e f g h i j k) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 11 parameters proxy8of11 :: Proxy (t a b c d e f g h i j k) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 11 parameters proxy9of11 :: Proxy (t a b c d e f g h i j k) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 11 parameters proxy10of11 :: Proxy (t a b c d e f g h i j k) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 11 parameters proxy11of11 :: Proxy (t a b c d e f g h i j k) -> Proxy k -- | Mapping to the type constructor (t) of a type with 12 parameters proxy0of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 12 parameters proxy1of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 12 parameters proxy2of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 12 parameters proxy3of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 12 parameters proxy4of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 12 parameters proxy5of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 12 parameters proxy6of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 12 parameters proxy7of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 12 parameters proxy8of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 12 parameters proxy9of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 12 parameters proxy10of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 12 parameters proxy11of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy k -- | Mapping to the 12th type parameter (l) of a type with 12 parameters proxy12of12 :: Proxy (t a b c d e f g h i j k l) -> Proxy l -- | Mapping to the type constructor (t) of a type with 13 parameters proxy0of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 13 parameters proxy1of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 13 parameters proxy2of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 13 parameters proxy3of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 13 parameters proxy4of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 13 parameters proxy5of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 13 parameters proxy6of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 13 parameters proxy7of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 13 parameters proxy8of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 13 parameters proxy9of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 13 parameters proxy10of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 13 parameters proxy11of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy k -- | Mapping to the 12th type parameter (l) of a type with 13 parameters proxy12of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy l -- | Mapping to the 13th type parameter (m) of a type with 13 parameters proxy13of13 :: Proxy (t a b c d e f g h i j k l m) -> Proxy m -- | Mapping to the type constructor (t) of a type with 14 parameters proxy0of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 14 parameters proxy1of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 14 parameters proxy2of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 14 parameters proxy3of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 14 parameters proxy4of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 14 parameters proxy5of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 14 parameters proxy6of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 14 parameters proxy7of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 14 parameters proxy8of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 14 parameters proxy9of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 14 parameters proxy10of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 14 parameters proxy11of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy k -- | Mapping to the 12th type parameter (l) of a type with 14 parameters proxy12of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy l -- | Mapping to the 13th type parameter (m) of a type with 14 parameters proxy13of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy m -- | Mapping to the 14th type parameter (n) of a type with 14 parameters proxy14of14 :: Proxy (t a b c d e f g h i j k l m n) -> Proxy n -- | Mapping to the type constructor (t) of a type with 15 parameters proxy0of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 15 parameters proxy1of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 15 parameters proxy2of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 15 parameters proxy3of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 15 parameters proxy4of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 15 parameters proxy5of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 15 parameters proxy6of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 15 parameters proxy7of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 15 parameters proxy8of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 15 parameters proxy9of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 15 parameters proxy10of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 15 parameters proxy11of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy k -- | Mapping to the 12th type parameter (l) of a type with 15 parameters proxy12of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy l -- | Mapping to the 13th type parameter (m) of a type with 15 parameters proxy13of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy m -- | Mapping to the 14th type parameter (n) of a type with 15 parameters proxy14of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy n -- | Mapping to the 15th type parameter (o) of a type with 15 parameters proxy15of15 :: Proxy (t a b c d e f g h i j k l m n o) -> Proxy o -- | Mapping to the type constructor (t) of a type with 16 parameters proxy0of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy t -- | Mapping to the 1st type parameter (a) of a type with 16 parameters proxy1of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy a -- | Mapping to the 2nd type parameter (b) of a type with 16 parameters proxy2of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy b -- | Mapping to the 3rd type parameter (c) of a type with 16 parameters proxy3of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy c -- | Mapping to the 4th type parameter (d) of a type with 16 parameters proxy4of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy d -- | Mapping to the 5th type parameter (e) of a type with 16 parameters proxy5of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy e -- | Mapping to the 6th type parameter (f) of a type with 16 parameters proxy6of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy f -- | Mapping to the 7th type parameter (g) of a type with 16 parameters proxy7of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy g -- | Mapping to the 8th type parameter (h) of a type with 16 parameters proxy8of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy h -- | Mapping to the 9th type parameter (i) of a type with 16 parameters proxy9of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy i -- | Mapping to the 10th type parameter (j) of a type with 16 parameters proxy10of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy j -- | Mapping to the 11th type parameter (k) of a type with 16 parameters proxy11of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy k -- | Mapping to the 12th type parameter (l) of a type with 16 parameters proxy12of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy l -- | Mapping to the 13th type parameter (m) of a type with 16 parameters proxy13of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy m -- | Mapping to the 14th type parameter (n) of a type with 16 parameters proxy14of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy n -- | Mapping to the 15th type parameter (o) of a type with 16 parameters proxy15of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy o -- | Mapping to the 16th type parameter (p) of a type with 16 parameters proxy16of16 :: Proxy (t a b c d e f g h i j k l m n o p) -> Proxy p