<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >Coercion</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ></HEAD ><BODY ><DIV CLASS="outer" ><DIV CLASS="mini-topbar" >Coercion</DIV ><DIV CLASS="mini-synopsis" ><H1 >Main data type </H1 > <DIV CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="Coercion.html#t%3ACoercion" TARGET="main" >Coercion</A > </DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkCoKind" TARGET="main" >mkCoKind</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkReflCoKind" TARGET="main" >mkReflCoKind</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AsplitCoercionKind_maybe" TARGET="main" >splitCoercionKind_maybe</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AsplitCoercionKind" TARGET="main" >splitCoercionKind</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AcoercionKind" TARGET="main" >coercionKind</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AcoercionKinds" TARGET="main" >coercionKinds</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AcoercionKindPredTy" TARGET="main" >coercionKindPredTy</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AisIdentityCoercion" TARGET="main" >isIdentityCoercion</A ></DIV > <H2 >Equality predicates </H2 > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AisEqPred" TARGET="main" >isEqPred</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkEqPred" TARGET="main" >mkEqPred</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AgetEqPredTys" TARGET="main" >getEqPredTys</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AisEqPredTy" TARGET="main" >isEqPredTy</A ></DIV > <H2 >Coercion transformations </H2 > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkCoercion" TARGET="main" >mkCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkSymCoercion" TARGET="main" >mkSymCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkTransCoercion" TARGET="main" >mkTransCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkLeftCoercion" TARGET="main" >mkLeftCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkRightCoercion" TARGET="main" >mkRightCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkRightCoercions" TARGET="main" >mkRightCoercions</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkInstCoercion" TARGET="main" >mkInstCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkAppCoercion" TARGET="main" >mkAppCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkTyConCoercion" TARGET="main" >mkTyConCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkFunCoercion" TARGET="main" >mkFunCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkForAllCoercion" TARGET="main" >mkForAllCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkInstsCoercion" TARGET="main" >mkInstsCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkUnsafeCoercion" TARGET="main" >mkUnsafeCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkNewTypeCoercion" TARGET="main" >mkNewTypeCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkFamInstCoercion" TARGET="main" >mkFamInstCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkAppsCoercion" TARGET="main" >mkAppsCoercion</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AsplitNewTypeRepCo_maybe" TARGET="main" >splitNewTypeRepCo_maybe</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AinstNewTyCon_maybe" TARGET="main" >instNewTyCon_maybe</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AdecomposeCo" TARGET="main" >decomposeCo</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AunsafeCoercionTyCon" TARGET="main" >unsafeCoercionTyCon</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AsymCoercionTyCon" TARGET="main" >symCoercionTyCon</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AtransCoercionTyCon" TARGET="main" >transCoercionTyCon</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AleftCoercionTyCon" TARGET="main" >leftCoercionTyCon</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3ArightCoercionTyCon" TARGET="main" >rightCoercionTyCon</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AinstCoercionTyCon" TARGET="main" >instCoercionTyCon</A ></DIV > <H2 >Comparison </H2 > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AcoreEqCoercion" TARGET="main" >coreEqCoercion</A ></DIV > <H1 >CoercionI </H1 > <DIV CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="Coercion.html#t%3ACoercionI" TARGET="main" >CoercionI</A > </DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AisIdentityCoI" TARGET="main" >isIdentityCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkSymCoI" TARGET="main" >mkSymCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkTransCoI" TARGET="main" >mkTransCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkTyConAppCoI" TARGET="main" >mkTyConAppCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkAppTyCoI" TARGET="main" >mkAppTyCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkFunTyCoI" TARGET="main" >mkFunTyCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkForAllTyCoI" TARGET="main" >mkForAllTyCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AfromCoI" TARGET="main" >fromCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AfromACo" TARGET="main" >fromACo</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkClassPPredCoI" TARGET="main" >mkClassPPredCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkIParamPredCoI" TARGET="main" >mkIParamPredCoI</A ></DIV > <DIV CLASS="decl" ><A HREF="Coercion.html#v%3AmkEqPredCoI" TARGET="main" >mkEqPredCoI</A ></DIV ></DIV ></DIV ></BODY ></HTML >