úÎ!ZfRšt      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsNone FHSVXÊmasonEnvironemnt for socket outputmasonEnvironemnt for handle outputmasonBuffer pointersmason)end of the buffer (next to the last byte)masoncurrent positionmasonHThis class is used to provide backend-specific operations for running a .masonPut a t.mason)Flush the content of the internal buffer.mason1Allocate a buffer with at least the given length.mason!Builder specialised for a backendmason/The Builder type. Requires RankNTypes extensionmasonCopy a t to a buffer.masonCopy a u to a buffer.mason Construct a  from a "poke" function.masonTurn a v value into a  mason]Ensure that the given number of bytes is available in the buffer. Subject to semigroup fusion!mason:Run a builder within a buffer and prefix it by the length."masonUTF-8 encode a w.%masonUse x&masonUse y-masonCreate a strict t.masonCreate a lazy z. Threaded runtime is required./masonAllocate a new buffer.0masonWrite a 8 into a handle and obtain the number of bytes written. , does not imply actual disk operations. Set {2 if you want it to write the content immediately.1masonWrite a 6 into a handle and obtain the number of bytes written.2masonEncode | with a custom escaping function3masonDecimal encoding of a positive }.7masonWork with a constant buffer.  will always fail.mason'number of bytes to allocate (if needed)mason#return a next pointer after writing!masonmaximum lengthmasonprefix encoder+masonpad if shorter than this4  !"#$%&'()*+,-./01234- ."!%&'()*0 21#$+, /3(c) Fumiaki Kinoshita 2019BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com>NoneFSXPT9<masonPut the content of a  to a ~.=masonCombine chunks of a lazy z>mason"Encode a single signed byte as-is.?mason$Encode a single unsigned byte as-is.@mason Encode an  in little endian format.Amason Encode an € in little endian format.Bmason Encode an  in little endian format.Cmason Encode a ‚ in little endian format.Dmason Encode a ƒ in little endian format.Emason Encode a „ in little endian format.Fmason Encode a … in little endian format.Gmason Encode a } in little endian format.Hmason Encode an  in big endian format.Imason Encode an € in big endian format.Jmason Encode an  in big endian format.Kmason Encode a ‚ in big endian format.Lmason Encode a ƒ in big endian format.Mmason Encode a „ in big endian format.Nmason Encode a … in big endian format.Omason Encode a } in big endian format.PmasonChar7 encode a †.QmasonChar7 encode a w.RmasonChar8 encode a †.SmasonChar8 encode a w.TmasonUTF-8 encode a †.UmasonEncode | as a UTF-8 byte stream.VmasonDecimal encoding of a ‡ using the ASCII digits.WmasonDecimal encoding of a ‚ using the ASCII digits.XmasonDecimal encoding of a ƒ using the ASCII digits.YmasonDecimal encoding of a „ using the ASCII digits.ZmasonDecimal encoding of a ˆ using the ASCII digits.[masonCurrently slow. Decimal encoding of an IEEE ….\masonDecimal encoding of an IEEE }.]masonDecimal encoding of an ‰ using the ASCII digits.e.g. MtoLazyByteString (int8Dec 42) = "42" toLazyByteString (int8Dec (-1)) = "-1"^masonDecimal encoding of an  using the ASCII digits._masonDecimal encoding of an € using the ASCII digits.`masonDecimal encoding of an  using the ASCII digits.amasonDecimal encoding of an Š using the ASCII digits.bmason#Shortest hexadecimal encoding of a ‡ using lower-case characters.cmason#Shortest hexadecimal encoding of a ‚ using lower-case characters.dmason#Shortest hexadecimal encoding of a ƒ using lower-case characters.emason#Shortest hexadecimal encoding of a „ using lower-case characters.fmason#Shortest hexadecimal encoding of a ˆ using lower-case characters.gmason Encode a ‰& using 2 nibbles (hexadecimal digits).hmason Encode a  using 4 nibbles.imason Encode a € using 8 nibbles.jmason Encode a  using 16 nibbles.kmason Encode a ‡& using 2 nibbles (hexadecimal digits).lmason Encode a ‚ using 4 nibbles.mmason Encode a ƒ using 8 nibbles.nmason Encode a „ using 16 nibbles.omasonEncode an IEEE … using 8 nibbles.pmasonEncode an IEEE } using 16 nibbles.qmasonEncode each byte of a $ using its fixed-width hex encoding.rmasonEncode each byte of a lazy $ using its fixed-width hex encoding.‹mason6Select an implementation depending on the bit-size of ˆms. Currently, it produces a runtime failure if the bitsize is different. This is detected by the testsuite.smasonDecimal encoding of an ŒE using the ASCII digits. Simon Meier's improved implementation from Uhttps://github.com/haskell/bytestring/commit/92f19a5d94761042b44a433d7331107611e4d717J!"%&+,-.012<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsJ-.0<1U2=>?@ABCDEFGHIJKLMNOPQRST"[\VWXYZ]^_`asbcdefghijklmnopqr+,&%!      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwvxyz{|z}~v€vv‚zƒ„…†‡ˆ‰Šzƒ‹zŒzŒŽzŒz‘z’z“ˆ‰”ˆ‰•z–ˆ‰—zŒ˜ˆ‰™š›œžmason-0.1-inplaceMason.Builder.Internal Mason.BuilderS ByteStringL SocketEnvSEseSocketseBuffer seCounter PutBuilderEnvPBEpbHandlepbBufferpbTotalChannelchRespchBuffer GrowingBufferBufferbEndbCur Buildable byteStringflushallocate BuilderForBuilder unBuilderbyteStringCopyshortByteStringwithPtrstorableensurelengthPrefixedWithin stringUtf8cstring cstringUtf8 primBounded primFixedprimMapListFixedprimMapListBoundedprimMapByteStringFixedprimMapLazyByteStringFixedpadded zeroPaddedtoStrictByteStringtoLazyByteStringallocateConstanthPutBuilderLen sendBuilderencodeUtf8BuilderEscapedgrisu3$fMonoidBuilderFor$fSemigroupBuilderFor$fIsStringBuilderFor $fBuildable()$fBuildableGrowingBuffer$fBuildableChannel$fBuildablePutBuilderEnv$fBuildableSocketEnv hPutBuilderlazyByteStringint8word8int16LEint32LEint64LEword16LEword32LEword64LEfloatLEdoubleLEint16BEint32BEint64BEword16BEword32BEword64BEfloatBEdoubleBEchar7string7char8string8charUtf8encodeUtf8Builderword8Dec word16Dec word32Dec word64DecwordDecfloatDec doubleDecint8Decint16Decint32Decint64DecintDecword8Hex word16Hex word32Hex word64HexwordHex int8HexFixed int16HexFixed int32HexFixed int64HexFixed word8HexFixedword16HexFixedword32HexFixedword64HexFixed floatHexFixeddoubleHexFixed byteStringHexlazyByteStringHex integerDecbytestring-0.10.8.2Data.ByteString.InternalData.ByteString.Short.InternalShortByteStringbaseForeign.StorableStorableGHC.BaseString%Data.ByteString.Builder.Prim.Internal BoundedPrim FixedPrimData.ByteString.Lazy.InternalGHC.IO.Handle.Types NoBuffering text-1.2.3.1Data.Text.InternalTextghc-prim GHC.TypesDoubleHandleGHC.IntInt16Int32Int64GHC.WordWord16Word32Word64FloatCharWord8WordInt8IntcaseWordSize_32_64 integer-gmpGHC.Integer.TypeInteger