!      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (c) Fumiaki Kinoshita 2019BSD3 ExperimentalNone 4>EHSVX_wineryjA Bazaar (chain of indexed store comonad)-like structure which instead works for natural transformations.winery A monad with  Reader [r] and Either WineryException4 combined, used internally to build an extractor. r? is used to share environment such as extractors for fixpoints.wineryExceptions thrown by a  wineryThe Decoder monad winery$A state monad. The reason being not StateN from transformers is to allow coercion for newtype deriving and DerivingVia.wineryRun a      (c) Fumiaki Kinoshita 2019BSD3 ProvisionalNone  4567HV_2+winery&Exceptions thrown when by an extractor4winery1Plan is a monad for computations which interpret n.;wineryA fixpoint of a decoder<wineryschema bound by m.  is a basis of the variables=winery= is a 46 that creates a function to extract a value from Term.The G instance can be used to build a user-defined extractor. This is also +, meaning that fallback plans may be added.["Don't get set into one form, adapt it and build your own, and let it grow, be like water."@winery\Common representation for any winery data. Handy for prettyprinting winery-serialised data.UwineryThe basic schema datatypeVwinerybinds a fixpointWwinerySVar n& refers to the n-th innermost fixpointkwinerynanoseconds from POSIX epochnwineryyA schema preserves structure of a datatype, allowing users to inspect the data regardless of the current implementation.H"Yeah, it s just a memento. Just, you know, from the first time we met."owinery7Tag is an extra value that can be attached to a schema.swinery!The current version of the schematwineryGObtain the schema of the schema corresponding to the specified version.uwineryRun an =.vwinery Pretty-print +L+3,-./012456789:;<=>?@ABCDEFGHIJKLMNOPQRSTU]jVWXYZ[\^_`abcdefghiklmnopqrstuvLopqrnU]jVWXYZ[\^_`abcdefghiklmst@ABCDEFGHIJKLMNOPQRST=>?7:;<89456u+3,-./012v(c) Fumiaki Kinoshita 2019BSD3 ProvisionalNone -.014=>?HMUVX_kt6wineryThe . instance is generically defined for variants.G"The one so like the other as could not be distinguish'd but by names."winery3Serialise a value as a product (omits field names).>"I get ideas about what's essential when packing my suitcase."wineryEncode all the fieldswineryThe - instance is generically defined for records.Z"Remember thee! Yea, from the table of my memory I'll wipe away all trivial fond records."winerydAn extractor for individual fields. This distinction is required for handling recursions correctly.$Recommended extension: ApplicativeDowinery$Encoded in variable-length quantity.winerySchema generatorwinery A bundle of  methodswinerySerialisable datatypewinery"Obtain the schema of the datatype.winerySerialise a value.wineryIA value of 'Extractor a' interprets a schema and builds a function from @ to a. This must be equivalent to % when the schema is the current one.If  sD returns a function, the function must return a non-bottom for any @  s returns.CIt must not return a function if an unsupported schema is supplied.&getDecoderBy extractor (schema (Proxy  a)) must be Right d where d@ is equivalent to .winery'Decode a value with the current schema.   x "a xwinery;Instead of the four methods above, you can supply a bundle.wineryThis may be thrown if illegal @ is passed to an extractor.wineryDeserialiser for a @.("I will read anything rather than work."wineryDeserialise a d .winery/A bundle of generic implementations for recordswineryEA bundle of generic implementations for records, with a default valuewinery0A bundle of generic implementations for variantswinery,Check the integrity of a Serialise instance.g"No tears in the writer, no tears in the reader. No surprise in the writer, no surprise in the reader."winery in terms of ; note that it's very slow.wineryObtain a schema on N, binding a fixpoint when necessary. If you are hand-rolling a definition of #, you should call this instead of .winery"Obtain the schema of the datatype.;"Tell me what you drink, and I will tell you what you are."wineryObtain a decoder from a schema.["A reader lives a thousand lives before he dies... The man who never reads lives only one."wineryGet a decoder from a = and a schema.winery(Serialise a value along with its schema.S"Write the vision, and make it plain upon tables, that he may run that readeth it."winery then write it to a file.winery"Serialise a value with the schema.winerySplit a n from a .winerySerialise a schema.wineryDeserialise a d .Q"Old wood to burn! Old wine to drink! Old friends to trust! Old authors to read!"wineryDeserialise a d  using an =.wineryDeserialise a schema.winery%Serialise a value without its schema.$"Any unsaved progress will be lost."winery time-1.9.1winery%Extract a list or an array of values.wineryBuild an extractor from a .wineryExtract a field of a record.winery#Extract a field using the supplied =.winery7Construct a plan, expanding fixpoints and let bindings.winerynTries to extract a specific constructor of a variant. Useful for implementing backward-compatible extractors.winerywTries to match on a constructor. If it doesn't match (or constructor doesn't exist at all), leave it to the successor.  extractor = (Just, Just)  (Nothing, () -> Nothing)  extractVoidwineryNo constructors remaining.wineryGeneric implementation of  for a record.wineryGeneric implementation of  for a record.wineryGeneric implementation of  for a record.wineryGeneric implementation of  for a record.winery Synonym for wineryGeneric implementation of  for a record.wineryGeneric implementation of  for a record.wineryGeneric implementation of  for an ADT.wineryGeneric implementation of  for an ADT.wineryGeneric implementation of  for an ADT.winerydefault value (optional)winerydefault value (optional) +3,-./012456=>?@ABCDEFGHIJKLMNOPQRSTU]jVWXYZ[\^_`abcdefghiklmnopqrtuv۔nU]jVWXYZ[\^_`abcdefghiklmopqr =>?u @ABCDEFGHIJKLMNOPQRST+3,-./012v456t11(c) Fumiaki Kinoshita 2019BSD3 ExperimentalNone4 Jwinery"Query is a transformation between =+s. Like jq, this returns a list of values.MwineryThrow an error.Nwinery!Takes a list and traverses on it.OwineryTakes a list and enumerates elements in the specified range. Like Python's array slicing, negative numbers counts from the last element.Pwinery0Takes a record and extracts the specified field.QwineryATakes a variant and returns a value when the constructor matches.Rwinery!Propagate values if the supplied J doesn't return False. JKLMNOPQR JKLMNOPQR(c) Fumiaki Kinoshita 2019BSD3 ExperimentalNone &'SUVXwinery^Space-separated list of terms translate to a tabular output, applying the queries in parallelWW(c) Fumiaki Kinoshita 2019BSD3 ExperimentalNone 18=>?MSUVXk XwineryzA class to provide test values and gather tests for its components. It is recommended to use the generic default methods.YwineryA list of values that can be used as test cases. It should contain at least one value as long as there is a non-bottom value in the type.Zwinery6Inherited set of test cases for each type it involves.[wineryTypes with concrete test cases./"Doubt is useful, it keeps faith a living thing. After all, you cannot know the strength of your faith until it has been tested."/\winery List of test cases for the type.]wineryConstruct a test case.^wineryMerge multiple tests into one._winery5Gather all test cases involved in the specified type.`winery:Generate test cases and print them to the standard output.]winery the schemawinery serialisedwineryexpected XZY[\]^_` XZY`[\]_^ None +3,-./012456=>?@ABCDEFGHIJKLMNOPQRSTU]jVWXYZ[\^_`abcdefghiklmnopqrtuv None XZY[\]^_` Safen    !"#$%&'()*+,-./0123456789:;<==>?@@ABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~        !winery-1.1-GelciUm5a16BnHByjHLJjCCodec.Winery.InternalCodec.Winery.Base Codec.WineryCodec.Winery.QueryCodec.Winery.Query.ParserCodec.Winery.TestB Bytestring Data.WineryData.Winery.Test Paths_winery TransFusion unTransFusionStrategy unStrategyDecodeExceptionInsufficientInputIntegerOverflow InvalidTagDecoderStaterunStateunsignedVarIntvarInt evalState evalDecodergetWord8 decodeVarIntdecodeVarIntFinite getWord16 getWord32 getWord64 unsafeIndexVlookupWithIndexV indexDefault throwStrategy$fMonadFixState $fMonadState$fApplicativeState$fExceptionDecodeException$fMonadFixStrategy$fAlternativeStrategy$fMonadStrategy$fApplicativeStrategy$fApplicativeTransFusion$fFunctorTransFusion$fFunctorState$fEqDecodeException$fShowDecodeException$fReadDecodeException$fFunctorStrategyWineryExceptionUnexpectedSchema FieldNotFound TypeMismatchProductTooSmallUnboundVariable EmptyInput WineryMessageUnsupportedSchemaVersionPlanunPlan Strategy' StrategyEnv StrategyBind DynDecoder BoundSchema Extractor getExtractorTermTBoolTCharTWord8TWord16TWord32TWord64TInt8TInt16TInt32TInt64TIntegerTFloatTDoubleTBytesTTextTUTCTimeTVectorTProductTRecordTVariantSchemaPSFixSVarSVectorSProductSRecordSVariantSBoolSCharSWord8SWord16SWord32SWord64SInt8SInt16SInt32SInt64SIntegerSFloatSDoubleSBytesSTextSUTCTimeSTagSLetSchemaTagTagIntTagStrTagListcurrentSchemaVersionbootstrapSchemaunwrapExtractorprettyWineryException $fPrettyTag $fIsListTag $fIsStringTag$fPrettySchemaP $fPrettyTerm $fToJSONTerm$fIsStringWineryException$fExceptionWineryException$fAlternativePlan $fMonadPlan$fApplicativePlan$fAlternativeExtractor$fApplicativeExtractor $fShowTag $fReadTag$fEqTag $fGenericTag $fShowSchemaP $fReadSchemaP $fEqSchemaP$fGenericSchemaP$fFunctorSchemaP$fFoldableSchemaP$fTraversableSchemaP $fShowTerm$fShowWineryException $fFunctorPlan$fFunctorExtractorGSerialiseVariant WineryVariantunWineryVariant WineryProductunWineryProductGSerialiseRecordGEncodeProduct WineryRecordunWineryRecord SubextractorunSubextractorVarInt getVarInt SchemaGenBundleSerialisebundleSchemaGenbundleToBuilderbundleExtractorbundleDecodeCurrent Serialise schemaGen toBuilder extractor decodeCurrentbundleSerialiseExtractException InvalidTermdeserialiseTerm bundleRecordbundleRecordDefault bundleVariant testSerialisedecodeCurrentDefault getSchemaschema getDecoder getDecoderBy serialisewriteFileSerialisetoBuilderWithSchema splitSchemaserialiseSchema deserialise deserialiseBydeserialiseSchema serialiseOnlyunexpectedSchema extractListBybuildExtractor extractFieldextractFieldBymkPlanextractConstructorByextractConstructor extractVoidgschemaGenRecordgtoBuilderRecordgextractorRecordgdecodeCurrentRecordgschemaGenProductgtoBuilderProductgextractorProductgdecodeCurrentProductgschemaGenVariantgtoBuilderVariantgextractorVariantgdecodeCurrentVariant$fExceptionExtractException$fApplicativeSchemaGen$fFunctorSchemaGen$fSerialiseVoid$fSerialiseComplex$fSerialiseArg$fSerialise:~:$fSerialiseOrdering$fSerialiseEither$fSerialise(,,,,,)$fSerialise(,,,,)$fSerialise(,,,)$fSerialise(,,)$fSerialise(,)$fSerialiseScientific$fSerialiseRatio$fSerialiseSeq$fSerialiseIntSet$fSerialiseSet$fSerialiseIntMap$fSerialiseHashMap$fSerialiseMap$fSerialiseVector$fSerialiseVector0$fSerialiseVector1 $fSerialise[]$fSerialiseNominalDiffTime$fSerialiseUTCTime$fSerialiseByteString$fSerialiseByteString0$fSerialiseMaybe$fSerialiseChar$fSerialiseNatural$fSerialiseText$fSerialiseDouble$fSerialiseFloat$fSerialiseInt64$fSerialiseInt32$fSerialiseInt16$fSerialiseInt8$fSerialiseWord$fSerialiseWord64$fSerialiseWord32$fSerialiseWord16$fSerialiseWord8$fSerialiseBool $fSerialise()$fSerialiseSchemaP$fSerialiseTag$fSerialiseInteger$fSerialiseVarInt$fSerialiseInt$fGEncodeProductkM1$fGEncodeProductkM10$fGEncodeProductkM11$fGEncodeProductk:*:$fGEncodeProductkU1$fGDecodeProductk:*:$fGDecodeProductkM1$fGDecodeProductkK1$fGDecodeProductkU1$fGSerialiseRecordkM1$fGSerialiseRecordkM10$fGSerialiseRecordkM11$fGSerialiseRecordk:*:$fSerialiseWineryRecord$fGSerialiseProductk:*:$fGSerialiseProductkM1$fGSerialiseProductkK1$fGSerialiseProductkU1$fSerialiseWineryProduct$fGSerialiseVariantkM1$fGSerialiseVariantkM10$fGSerialiseVariantkM11$fGSerialiseVariantkM12$fGSerialiseVariantk:+:$fSerialiseWineryVariant$fShowExtractException $fShowVarInt $fReadVarInt $fEqVarInt $fOrdVarInt $fEnumVarInt$fBoundedVarInt $fNumVarInt $fRealVarInt$fIntegralVarInt $fBitsVarInt$fFunctorSubextractor$fApplicativeSubextractor$fAlternativeSubextractor $fSerialiseAp$fSerialiseCompose$fSerialiseAlt$fSerialiseMin$fSerialiseMax$fSerialiseOption$fSerialiseZipList$fSerialiseFirst$fSerialiseLast$fSerialiseFirst0$fSerialiseLast0$fSerialiseDual$fSerialiseSum$fSerialiseProduct$fSerialiseDown$fSerialiseAll$fSerialiseAny$fSerialiseConst$fSerialiseIdentityQueryrunQueryinvalidlistrangefieldconselect$fAlternativeQuery$fApplicativeQuery$fCategoryTYPEQuery$fFunctorQuery parseQueryTestGen genTestCasesinheritedTestsTested testCasestestCase mergeTestsallTests printTests $fGTestGen:*: $fGTestGen:+: $fGTestGenM1$fGTestGenRec1 $fGTestGenU1 $fGTestGenV1$fTestGenByteString $fTestGenText $fTestGenChar$fTestGenDouble$fTestGenFloat$fTestGenWord64$fTestGenWord32$fTestGenWord16$fTestGenWord8 $fTestGenInt $fTestGenVoid $fTestGenBool $fTestGen() $fTestGenMap$fTestGenHashMap$fTestGenVector$fTestGenVector0 $fTestGenSeq $fTestGen[]$fTestGenEither$fTestGen(,,,) $fTestGen(,,) $fTestGen(,) $fGTestGenK1 $fTestedMap$fTestedHashMap$fTestedVector$fTestedVector0 $fTested(,,,) $fTested(,,) $fTested(,)$fTestedEither $fTested[] $fTestedSeq$fTestedIdentity$fTestedByteString $fTestedText $fTestedChar $fTested()$fTestedDouble $fTestedFloat$fTestedWord64$fTestedWord32$fTestedWord16 $fTestedWord8 $fTestedInt $fTestedBool $fTestedVoid$fTestGenIdentityghc-prim GHC.TypesIntbaseGHC.Base Applicative Alternative decodeTermbytestring-0.10.8.2Data.ByteString.Internal ByteStringnanosecondsToNominalDiffTimeextractorRecord' parseTermsversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName