úÎ!¹     (C) 2017 Ryan Scott BSD-style (see the file LICENSE) Ryan Scott ExperimentalGHCUnsafe  eliminators dataName> generates a top-level elimination function for the datatype dataNameS. The eliminator will follow these naming conventions: The naming conventions are:UIf the datatype has an alphanumeric name, its eliminator will have that name with elim prepended.PIf the datatype has a symbolic name, its eliminator will have that name with ~> prepended. eliminators funName dataName3 generates a top-level elimination function named funName for the datatype dataName. eliminatorsConstruct a type of the form  x given x. eliminatorsConstruct a type of the form  p ty given p and ty. eliminatorsKGenerate a list of fresh names with a common prefix, and numbered suffixes. eliminatorsLDecompose an applied type into its individual components. For example, this: Either Int Char would be unfolded to this: Either :| [Int, Char] (C) 2017 Ryan Scott BSD-style (see the file LICENSE) Ryan Scott ExperimentalGHC Trustworthy&',-.EHSUVXfkO   (C) 2017 Ryan Scott BSD-style (see the file LICENSE) Ryan Scott ExperimentalGHC Trustworthy -.HSUVXk­ eliminators Although k is not actually an inductive data type in GHC, we can (crudely) pretend that it is using this eliminator.       eliminators-0.5-inplaceData.Eliminator.THData.EliminatorData.Eliminator.TypeNats deriveElimderiveElimNamedelimBool elimEither elimMaybeelimNat elimNonEmpty elimOrderingelimVoidelimList elimTuple0 elimTuple2 elimTuple3 elimTuple4 elimTuple5 elimTuple6 elimTuple7singTypeOsingletons-2.5-49648ab4f20f98e476eecf8756f98256cd4fdad69efe6c5b1b6d5320832029e9Data.Singletons.InternalSingpredTypeApply newNameList unfoldTypeghc-prim GHC.TypesNat