!b      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a 1Tree representation of Haskell datatypes in OCamlPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone .78=>?UVXwOH ocaml-exportSixth unique TypeParameterRef.  ocaml-exportFifth unique TypeParameterRef.  ocaml-exportFourth unique TypeParameterRef. ocaml-exportThird unique TypeParameterRef. ocaml-exportSecond unique TypeParameterRef. ocaml-exportUsed to fill the type parameters of proxy types. `Proxy :: Proxy (Maybe TypeParameterRef0)`, `Proxy :: Proxy Either TypeParameterRef0 TypeParameterRef1`. JSON representation is as an Int to simplify the automated tests. ocaml-exportgCreate an OCaml type from a Haskell type. Use the Generic definition when possible. It also expects b and c to be derived generically. ocaml-exportExpected types of a constructor ocaml-export%The name of a non-primitive data type ocaml-export>A type constructor that has at least one type parameter filled ocaml-exportType parameters like a in `Maybe a` ocaml-exportba place holder for OCaml value. It can represent the end of a list or an Enumerator in a mixed sum ocaml-exportA primitive OCaml type like int, string, etc. ocaml-export(A field name and its type from a record. ocaml-exportDUsed for multiple types in a NameConstructor or a RecordConstructor. ocaml-export]User for multiple types in an OCamlRefApp. These are rendered in a different way from Values. ocaml-export&Enumerators have no values, only tags.  ocaml-exportEnumerator and its tag! ocaml-exportOCamlConstructor of one RecordConstructor is a record type. OCamlConstructor of one NamedConstructor that has one value is a Haskell newtype. OCamlConstructor of one NamedConstructor is a product without field names. OCamlConstructor of multiple NamedConstructors is a sum type. OCamlConstructor of at least one RecordConstructor and any other amount of ValueConstructors greater than one is a OCamlSumWithRecordConstructor." ocaml-exportProduct without named fields# ocaml-exportProduct with named fields$ ocaml-exportSum type% ocaml-exportAOCamlConstructor take values to create a new instances of a type.& ocaml-exportGSum, record (product with named fields) or product without named fields' ocaml-exportSum of enumerations only. If a sum contains enumerators and at least one constructor with a value then it is an OCamlValueConstructor( ocaml-exportSum that contains at least one record. This construction is unique to Haskell. It has special Encoding and Decoding rules in order to output a valid OCaml program. i.e. `data A = A {a :: Int} | B {b :: String}`) ocaml-export&Smallest unit of computation in OCaml.* ocaml-export bool, boolean+ ocaml-exportOchar, it gets interpreted as a string because OCaml char does not support UTF-8, ocaml-export Js_date.t- ocaml-exportfloat. ocaml-exportint/ ocaml-exportint320 ocaml-exportstring1 ocaml-export()2 ocaml-export'a list, 'a Js_array.t3 ocaml-export 'a option4 ocaml-export"'l 'r Aeson.Compatibility.Either.t5 ocaml-export(*)6 ocaml-export(**)7 ocaml-export(***)8 ocaml-export(****)9 ocaml-export(*****): ocaml-export1Store data about the OCaml destination of a type.< ocaml-export.Store data about the Haskell origin of a type.> ocaml-exportTop level of an OCaml datatype. A data type may be composed of primitives and/or a combination of constructors and primitives. OCamlDatatype is recursive via OCamlConstructor -> ValueConstructor -> OCamlValue -> OCamlPrimitive -> OCamlDatatype.? ocaml-export+The name of a type and its type constructor@ ocaml-exportA primitive valueA ocaml-exportfor any type that does not use the same serialization as Generic Aeson and has a manually written OCaml definition, should manually derive OCamlType using this function for convenience.Winstance OCamlType X where toOCamlType _ = typeableToOCamlType (Proxy :: Proxy X)d ocaml-exportWhether a set of constructors is an enumeration, i.e. whether they lack values. data A = A | B | C would be simple data A = A Int | B | C would not be simple.e ocaml-export7Tranform an OCamlConstructor to EnumeratorConstructors f ocaml-export;transform a OCamlConstructor to OCamlSumOfRecordConstructorg ocaml-exportHaskell allows you to directly declare a sum of records, i.e. data A = A {a :: Int} | B {b :: String}. This does not exist in OCaml so we have to work around it.B ocaml-exportbConvert OCamlValues to the type parameter names of a data type. `Either a0 a1` -> `["a0","a1"]`C ocaml-exportdgetOCamlValues flatten the values from MultipleConstructors into a list and remove ValueConstructor.D ocaml-export8get all of the type parameters from an OCamlConstructor.E ocaml-exportMatches all of the TypeParameterRefs (TypeParameterRef0 to TypeParameterRef5). This function is needed to work around the tree structure for special rules for rendering type parameters.h ocaml-exportWhen there is a record that has its type parameters partially filled, it will should have TypeParameterRef0-5 as the unfilled type parameters. This function properly pushes the TypeParameterRef0-5 to the type signature of an OCaml type.F ocaml-exportZMake OCaml module prefix for a value based on the declaration's and parameter's meta data.i ocaml-exportIterate through the beginning of a list, remove values as long as they are equal. When one inequality is found, return the value and its tail.j ocaml-exportVZip two lists. If the right hand side is longer, then return the remaining right side.G ocaml-exportBuckleScript has a floatT type that conflicts when you do 'open Aeson.Decode' float must be appended with   . k ocaml-exportmatch type parameter reference l>s (accessible from a TypeRep) to their equivalent OCaml types.H ocaml-export&convert TypeRep to HaskellTypeMetaDataI ocaml-export$convert TyCon to HaskellTypeMetaDatag ocaml-export4Capture the Haskell right side at the sum partition `|`.i ocaml-exportCapture the Haskell type at the left side declaration `data Maybe a`, `data Person`, etc.. Transform the constructor, depending on its values, if necessary.j ocaml-exportHandle type parameter. There are found in the order of declaration on the right hand side of a type. Reordering may be necessary for TypeParameterRefs.k ocaml-export'Enumerator, constructor with no values.l ocaml-exportCapture the product comma.m ocaml-exportCapture the constructor field.n ocaml-export-Capture the Haskell type at the constructor. m or n, from `data Maybe a = Just a | Nothing`. B  !#"$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIB>?@)*+,-./0123456789%&'(!#"$ <=:;A  BCDEFGHIInternal utility functionsPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone~ ocaml-exportFor URLs and POSIX systems. ocaml-export?Parentheses of which the right parenthesis exists on a new line ocaml-export0An empty line, regardless of current indentation ocaml-exportLike  $$#, but with an empty line in between!!5NoneX+ ocaml-exportNtest OCaml type serialization (bs-aeson) against Haskell produced golden files ocaml-exportOCamlTypeInFile do not require an instance of OCamlType since they are hand written OCaml files for Haskell types. Use typeable to get the type name./Create OCaml data types from Haskell data typesPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNoneX o ocaml-export<render a type as a reference, not its implementation detailsp ocaml-export render the rows of a record typeq ocaml-export#render a Haskell data type in OCaml ocaml-export0Convert a 'Proxy a' into OCaml type source code.r ocaml-exportA Haskell Sum of Records needs to be transformed into OCaml record types and a sum type. Replace RecordConstructor with NamedConstructor.s ocaml-exportGiven a constructor, output a list of type parameters. (Maybe a) -> 'a0 list -> ["'a0"] (Either a b) -> 'a0 'a1 list -> ["'a0","'a1"]t ocaml-exportOFor Haskell Sum of Records, create OCaml record types of each RecordConstructoru ocaml-exportXIf this type comes from a different OCaml module, then add the appropriate module prefixv ocaml-exportFPuts parentheses around the doc of an OCaml ref if it contains spaces.JMake a JSON encoder for an OCamlDatatype that matches Generic aeson ToJSONPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNoneXdw ocaml-exportRender the encoder interfacex ocaml-export Render the encode type signaturey ocaml-exportRender the encoder function ocaml-exportaConvert a 'Proxy a' into OCaml type to JSON function source code which expects an interface file '.ml'. ocaml-export[Convert a 'Proxy a' into OCaml type to JSON function source code without an interface file '.mli'.z ocaml-export4special rendering function for sum with record types{ ocaml-export4special rendering function for an encoders interface| ocaml-export} ocaml-exportrender product values~ ocaml-exportrender body rules for sum types ocaml-exportIVariable names for the members of constructors Used in pattern matches ocaml-exportrender JSON encoders for OCamlValues. It runs recersively on Values. [Doc] helps build encoders for arrays and tuples should only use fst of return type, snd [Doc] is to help with recursion ocaml-exportFor an OCamlConstructor, get its OCamlValues as a list, if it has type parameters, render the encoder type signatures for each type parameter as `('a0 -> Js_json.t)` and `a0. This is for the interface. fst Doc is type parameter encoder signature snd Doc is list of type parameters which will be rendered as part of the main type's values. For `Either a b`: `("('a0 -> Js_json.t) ('a1 -> Js_json.t)","('a0, 'a1)")` ocaml-export+Helper function for renderTypeParameterVals ocaml-exportRender type parameters as encode functions. This is for a let declaration that has a complete type signature. `Either a b` : `("(encodeA0 : 'a0 -> Js_json.t) (encodeA0 : 'a1 -> Js_json.t)", "('a0, 'a1)")` ocaml-export(Helper function for renderTypeParameters ocaml-exporttrender type parameter encoder names for all of a constructors type parameters `Either a b`: `"encodeA0 encodeA1"` ocaml-exportXIf this type comes from a different OCaml module, then add the appropriate module prefix ocaml-export:produce encode function name for data types and primitivesLMake a JSON decoder for an OCamlDatatype that matches Generic aeson FromJSONPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone=>?UVX  ocaml-export+Render OCamlDataype into an OCaml interface ocaml-export2Render OCamlPrimitive decoders and type parameters ocaml-export.Render OCamlDatatype into an OCaml declaration ocaml-export_Convert a 'Proxy a' into OCaml type to decode JSON function source code with an interface file '.mli'. ocaml-exportbConvert a 'Proxy a' into OCaml type to decode JSON function source code without an interface file '.mli'. ocaml-exportIVariable names for the members of constructors Used in pattern matches ocaml-export" name " -> decode name ocaml-exportTRender a sum type constructor in context of a data type with multiple constructors. ocaml-exportRender the decoding of a constructor's arguments. Note the constructor must be from a data type with multiple constructors and that it has multiple constructors itself. ocaml-exportJRender an OCaml val interface for a record constructor in a sum of records ocaml-exportIf this type comes from a different OCaml module, then add the appropriate module prefix and add unwrapResult to make the types match&Build OCaml Modules from Haskell TypesPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone-.=?@AHUVX!  ocaml-export3Helper function to work avoid overlapped instances. ocaml-exportvUse Template Haskell to load OCaml files for an OCaml Module at compile time. '$(mkFile (Proxy :: Proxy Package))'. ocaml-export3Helper function to work avoid overlapped instances. ocaml-export.Convert a Haskell type into OCaml source code. ocaml-exportStore OCamlFileInType data. ocaml-exportIn case Generic is not derived, manually provide the type name user is responsible for making sure it is correct. otherwise it may lead to a compile error. ocaml-export:A handwritten OCaml type, encoder and decoder from a file. ocaml-exportESymobl will be expaneded to "module SymbolName = struct ... end". ocaml-export-An OCamlModule as a Haskell type. File level modules5 is relative to a root directory prvoiided in the  mkPackage function.  &Build OCaml Modules from Haskell TypesPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone-.2456=?@AHSUVX  ocaml-export(Need flag to overcome overlapping issues ocaml-export?Produce type meta data for an OCamlPackage and its dependencies ocaml-export Depending on ! settings,  can - make a declaration file containing encoders and decoders - make an OCaml interface file - make a Spec file that tests the encoders and decoders against a golden file and a servant server ocaml-exportCIterate over a list of OCamlModule types that are concated with '(: |)', to create a package. ocaml-exportDetails for OCaml spec. ocaml-export8Directory in which to store the OCaml spec, relative to #. ocaml-export?Location of golden JSON files produced by Haskell, relative to #.  ocaml-exportqIf Just url then run the automated Servant spec server to run OCaml specs against it, otherwise test files only. ! ocaml-export=Options for creating an OCaml package based on Haskell types.# ocaml-export>root directory where all relatives directories will be placed.$ ocaml-export/location to place ml and mli files relative to #.& ocaml-exportcreate an mli file if .' ocaml-exportproduce OCaml spec file if m.* ocaml-exportDefault !.+ ocaml-exportDefault .0 ocaml-export empty list1 ocaml-exportmodules2 ocaml-exportpackages3 ocaml-export6build a packages dependencies and its declared modules4 ocaml-exportpackages7 ocaml-export single module !"#$%&'()*+)(!"#$%&'* + &Build OCaml Modules from Haskell TypesPlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone-.2456=?@AHSUVX  ocaml-export-Concat a Symbol the end of a list of Symbols. ocaml-export Insert type into type level list ocaml-export$Get the length of a type level list. ocaml-exportAppend two type level lists. ocaml-export/Convert a type into a Symbol at the type level.B ocaml-exportAA servant route for a testing an OCaml type's encoder and decoder ocaml-exportUtility type level function.C ocaml-export+Convert an OCamlPackage into a servant API. ocaml-exportEMake hspec-aeson-golden golden files for each type in an OCamlPackage ocaml-exportEMake hspec-aeson-golden golden files for each type in an OCamlPackage >?@ABCDEF FCEDB>?@A!Export everything from one modulePlow Technologies, 2017BSD3mchaver@gmail.com experimentalNone7 A !"#$%&'()*+CDEF7)(!"#$%&'* +A  FCED Safey  !!""##$%&'()*+,-.//0123456789:;<=>?@ABCDEFGHIIJJKK8LMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~         ! " # $ $ % & ' ( ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f ghijhklmnopqrstuvwxyxz{|}~ uv                *ocaml-export-0.13.0-FgnypFfzJXvE8go9rtnKhY OCaml.ExportOCaml.BuckleScript.TypesOCaml.Internal.CommonOCaml.BuckleScript.SpecOCaml.BuckleScript.RecordOCaml.BuckleScript.EncodeOCaml.BuckleScript.Decode"OCaml.BuckleScript.Internal.Module#OCaml.BuckleScript.Internal.Package OCaml.BuckleScript.Internal.SpecAesonDecodePaths_ocaml_exportbase Data.ProxyProxy#servant-0.16-HRWC90SYBxm43z7ELQbirCServant.API.Sub:>Servant.API.Alternative:<|>*servant-server-0.16-5x9xQYsRG5v3lzURcZ9nz4Servant.ServerserveServant.Server.InternalServer wai-3.2.2-App3PRLI7rx95IRRqR6sMO Network.Wai ApplicationTypeParameterRef5TypeParameterRef4TypeParameterRef3TypeParameterRef2TypeParameterRef1TypeParameterRef0 OCamlType toOCamlType OCamlValueOCamlRef OCamlRefAppOCamlTypeParameterRef OCamlEmptyOCamlPrimitiveRef OCamlFieldValuesOCamlRefAppValuesEnumeratorConstructorValueConstructorNamedConstructorRecordConstructorMultipleConstructorsOCamlConstructorOCamlValueConstructorOCamlEnumeratorConstructorOCamlSumOfRecordConstructorOCamlPrimitiveOBoolOCharODateOFloatOIntOInt32OStringOUnitOListOOptionOEitherOTuple2OTuple3OTuple4OTuple5OTuple6OCamlTypeMetaDataHaskellTypeMetaData OCamlDatatypetypeableToOCamlTypegetTypeParameterRefNamesgetOCamlValuesgetTypeParametersisTypeParameterRefmkModulePrefixoCamlValueIsFloattypeRepToHaskellTypeMetaDatatyConToHaskellTypeMetaData$fOCamlTypeProxy$fOCamlType(,,,,,)$fOCamlType(,,,,)$fOCamlType(,,,)$fOCamlType(,,)$fOCamlType(,)$fOCamlTypeBool$fOCamlTypeChar$fOCamlTypeInteger$fOCamlTypeInt$fOCamlTypeWord64$fOCamlTypeWord32$fOCamlTypeWord16$fOCamlTypeWord8$fOCamlTypeWord$fOCamlTypeInt64$fOCamlTypeInt32$fOCamlTypeInt16$fOCamlTypeInt8$fOCamlTypeDouble$fOCamlTypeFloat$fOCamlTypeUTCTime$fOCamlTypeDay$fOCamlTypeByteString$fOCamlTypeText $fOCamlType()$fOCamlTypeEither$fOCamlTypeMaybe $fOCamlType[]$fGenericValueConstructor:+:$fGenericOCamlDatatypeM1$fGenericOCamlDatatypeM10$fGenericOCamlValueK1$fGenericOCamlValueU1$fGenericOCamlValue:*:$fGenericOCamlValueM1$fGenericValueConstructorM1$fOCamlTypeTypeParameterRef0$fToJSONTypeParameterRef0$fFromJSONTypeParameterRef0!$fToADTArbitraryTypeParameterRef0$fArbitraryTypeParameterRef0$fOCamlTypeTypeParameterRef1$fToJSONTypeParameterRef1$fFromJSONTypeParameterRef1!$fToADTArbitraryTypeParameterRef1$fArbitraryTypeParameterRef1$fOCamlTypeTypeParameterRef2$fToJSONTypeParameterRef2$fFromJSONTypeParameterRef2!$fToADTArbitraryTypeParameterRef2$fArbitraryTypeParameterRef2$fOCamlTypeTypeParameterRef3$fToJSONTypeParameterRef3$fFromJSONTypeParameterRef3!$fToADTArbitraryTypeParameterRef3$fArbitraryTypeParameterRef3$fOCamlTypeTypeParameterRef4$fToJSONTypeParameterRef4$fFromJSONTypeParameterRef4!$fToADTArbitraryTypeParameterRef4$fArbitraryTypeParameterRef4$fOCamlTypeTypeParameterRef5$fToJSONTypeParameterRef5$fFromJSONTypeParameterRef5!$fToADTArbitraryTypeParameterRef5$fArbitraryTypeParameterRef5$fShowHaskellTypeMetaData$fEqHaskellTypeMetaData$fOrdHaskellTypeMetaData$fShowOCamlTypeMetaData$fEqOCamlTypeMetaData$fOrdOCamlTypeMetaData$fShowEnumeratorConstructor$fEqEnumeratorConstructor$fShowOCamlValue$fEqOCamlValue$fShowOCamlPrimitive$fEqOCamlPrimitive$fShowOCamlDatatype$fEqOCamlDatatype$fShowOCamlConstructor$fEqOCamlConstructor$fShowValueConstructor$fEqValueConstructor$fReadTypeParameterRef0$fShowTypeParameterRef0$fEqTypeParameterRef0$fGenericTypeParameterRef0$fReadTypeParameterRef1$fShowTypeParameterRef1$fEqTypeParameterRef1$fGenericTypeParameterRef1$fReadTypeParameterRef2$fShowTypeParameterRef2$fEqTypeParameterRef2$fGenericTypeParameterRef2$fReadTypeParameterRef3$fShowTypeParameterRef3$fEqTypeParameterRef3$fGenericTypeParameterRef3$fReadTypeParameterRef4$fShowTypeParameterRef4$fEqTypeParameterRef4$fGenericTypeParameterRef4$fReadTypeParameterRef5$fShowTypeParameterRef5$fEqTypeParameterRef5$fGenericTypeParameterRef5 TypeMetaDatatopLevelOCamlTypeMetaData userOptionsOptionsincludeOCamlInterface aesonOptions dependenciesdefaultOptionscr mintercalatemsuffix mconcatWithmintercalatefinishpprinterstext spaceparens newlineparens emptyline<$+$> linesBetween squarebracks arraybracketspairlowercaseFirstuppercaseFirsttextLowercaseFirsttextUppercaseFirst mkDocList mkDocListPfoldModmkSampleServerAndGoldenSpecmkGoldenDirSpec toOCamlSpectypeInFileToOCamlSpectoOCamlTypeSourceWith$fHasTypeEnumeratorConstructor$fHasTypeOCamlConstructor$fHasTypeValueConstructor$fHasTypeRefOCamlPrimitive$fHasRecordTypeOCamlValue$fHasTypeOCamlValue$fHasTypeRefOCamlValue$fHasTypeRefOCamlDatatype$fHasTypeOCamlDatatypetoOCamlEncoderInterfaceWithtoOCamlEncoderSourceWith$fHasEncoderOCamlConstructor$fHasEncoderRefOCamlPrimitive$fHasEncoderRefOCamlValue$fHasEncoderOCamlValue$fHasEncoderRefOCamlDatatype$fHasEncoderOCamlDatatype"$fHasEncoderInterfaceOCamlDatatypetoOCamlDecoderInterfaceWithtoOCamlDecoderSourceWith!$fHasDecoderEnumeratorConstructor$fHasDecoderOCamlConstructor$fHasDecoderRefOCamlPrimitive$fHasDecoderRefOCamlValue$fHasDecoderOCamlValue$fHasDecoderRefOCamlDatatype$fHasDecoderOCamlDatatype"$fHasDecoderInterfaceOCamlDatatypeHasEmbeddedFilemkFiles HasOCamlTypemkType mkInterfacemkSpecEmbeddedOCamlFileseocDeclaration eocInterfaceeocSpecHaskellTypeNameOCamlTypeInFileOCamlSubModule OCamlModule$fHasOCamlType'TYPE1a#$fHasOCamlType'TYPE2OCamlTypeInFile#$fHasOCamlType'TYPE2HaskellTypeName$fHasOCamlType'TYPE3:>$fHasOCamlType'TYPE4:>$fHasOCamlTypeTYPEa$fHasEmbeddedFilekapi$fHasEmbeddedFile''k1a'$fHasEmbeddedFile''TYPE2OCamlTypeInFile'$fHasEmbeddedFile''TYPE3HaskellTypeName$fHasEmbeddedFile''TYPE4:>$fHasEmbeddedFile''TYPE5:<|>$fHasEmbeddedFile'TYPEa$fShowEmbeddedOCamlFilesHasOCamlTypeMetaDatamkOCamlTypeMetaDataHasOCamlModulemkModuleHasOCamlPackage mkPackage SpecOptionsspecDir goldenDir servantURLPackageOptionspackageRootDir packageSrcDirpackageEmbeddedFilescreateInterfaceFile mSpecOptions NoDependency OCamlPackagedefaultPackageOptionsdefaultSpecOptions$fHasOCamlPackage'TYPE:<|>$fHasOCamlPackage'ka$fHasOCamlModule'kapi$fHasOCamlModuleTYPE:>$fHasOCamlTypeMetaData[][]$fHasOCamlTypeMetaDataTYPE:<|>$fHasOCamlTypeMetaData[]:$fHasOCamlTypeMetaDataTYPE:>$fHasOCamlTypeMetaDataTYPE:<|>0$fHasOCamlPackageka$fHasOCamlPackageTYPE:>$fHasOCamlTypeMetaDataTYPE:>0$fHasOCamlTypeMetaData''k1a,$fHasOCamlTypeMetaData''TYPE2OCamlTypeInFile,$fHasOCamlTypeMetaData''TYPE2HaskellTypeName$fHasOCamlTypeMetaData''TYPE3:>$fHasOCamlTypeMetaData''TYPE4:>$fHasOCamlTypeMetaData'TYPEaOCamlPackageTypeCountocamlPackageTypeCountOCamlModuleTypeCountocamlModuleTypeCount OCamlSpecAPIMkOCamlSpecAPI runGoldenSpec mkGoldenFilesmkOCamlSpecServer$fHasMkGoldenFiles'TYPE1a$fHasMkGoldenFiles'TYPE2:>'$fHasMkGoldenFiles'TYPE3OCamlTypeInFile'$fHasMkGoldenFiles'TYPE3HaskellTypeName$fHasMkGoldenFiles'TYPE4:>$fHasMkGoldenFiles'TYPE5:>$fHasMkGoldenFiles'TYPE6:<|>$fHasMkGoldenFiles'TYPE7:>$fHasMkGoldenFilesTYPEa$fHasRunGoldenSpec'TYPE1a$fHasRunGoldenSpec'TYPE2:>'$fHasRunGoldenSpec'TYPE3OCamlTypeInFile'$fHasRunGoldenSpec'TYPE3HaskellTypeName$fHasRunGoldenSpec'TYPE4:>$fHasRunGoldenSpec'TYPE5:>$fHasRunGoldenSpec'TYPE6:<|>$fHasRunGoldenSpec'TYPE7:>$fHasRunGoldenSpecTYPEa$fOCamlModuleTypeCount'kFalsea-$fOCamlModuleTypeCount'TYPETrueOCamlSubModule*$fOCamlModuleTypeCount'TYPETrueOCamlModule!$fOCamlModuleTypeCount'TYPETrue:>$fOCamlModuleTypeCountTYPEa$fOCamlPackageTypeCount'kFalsea$$fOCamlPackageTypeCount'TYPETrue:<|>"$fOCamlPackageTypeCount'TYPETrue:>$fOCamlPackageTypeCountTYPEa$aeson-1.4.2.0-HXQReg4TmnoFi7nswHCAOeData.Aeson.Types.ToJSONToJSONData.Aeson.Types.FromJSONFromJSON isEnumerationtransformToEnumerationtransformToSumOfRecordisSumWithRecord!getTypeParameterRefNameForTypeRepremoveMatchingHeadzipWithRightRemainder$typeParameterRefTyConToOCamlTypeTextghc-prim GHC.TypesTyCon GHC.MaybeJustNothing HasTypeRef HasRecordTypeHasTypereplaceRecordConstructorsrenderTypeParametersrenderSumRecord appendModuleocamlRefParensHasEncoderInterface HasEncoderRef HasEncoderrenderSumRecordInterfacerenderSumOfRecordEncoderjsonEncodeObject renderSumconstructorParametersrenderVariablerenderTypeParameterValsrenderTypeParameterValsAuxrenderTypeParametersAuxrenderEncodeTypeParametersHasDecoderInterface HasDecoderRef HasDecoderrenderSumConditionrArgsHasEmbeddedFile'' HasOCamlType'HasOCamlTypeMetaDataFlagTrue ConcatSymbolsInsertLengthAppendTypeNameMkOCamlSpecAPI'HasRunGoldenSpecHasMkGoldenFilesversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName