h&      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~2009-2015 Edward Kmett, 2012 Elliott Hird, 2004 Oleg Kiselyov and Chung-chieh ShanBSD3Edward Kmett  experimental non-portable Trustworthy016V  reflection2n - 1  reflection2n + 1 reflection2n reflection0 reflectionThis is a version of % that allows for only a single value.!This is easier to work with than  and permits extended defaulting, but it only offers a single reflected value of a given type at a time. reflection:Recover the value of a given type previously encoded with . reflectionRecover a value inside a . context, given a proxy for its reified type. reflection6Reify a value at the type level, to be recovered with . reflectionThis upgraded version of  can be used to generate a " suitable for use with other APIs.Attemping to pass a negative # as an argument will result in an  Underflow exception.Available only on GHC 7.8+import GHC.TypeLitsreifyNat 4 natVal4reifyNat 4 reflect4 reflectionThis upgraded version of  can be used to generate a " suitable for use with other APIs.Available only on GHC 7.8+import GHC.TypeLitsreifySymbol "hello" symbolVal"hello"reifySymbol "hello" reflect"hello" reflection4Reify a value into an instance to be recovered with . You should only  a single value for each type. If multiple instances are in scope, then the behavior is implementation defined. reflectionThis can be used to generate a template haskell splice for a type level version of a given .This does not use GHC TypeLits, instead it generates a numeric type by hand similar to the ones used in the "Functional Pearl: Implicit Configurations" paper by Oleg Kiselyov and Chung-Chieh Shan.instance Num (Q Exp)) provided in this package allows writing $(3) instead of $(int 3). Sometimes the two will produce the same representation (if compiled without the -DUSE_TYPE_LITS preprocessor directive). reflection This is a restricted version of  that can only generate natural numbers. Attempting to generate a negative number results in a compile time error. Also the resulting sequence will consist entirely of Z, D, and SD constructors representing the number in zeroless binary. reflection%Reify a value at the type level in a *-compatible fashion, to be recovered with .4This can be necessary to work around the changes to  Data.Typeable in GHC HEAD. reflectionFold a value using its % instance using explicitly provided  operations. This is like fold where the $ instance can be manually specified.    D fold  foldBy (++) [] ["hello","world"] "helloworld" reflectionFold a value using its % instance using explicitly provided  operations. This is like  where the $ instance can be manually specified.    D  (foldMapBy (+) 0 length ["hello","world"]10 reflectionTraverse a container using its % instance using explicitly provided  operations. This is like  where the $ instance can be manually specified.  reflectionSequence a container using its % instance using explicitly provided  operations. This is like  where the $ instance can be manually specified.! reflectionThis permits the use of $(5) as an expression splice, which stands for Proxy :: Proxy $(5)" reflection.This permits the use of $(5) as a type splice.!  !         !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~'reflection-2.1.7-Lpr6AplddDUL9MCk5bx0r7Data.ReflectionReflectedApplicativeReifiedApplicative reifiedPure reifiedApReflectedMonoid ReifiedMonoidreifiedMappend reifiedMemptyPDSDDZGivengivenReifiesreflectreifyreifyNat reifySymbolgiveintnat reifyTypeable reifyMonoidfoldBy foldMapByreifyApplicative traverseBy sequenceBy$fNumExp $fNumType $fFractionalQ$fNumQ$fReifiesSymboln[]$fReifiesNaturalnInteger$fReifiesTYPEZInt$fReifiesTYPEDInt$fReifiesTYPESDInt$fReifiesTYPEPDInt $fBTYPET0 $fBTYPET1 $fBTYPET2 $fBTYPET3 $fBTYPET4 $fBTYPET5 $fBTYPET6 $fBTYPET7 $fBTYPET8 $fBTYPET9 $fBTYPET10 $fBTYPET11 $fBTYPET12 $fBTYPET13 $fBTYPET14 $fBTYPET15 $fBTYPET16 $fBTYPET17 $fBTYPET18 $fBTYPET19 $fBTYPET20 $fBTYPET21 $fBTYPET22 $fBTYPET23 $fBTYPET24 $fBTYPET25 $fBTYPET26 $fBTYPET27 $fBTYPET28 $fBTYPET29 $fBTYPET30 $fBTYPET31 $fBTYPET32 $fBTYPET33 $fBTYPET34 $fBTYPET35 $fBTYPET36 $fBTYPET37 $fBTYPET38 $fBTYPET39 $fBTYPET40 $fBTYPET41 $fBTYPET42 $fBTYPET43 $fBTYPET44 $fBTYPET45 $fBTYPET46 $fBTYPET47 $fBTYPET48 $fBTYPET49 $fBTYPET50 $fBTYPET51 $fBTYPET52 $fBTYPET53 $fBTYPET54 $fBTYPET55 $fBTYPET56 $fBTYPET57 $fBTYPET58 $fBTYPET59 $fBTYPET60 $fBTYPET61 $fBTYPET62 $fBTYPET63 $fBTYPET64 $fBTYPET65 $fBTYPET66 $fBTYPET67 $fBTYPET68 $fBTYPET69 $fBTYPET70 $fBTYPET71 $fBTYPET72 $fBTYPET73 $fBTYPET74 $fBTYPET75 $fBTYPET76 $fBTYPET77 $fBTYPET78 $fBTYPET79 $fBTYPET80 $fBTYPET81 $fBTYPET82 $fBTYPET83 $fBTYPET84 $fBTYPET85 $fBTYPET86 $fBTYPET87 $fBTYPET88 $fBTYPET89 $fBTYPET90 $fBTYPET91 $fBTYPET92 $fBTYPET93 $fBTYPET94 $fBTYPET95 $fBTYPET96 $fBTYPET97 $fBTYPET98 $fBTYPET99 $fBTYPET100 $fBTYPET101 $fBTYPET102 $fBTYPET103 $fBTYPET104 $fBTYPET105 $fBTYPET106 $fBTYPET107 $fBTYPET108 $fBTYPET109 $fBTYPET110 $fBTYPET111 $fBTYPET112 $fBTYPET113 $fBTYPET114 $fBTYPET115 $fBTYPET116 $fBTYPET117 $fBTYPET118 $fBTYPET119 $fBTYPET120 $fBTYPET121 $fBTYPET122 $fBTYPET123 $fBTYPET124 $fBTYPET125 $fBTYPET126 $fBTYPET127 $fBTYPET128 $fBTYPET129 $fBTYPET130 $fBTYPET131 $fBTYPET132 $fBTYPET133 $fBTYPET134 $fBTYPET135 $fBTYPET136 $fBTYPET137 $fBTYPET138 $fBTYPET139 $fBTYPET140 $fBTYPET141 $fBTYPET142 $fBTYPET143 $fBTYPET144 $fBTYPET145 $fBTYPET146 $fBTYPET147 $fBTYPET148 $fBTYPET149 $fBTYPET150 $fBTYPET151 $fBTYPET152 $fBTYPET153 $fBTYPET154 $fBTYPET155 $fBTYPET156 $fBTYPET157 $fBTYPET158 $fBTYPET159 $fBTYPET160 $fBTYPET161 $fBTYPET162 $fBTYPET163 $fBTYPET164 $fBTYPET165 $fBTYPET166 $fBTYPET167 $fBTYPET168 $fBTYPET169 $fBTYPET170 $fBTYPET171 $fBTYPET172 $fBTYPET173 $fBTYPET174 $fBTYPET175 $fBTYPET176 $fBTYPET177 $fBTYPET178 $fBTYPET179 $fBTYPET180 $fBTYPET181 $fBTYPET182 $fBTYPET183 $fBTYPET184 $fBTYPET185 $fBTYPET186 $fBTYPET187 $fBTYPET188 $fBTYPET189 $fBTYPET190 $fBTYPET191 $fBTYPET192 $fBTYPET193 $fBTYPET194 $fBTYPET195 $fBTYPET196 $fBTYPET197 $fBTYPET198 $fBTYPET199 $fBTYPET200 $fBTYPET201 $fBTYPET202 $fBTYPET203 $fBTYPET204 $fBTYPET205 $fBTYPET206 $fBTYPET207 $fBTYPET208 $fBTYPET209 $fBTYPET210 $fBTYPET211 $fBTYPET212 $fBTYPET213 $fBTYPET214 $fBTYPET215 $fBTYPET216 $fBTYPET217 $fBTYPET218 $fBTYPET219 $fBTYPET220 $fBTYPET221 $fBTYPET222 $fBTYPET223 $fBTYPET224 $fBTYPET225 $fBTYPET226 $fBTYPET227 $fBTYPET228 $fBTYPET229 $fBTYPET230 $fBTYPET231 $fBTYPET232 $fBTYPET233 $fBTYPET234 $fBTYPET235 $fBTYPET236 $fBTYPET237 $fBTYPET238 $fBTYPET239 $fBTYPET240 $fBTYPET241 $fBTYPET242 $fBTYPET243 $fBTYPET244 $fBTYPET245 $fBTYPET246 $fBTYPET247 $fBTYPET248 $fBTYPET249 $fBTYPET250 $fBTYPET251 $fBTYPET252 $fBTYPET253 $fBTYPET254 $fBTYPET255$fReifiesTYPEStablea$fMonoidReflectedMonoid$fSemigroupReflectedMonoid!$fApplicativeReflectedApplicative$fFunctorReflectedApplicativebase GHC.TypeNatsKnownNat ghc-bignumGHC.Num.IntegerInteger GHC.TypeLits KnownSymbolData.Typeable.InternalTypeable Data.FoldableFoldableGHC.BaseMonoidmappendmemptyfoldMapData.Traversable Traversable Applicativetraversesequence