h&"      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGH I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c   Safe-Inferred )1<=? Safe-Inferred )1<=?generic-data-functionsCommon type error string for when GHC is asked to derive a sum instance, but the data type in question turns out to be a non-sum data type.No need to add the data type name here, since GHC's context includes the surrounding instance declaration.generic-data-functionsCommon type error string for when GHC is asked to derive a non-sum instance, but the data type in question turns out to be a sum data type.No need to add the data type name here, since GHC's context includes the surrounding instance declaration.generic-data-functionsCommon type error string for when you attempt to use a generic instance at an empty data type (e.g. , ). Safe-Inferred )1<=?generic-data-functionsd? without the value (only used as a proxy). Lets us push our es into one place.generic-data-functionsf? without the value (only used as a proxy). Lets us push our es into one place.generic-data-functionsg? without the value (only used as a proxy). Lets us push our es into one place.generic-data-functions.Get the record name for a selector if present.On the type level, a 'Maybe Symbol' is stored for record names. But the reification is done using  fromMaybe "". So we have to inspect the resulting string to determine whether the field uses record syntax or not. (Silly.) Safe-Inferred )1<=? Safe-Inferred )1<=? ^ generic-data-functionsWrapper for using to derive instances via generics. Do nothing for Rec0+ base case i.e. every constructor field."nothing" probably means h!, but *may* be another unit-like.7TODO This might not be useful. It's not "special" like  , it's basically tied to i. So it's useful for j), but kind of arbitrary when applied to k. generic-data-functionsWrapper for using to derive instances via generics. Emit type error on Rec0* base case i.e. any non-empty constructor.    Safe-Inferred)13<=?wgeneric-data-functionsl" functors that can be generically kd.generic-data-functionsThe type class providing (applicative) actions for permitted types.generic-data-functionsThe action in k (first argument).We include data type metadata because this function is useful for monadic parsers, which can record it in error messages. (We don't do it for foldMap because it's pure.)"generic-data-functionsk5 over types where all fields map to their respective h.=Can result in type errors lacking context: a field missing a i instance will type error with a regular "no instance for" message, without telling you the surrounding type. Maybe silly.#generic-data-functionsk. over types with no fields in any constructor.generic-data-functionsdata type name generic-data-functionsconstructor name generic-data-functionsrecord name (if present) generic-data-functions field index  ! ! Safe-Inferred)1<=? )generic-data-functions'Generic getter (constructor sum level)./generic-data-functions?How to use a type as a prefix tag in a generic sum type parser.1generic-data-functions1How to turn a constructor name into a prefix tag.2generic-data-functions(How to compare prefix tags for equality.By shoving this into our generic derivation config, we can avoid adding an insidious m6 constraint. In general, you will want to set this to n.3generic-data-functions"Make a prefix tag human-readable. o is often appropriate.4generic-data-functions(Sum-type monads that can be generically kd.For sum types, we require a monad with choice to differentiate constructors.5generic-data-functions"Try to parse a prefix tag of type pt.+Relevant metadata is provided as arguments.6generic-data-functionsParse error due to no constructor matching the parsed prefix tag.+Relevant metadata is provided as arguments.7generic-data-functions4Refuse to derive an instance for an empty data type.8generic-data-functionsRefuse to derive a non-sum instance if we expected a sum data type.5generic-data-functionsdata type name6generic-data-functionsdata type namegeneric-data-functionsnon-matching constructor namesgeneric-data-functionsprefix tag, prettified)*+,-./3210465465/3210-.+,)* Safe-Inferred)1<=?c=>?@?@=> Safe-Inferred )1<=?Egeneric-data-functionsGeneric k" over a term of non-sum data type f a.f a# must have exactly one constructor.Fgeneric-data-functionsGeneric k over a term of sum data type f a.f a% must have at least two constructors.You must provide a configuration for how to handle constructors.Ggeneric-data-functions-Construct a prefix tag config using existing m and p instances.;The user only needs to provide the constructor name parser.-/0123456?EFGE?456/0123F-G  Safe-Inferred )1<=?Hgeneric-data-functionsj' on individual constructors (products).Jgeneric-data-functionsis that can be generically jped to.Kgeneric-data-functionsThe type class that enables mapping permitted types to the monoid.:The type class should provide a function that looks like L.Lgeneric-data-functionsThe "map" function in j (first argument).Mgeneric-data-functionsj$ over types where all fields map to h.Ngeneric-data-functionsj. over types with no fields in any constructor.Ogeneric-data-functionsWow, look! Nothing!Qgeneric-data-functionsj' on individual constructors (products).HIJLKJLKHI  Safe-Inferred )1<=?RSTUTURS  Safe-Inferred )1<=?\generic-data-functionsj! over generic product data types.Take a generic representation, map each field in the data type to a i , and combine the results with (q).\]\]  Safe-Inferred )1<=?Wbgeneric-data-functionsGeneric j" over a term of non-sum data type a.a# must have exactly one constructor.cgeneric-data-functionsGeneric j over a term of sum data type a.a% must have at least two constructors.You must provide a function for mapping constructor names to monoidal values.JKLT\bcJKLb\cT Safe-Inferred )1<=?rstuvwxy !"#$%&'()*+,-./01123456789:;<=>??@ABCDEFGHIJKLMNOPQRSTUV W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q rstsuvswsxsyzsy{s|}s~sysssy$generic-data-functions-0.1.0-inplaceGeneric.Data.Function.Error"Generic.Data.Function.Util.Generic#Generic.Data.Function.Util.TypeNatsGeneric.Data.Function.Via*Generic.Data.Function.Traverse.Constructor"Generic.Data.Function.Traverse.Sum%Generic.Data.Function.Traverse.NonSumGeneric.Data.Function.Traverse)Generic.Data.Function.FoldMap.Constructor!Generic.Data.Function.FoldMap.Sum$Generic.Data.Function.FoldMap.NonSumGeneric.Data.Function.FoldMapGeneric.Data.Function Data.VoidVoid GHC.GenericsV1Paths_generic_data_functionsEUnexpectedNonSumEUnexpectedSumENoEmpty datatypeName'conName'selName' selName''natVal'' natValInt EmptyRec0 unEmptyRec0ENoRec0NoRec0unNoRec0$fGenericEmptyRec0$fShowEmptyRec0$fFunctorEmptyRec0$fApplicativeEmptyRec0$fMonadEmptyRec0$fGenericNoRec0 $fShowNoRec0$fFunctorNoRec0$fApplicativeNoRec0 $fMonadNoRec0 ProdArity GTraverseC gTraverseCGenericTraverseGenericTraverseCgenericTraverseActionA$fGenericTraverseEmptyRec0$fGenericTraverseNoRec0$fGTraverseCkkTYPEkcdcc0fU1$fGTraverseCkkTYPEkcdccsifM1 $fGTraverseCkkTYPETYPEcdccsif:*: $fGenericA$fShowA GTraverseCSum gTraverseCSum GTraverseSum' gTraverseSum' GTraverseSum gTraverseSum PfxTagCfgpfxTagCfgFromCstr pfxTagCfgEq pfxTagCfgShowGenericTraverseSumgenericTraverseSumPfxTagAction&genericTraverseSumNoMatchingCstrAction$fGTraverseSum'kkcdfV1$fGTraverseSum'kkcdfM1$fGTraverseSumkfM1$fGTraverseCSumkTYPEkcdfM1$fGTraverseCSumkTYPEkcdf:+:$fGTraverseSum'kkcdf:+:GTraverseNonSum'gTraverseNonSum'GTraverseNonSumgTraverseNonSum$fGTraverseNonSum'kTYPEkcdfV1$fGTraverseNonSum'kTYPEkcdfM1$fGTraverseNonSum'kTYPEkcdf:+:$fGTraverseNonSumTYPEkfM1genericTraverseNonSumgenericTraverseSumeqShowPfxTagCfg GFoldMapC gFoldMapCGenericFoldMapGenericFoldMapCgenericFoldMapF$fGenericFoldMapEmptyRec0$fGenericFoldMapNoRec0$fGFoldMapCkmU1$fGFoldMapCkmM1$fGFoldMapCkm:*: GFoldMapCSum gFoldMapCSum GFoldMapSum gFoldMapSum$fGFoldMapSumkmV1$fGFoldMapSumkmM1$fGFoldMapSumkmM10$fGFoldMapCSumkmM1$fGFoldMapCSumkm:+:$fGFoldMapSumkm:+:GFoldMapNonSumgFoldMapNonSum$fGFoldMapNonSumkmV1$fGFoldMapNonSumkmM1$fGFoldMapNonSumkm:+:$fGFoldMapNonSumkmM10genericFoldMapNonSumgenericFoldMapSumbase datatypeNameGHC.Err undefinedconNameselNameGHC.BasememptyMonoid Data.FoldablefoldMapData.Traversabletraverse Applicativeghc-prim GHC.ClassesEq==GHC.ShowshowShow<>versiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir