7/      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None!"2346=JKM The universal class -Dynamic type parameterized on a type universe6Partially witness a type constraint for a reified type,Witness a type constraint for a reified type Equality on type representationsRepresentation of type a in a type universe t-This type can also be seen as a witness that a is a member of t (i.e.  t a); see &.(This class provides reification of type a in a universe t.  t a means that a) is in the type universe represented by t.-indexed type representationReification of type a in a type universe t Equality on type representationsType constructor matching. This function makes it possible to match on type representations without dealing with the underlying  representation.For example, to check that a  represents the type a -> Int for some a: is_atoi :: (TypeEq t t, IntType :<: t) => TypeRep t a -> Bool is_atoi t | [E ta, E tb] <- matchCon t , Just _ <- typeEq ta intType = True | otherwise = FalseMonadic version of  matchConM = return . matchCon4 is convenient when matching types in a monad, e.g.: Ldo ... [E ta, E tb] <- matchConM t Dict <- typeEq ta tb ...Default implementation of  for types that have a  instance ,Witness a type constraint for a reified type!6Partially witness a type constraint for a reified type"Safe cast (does not use  unsafeCoerce)#$Safe generalized cast (does not use  unsafeCoerce)& Witness a  constraint for a reified type'Partially witness a  constraint for a reified type  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~5  !"#$%&'()*+,-./01234 !"# $% &'()*+,-  ./0123~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:987654   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None!"2346=JKMSub-universe relationIn general, a universe t is a sub-universe of u if u has the form t1 :+: t2 :+: ... :+: t/Cast a type representation to a larger universeNone !"2346=JKM4  !"#$%&'()*+,-./01234) !"# $%4 &'()*+,- ./0123       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~open-typerep-0.2Data.TypeRep.Internal Data.TypeRepData.TypeRep.SubFunTypeListType FloatTypeIntTypeCharTypeBoolTypeAnyDynamicDynPWitnesspwitSymWitnesswitSymTypeEq typeEqSymTypeRep unTypeRepTypeabletypeRep'TRtypeReptypeEqmatchCon matchConMpwitSymDefaultwitpwitcastgcasttoDynfromDyn witTypeable pwitTypeablepAnypEqpOrdpShowpNum pIntegralboolTypecharTypeintType floatTypelistTypefunType dynToInteger$fPWitnessIntegralFunTypet$fPWitnessIntegralListTypet$fPWitnessIntegralFloatTypet$fPWitnessIntegralIntTypet$fPWitnessIntegralCharTypet$fPWitnessIntegralBoolTypet$fWitnessIntegralIntTypet$fPWitnessNumFunTypet$fPWitnessNumListTypet$fPWitnessNumFloatTypet$fPWitnessNumIntTypet$fPWitnessNumCharTypet$fPWitnessNumBoolTypet$fWitnessNumFloatTypet$fWitnessNumIntTypet$fPWitnessShowFunTypet$fPWitnessShowListTypet$fPWitnessShowFloatTypet$fPWitnessShowIntTypet$fPWitnessShowCharTypet$fPWitnessShowBoolTypet$fWitnessShowListTypet$fWitnessShowFloatTypet$fWitnessShowIntTypet$fWitnessShowCharTypet$fWitnessShowBoolTypet$fPWitnessOrdFunTypet$fPWitnessOrdListTypet$fPWitnessOrdFloatTypet$fPWitnessOrdIntTypet$fPWitnessOrdCharTypet$fPWitnessOrdBoolTypet$fWitnessOrdListTypet$fWitnessOrdFloatTypet$fWitnessOrdIntTypet$fWitnessOrdCharTypet$fWitnessOrdBoolTypet$fPWitnessEqFunTypet$fPWitnessEqListTypet$fPWitnessEqFloatTypet$fPWitnessEqIntTypet$fPWitnessEqCharTypet$fPWitnessEqBoolTypet$fWitnessEqListTypet$fWitnessEqFloatTypet$fWitnessEqIntTypet$fWitnessEqCharTypet$fWitnessEqBoolTypet$fPWitnessAnyFunTypet$fPWitnessAnyListTypet$fPWitnessAnyFloatTypet$fPWitnessAnyIntTypet$fPWitnessAnyCharTypet$fPWitnessAnyBoolTypet$fWitnessAnyFunTypet$fWitnessAnyListTypet$fWitnessAnyFloatTypet$fWitnessAnyIntTypet$fWitnessAnyCharTypet$fWitnessAnyBoolTypet$fPWitnessTypeableFunTypet$fPWitnessTypeableListTypet$fPWitnessTypeableFloatTypet$fPWitnessTypeableIntTypet$fPWitnessTypeableCharTypet$fPWitnessTypeableBoolTypet$fWitnessTypeableFunTypet$fWitnessTypeableListTypet$fWitnessTypeableFloatTypet$fWitnessTypeableIntTypet$fWitnessTypeableCharTypet$fWitnessTypeableBoolTypet$fTypeEqFunTypet$fTypeEqListTypet$fTypeEqFloatTypet$fTypeEqIntTypet$fTypeEqCharTypet$fTypeEqBoolTypet$fTypeablet(->) $fTypeablet[]$fTypeabletFloat$fTypeabletInt$fTypeabletChar$fTypeabletBool$fRenderFunType$fRenderListType$fRenderFloatType$fRenderIntType$fRenderCharType$fRenderBoolType$fAnya $fShowDynamic $fEqDynamic$fPWitnesspASTt$fPWitnessp:+:t$fWitnesspASTt$fWitnessp:+:t$fTypeEqEmptyt $fTypeEqASTt $fTypeEq:+:t$fSyntacticTypeRep $fShowTypeRep SubUniverseweakenUniverse syntactic-2.0Data.Syntactic.SyntaxFullAST$fSubUniversesubsup$fSubUniversettbase Data.ProxyProxyconstraints-0.4Data.ConstraintDict:+:prjProjectinj:<:E