h*'%      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^0.2.4.9 Safe-Inferred"%&7 Fbuffer-builderBufferBuilder is the type of a monadic action that appends to an implicit, growable buffer. Use ' to extract the resulting buffer as a _.buffer-builderRun a sequence of 0 actions and extract the resulting buffer as a _.buffer-builderRun a sequence of 0 actions and extract the resulting buffer as a _+. Also returns the BufferBuilder's result. buffer-builderGiven a BufferBuilder, calculate its length. This runs every BufferBuilder action in a mode that simply accumulates the number of bytes without copying any data into an output buffer. buffer-builderReads current length of BufferBuilder. If memory allocation has failed at any point, this returns zero. In the future, currentLength may throw an exception upon memory allocation failure. buffer-builderAppend a single byte to the output buffer. To append multiple bytes in sequence and avoid redundant bounds checks, consider using  , , or . buffer-builderAppends a character to the buffer, truncating it to the bottom 8 bits. buffer-builder Appends a _ to the buffer. When appending constant, hardcoded strings, to avoid a CAF and the costs of its associated tag check and indirect jump, use  or  instead.buffer-builderAppends a lazy ` to the buffer. This function operates by traversing the lazy ` chunks, appending each in turn.buffer-builderAppends a zero-terminated MagicHash string literal. Use this function instead of  $ for string constants. For example: appendLiteral "true"#7If the length of the string literal is known, calling  is faster, as  avoids a strlen operation which has nontrivial cost in some benchmarks.buffer-builderAppends a MagicHash string literal with a known length. Use this when the string literal's length is known. For example: unsafeAppendLiteralN 4 "true"#Per byte, this is the fastest append function. It amounts to a C function call with two constant arguments. The C function checks to see if it needs to grow the buffer and then it simply calls memcpy.WARNING: passing an incorrect length value is likely to cause an access violation or worse.buffer-builderAppends a UTF-8-encoded a to the buffer.buffer-builderAppends a UTF-8-encoded b to the buffer. The best way to improve performance here is to use _ or c instead of b.buffer-builder>Appends a decimal integer, just like calling printf("%d", ...)buffer-builder=Appends a decimal double, just like calling printf("%f", ...)buffer-builderAppend a percent-encoded ByteString. All characters except for alphanumerics, -, ., _, and ~ will be encoded. The string produced by URL encoding is guaranteed ASCII-7 and thus valid UTF-8. Moreover, it is not required to be JSON-escaped.   Safe-Inferred$buffer-builderRun a sequence of #3 actions and extracting the resulting buffer as a _.%buffer-builderEncodes the given c& in UTF-8, appending it to the buffer.&buffer-builderEncodes the given b& in UTF-8, appending it to the buffer.'buffer-builderEncodes a single a& in UTF-8, appending it to the buffer.(buffer-builder2Appends the bottom 7 bits of a byte to the buffer.)buffer-builderAppends the bottom 7 bits of a a to the buffer.*buffer-builderAppends the given ByteString to the buffer, taking the bottom 7 bits of each byte.+buffer-builderAppends the zero-terminated byte string at the given address to the buffer, taking the bottom 7 bits of each byte.,buffer-builderDirectly calls . The output from URL percent-encoding is guaranteed to be valid UTF-8.2buffer-builderDirectly append a BufferBuilder into the UTF-8 code stream. Incorrect use of this function can result in invalid UTF-8.3buffer-builderDirectly append a byte into the UTF-8 code stream. Incorrect use of this function can result in invalid UTF-8.4buffer-builderDirectly append the bottom 8 bits of the given character to the UTF-8 code stream. Incorrect use of this function can result in invalid UTF-8.5buffer-builderDirectly append the zero-terminated byte sequence pointed to by the given address. Be careful that the referenced byte sequence contains valid UTF-8.6buffer-builderDirectly append the given byte sequence pointed to by the given address. Be careful that the referenced byte sequence contains valid UTF-8.WARNING: passing an incorrect length value is likely to cause an access violation or worse.7buffer-builderDirectly append the given _7 to the output buffer. Be careful that the referenced _ contains valid UTF-8.#$%&'()*+,-.0/1234567#$%&'()*+,-.0/1234567 Safe-Inferred"%g;buffer-builderBuilds a JSON object.An ; builds one or more key-value pairs of a JSON object. They are constructed with the E operator and combined with . To turn an ; into a A , use its ? class instance.  data Friend = Friend { fId :: !Int , fName :: !Text } deriving (Eq, Show) instance ToJson Friend where toJson friend = toJson $ "id" .= fId friend <> "name" .= fName friend WARNING: ; does not check uniqueness of object keys. If two keys with the same value are inserted, then the resulting JSON document will be illegal.<buffer-builderThe class of types that can be converted to JSON strings. Any type that provides ToJsonString also provides ToJson, and thus can be used as JSON values.>buffer-builderRepresents a JSON string.?buffer-builder?The class of types that can be converted to JSON values. See ; for an example of writing a ?" instance for a custom data type.? instances are provided for many common types. For example, to create a JSON array, call @ on a list or d!. To create a JSON object, call @ on a e.Abuffer-builderRepresents a JSON value.As are built up from either ?$ instances or from primitives like C, G, and f.In special cases, or when performance is of utmost importance, the unsafe functions L are available.Internally, Value encodes an action or sequence of actions that append JSON-encoded text to the underlying #.Bbuffer-builderEncode a value into a _ containing valid UTF-8-encoded JSON. The argument value must have a corresponding ? instance.WARNING,: There are three cases where the resulting _ may not contain legal JSON:3An unsafe function was used to encode a JSON value.The root value is not an object or array, as the JSON specification requires.An object has multiple keys with the same value. For maximum efficiency, ; does not check key names for uniqueness, so it's possible to construct objects with duplicate keys.Cbuffer-builderA A that produces the empty object.Dbuffer-builderCreate an ObjectBuilder from an arbitrary key and value. The key can be any type with a < instance.Ebuffer-builder Create an ; from a key and a value.Fbuffer-builder Create an ; from a key and a value. The key is an ASCII-7, unescaped, zero-terminated g.WARNING: This function is unsafe. If the key is NOT zero-terminated, then an access violation might result. If the key is not a sequence of unescaped ASCII characters, the resulting JSON document will be illegal.This function is provided for maximum performance in the common case that object keys are ASCII-7. It achieves performance by avoiding the CAF for a Text literal and avoiding the need to transcode UTF-16 to UTF-8 and escape.To use this function, the calling source file must have the MagicHash extension enabled.  data Friend = Friend { fId :: !Int , fName :: !Text } deriving (Eq, Show) instance ToJson Friend where toJson friend = toJson $ "id"# .=# fId friend <> "name"# .=# fName friend Gbuffer-builderSerialize any h as a JSON array. This is generally slower than directly calling @ on a list or d, but it will convert any h type into an array.Hbuffer-builderRepresents a JSON "null".Ibuffer-builderUnsafely convert a # into a JSON value. This function does not escape, quote, or decorate the string in any way. This function is unsafe; because you can trivially use it to generate illegal JSON.Jbuffer-builderUnsafely convert a # into a JSON string. This function does not escape, quote, or decorate the string in any way. This function is unsafe; because you can trivially use it to generate illegal JSON.A?@B><=;CEFDGHIJLKA?@B><=;CEFDGHIJLKD8E8F8      !"#$%&'()*+,-#! "./0123456789:;<=>?@ABCDE2FGHIJKLMNOPQRSTUVWXYZ[Y\[]^_`abcdefghijk`lm]no`lp-buffer-builder-0.2.4.9-3BPs4QL6OMyHME7aIzkXfSData.BufferBuilderData.BufferBuilder.Utf8Data.BufferBuilder.Jsonbuffer-builder Data.Monoid<>OptionsinitialCapacitytrimFinalBuffer BufferBuilderrunBufferBuilderrunBufferBuilder'runBufferBuilderWithOptionsrunBufferBuilderWithOptions'calculateLength currentLength appendByte appendChar8appendBS appendLBS appendLiteralunsafeAppendLiteralN appendByte7 appendChar7 appendBS7appendLiteral7unsafeAppendLiteralN7appendCharUtf8appendStringUtf8appendDecimalSignedIntappendDecimalDoubleappendEscapedJsonappendEscapedJsonLiteralappendEscapedJsonTextappendUrlEncoded$fMonadBufferBuilder$fApplicativeBufferBuilder$fFunctorBufferBuilder!$fExceptionBufferOutOfMemoryError$fShowBufferOutOfMemoryError Utf8BuilderrunUtf8Builder appendText appendString appendCharunsafeAppendBufferBuilderunsafeAppendByteunsafeAppendChar8unsafeAppendLiteralunsafeAppendBS$fFunctorUtf8Builder$fApplicativeUtf8Builder$fMonadUtf8Builder ObjectBuilder ToJsonString toJsonString JsonStringToJsontoJsonValue encodeJson emptyObjectrow.=.=#array nullValueunsafeValueUtf8BuilderunsafeStringUtf8BuilderunsafeAppendUtf8Builder $fToJsonInt$fToJsonDouble $fToJsonText $fToJsonMaybe $fToJsonBool $fToJsonValue$fToJsonVector$fToJsonVector0$fToJsonVector1$fToJsonVector2 $fToJsonList$fToJsonJsonString$fToJsonStringText$fToJsonStringJsonString$fToJsonHashMap$fToJsonObjectBuilder$fMonoidObjectBuilder$fSemigroupObjectBuilder*bytestring-0.12.2.0-DYd1yUTywj4J0IGT3WPznuData.ByteString.Internal.Type ByteStringData.ByteString.Lazy.Internalghc-prim GHC.TypesCharbaseGHC.BaseString!text-2.1.2-HpFCCJ7g1i1EgIdwpKMF9rData.Text.InternalText%vector-0.13.2.0-IPEV7NEp15jRA8mYNKEJb Data.VectorVector2unordered-containers-0.2.20-3kDS1koijVk61nfa0ekbtNData.HashMap.InternalHashMap Data.FoldablenullGHC.PrimAddr#Foldable