!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ SafeFT%&Record/Tuple conversion. For example: data Peer = Peer { peerAddr :: IP , peerRPC :: IP , peerDC :: Text , peerRack :: Text } deriving Show recordInstance ''Peer map asRecord <$> performQuery "SELECT peer, rpc_address, data_center, rack FROM system.peers" MThe generated type-class instance maps between record and tuple constructors: type instance TupleType Peer = (IP, IP, Text, Text) instance Record Peer where asTuple (Peer a b c d) = (a, b, c, d) asRecord (a, b, c, d) = Peer a b c d SafeVNone+}6Type tag for schema queries, i.e. 'QueryString S a b'.5Type tag for write queries, i.e. 'QueryString W a b'.4Type tag for read queries, i.e. 'QueryString R a b'.#Tag some value with a phantom type. hA CQL value. The various constructors correspond to CQL data-types for individual columns in Cassandra.8 The type of a single CQL column.T8An opcode is a tag to distinguish protocol frame bodies.eConsistency level.See: Uhttps://docs.datastax.com/en/cassandra/latest/cassandra/dml/dmlConfigConsistency.html ConsistencynOnly for write queries.oOnly for read queries.pOnly for read queries.z2The CQL version (not the binary protocol version).}CQL binary protocol version.~ version 3 version 4!ID representing a prepared query.<Opaque token passed to the server to continue result paging. %$#"! &'()*+,-./012345678SRQPOMLKJIHGFEDCBA@?>=<;:9NTdcba`_^]\[ZYXWVUeponlkhjigmfqrutsvyxwz{|}~   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde fghijklmnopqrstuvwxyz{|}~NoneN06(None>' KType representing header flags. Flags form a monoid and can be used as in compress <> tracing <> mempty.QStreams allow multiplexing of requests over a single communication channel. The  correlates Requests with Responses.*The type denoting a protocol frame length.A request frame header.A response frame header.Protocol frame header.FDeserialise a frame header using the version specific decoding format.QCreate a StreamId from the given integral value. In version 2, a StreamId is an  and in version 3 an .$Convert the stream ID to an integer.7Compression flag. If set, the frame body is compressed.Tracing flag. If a request support tracing and the tracing flag was set, the response to this request will have the tracing flag set and contain tracing information.&Check if a particular flag is present. None;=VI2A type that can be converted from and to some CQL  .RThis type-class is used to map custom types to Cassandra data-types. For example: newtype MyType = MyType Int32 instance Cql MyType where ctype = Tagged IntColumn toCql (MyType i) = CqlInt i fromCql (CqlInt i) = Right (MyType i) fromCql _ = Left "Expected CqlInt" the column-type of amap a to some CQL data-typemap a CQL value back to aPlease note that due to the fact that Cassandra internally represents empty collection type values (i.e. lists, maps and sets) as null, we can not distinguish Just [] from Nothing on response decoding.NoneVJA row is a vector of  s.Convert a row element.  None1V[Error response. IMessages send by the server without request, if the connection has been Registered to receive such events.."The column specification. Part of 4 unless  skipMetaData in  QueryParams was True.4 Part of a  RowsResult. Describes the result set.:Query response.@<The startup options supported by the server. Response of an Options request.B6The server is ready to process queries. Response of a Startup request.D1Indicates the success of an authentication phase.F'A server-send authentication challenge.H#The server requires authentication.J6The type corresponding to the protocol response frame.The type parameter kq denotes the kind of response. It is present to allow distinguishing read operations from write operations. Use  for read,  for write and  for schema related operations.a" represents the argument type and b# the return type of this response.S)Get server warnings from response if any.T)Get server trace ID from response if any.UDeserialise a J from the given .}      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc,      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR None&'0Vd`Consistency level for the serial phase of conditional updates (aka "lightweight transactions").See: [https://docs.datastax.com/en/cassandra/latest/cassandra/dml/dmlConfigSerialConsistency.htmlSerialConsistencye/Default. Quorum-based linearizable consistency.fLike d4 except confined to a single (logical) data center.gQuery parameters.i#(Regular) consistency level to use.j$Whether to omit the metadata in the Response of the query. This is an optimisation only relevant for use with prepared queries, for which the metadata obtained from the PreparedResult may be reused.k"The bound parameters of the query.l$The desired maximum result set size.maThe current paging state that determines the "offset" of the results to return for a read query.n|Serial consistency level to use for conditional updates (aka "lightweight transactions"). Irrelevant for any other queries.oDWhether tracing should be enabled for the query, in which case the Response will carry a traceId.pZA GADT to unify queries and prepared queries both of which can be used in batch requests.t0default, uses a batch log for atomic applicationuskip the batch logv used for batched counter updatesw@Allows executing a list of queries (prepared or not) as a batch.}Event types to register.~0events related to change in the cluster topology'events related to change of node statusevents related to schema changeRRegister's the connection this request is made through, to receive server events.)Prepare a query for later execution (cf. ).Executes a prepared query.#A CQL query (select, insert, etc.)."An options request, send prior to * to request the server's startup options.BA request send in response to a previous authentication challenge.A startup request which is used when initialising a connection to the server. It specifies the CQL version to use and optionally the compression algorithm.5The type corresponding to the protocol request frame.The type parameter kp denotes the kind of request. It is present to allow distinguishing read operations from write operations. Use  for read,  for write and  for schema related operations.a" represents the argument type and b! the return type of this request.Serialise the given request, optionally using compression. The result is either an error description in case of failure or a binary protocol frame, including ,  and body.Get the protocol T corresponding to the given ./protocol version, which determines the encodingcompression to useenable/disable tracingthe stream Id to usethe actual request to serialiseCdefghkijlmnopqrstuvwxyz{|}~defghijklmnopqrstuvwxyz{|}~None !"#$%&'()*+,-./012345678N9:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]^_`abcdefmgijhklnopqrstuvwxyz|{}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghkijlmnopqrstuvwxyz{|}~}~z{|vwxyqrstuefghijklmnopTUVWXYZ[\]^_`abcd89:;<=>?@ABCDEFGHIJKLMNOPQRS567234/01,-.)*+&'(  !"#$% }~ghijklmnodefwxyz{|pqrstuvJKLMNOPQRSTUBCYHIFGDEVWX:;<=>?456789./0123[\@AZ !"#*+,-$%&'()]^_`a     bc None(Z !"#$%&'()*+,-./012345678N9:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]^_`abcdefmgijhklnopqrstuvwxyz|{}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUdefghkijlmnopqrstuvwxyz{|}~Z}~z{|vwxyqrstuefghijklmnopTUVWXYZ[\]^_`abcd89:;<=>?@ABCDEFGHIJKLMNOPQRS567234/01,-.)*+&'(  !"#$% }~ghijklmnodefwxyz{|pqrstuvJKLMNOPQRSTUBCHIFGDE:;<=>?456789./0123@A !"#*+,-$%&'()        !"#$%&'()*+,-./011233455677899:;;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvvwxyz{|}~~                                                           ! " # $ % & ' ( ) * * + , - . / / 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 Y Z [ [ \ ] ^ _ ` a b c c d e f g h i i j k l m n o p q r r s s t t u u v v w w x x y z { | } ~                  ^ cql-4.0.0-6oDZ53BFn5lBlwyz9zm7eNDatabase.CQL.Protocol.InternalDatabase.CQL.Protocol.RecordDatabase.CQL.Protocol.Tuple.THDatabase.CQL.Protocol.TypesDatabase.CQL.Protocol.CodecDatabase.CQL.Protocol.HeaderDatabase.CQL.Protocol.ClassDatabase.CQL.Protocol.TupleDatabase.CQL.Protocol.ResponseDatabase.CQL.Protocol.RequestDatabase.CQL.ProtocolRecordasTupleasRecord TupleTyperecordInstanceSWRTaggeduntagValue CqlCustom CqlBooleanCqlInt CqlBigInt CqlVarIntCqlFloat CqlDecimal CqlDoubleCqlTextCqlInetCqlUuid CqlTimestampCqlAsciiCqlBlob CqlCounter CqlTimeUuidCqlMaybeCqlListCqlSetCqlMapCqlTupleCqlUdtCqlDateCqlTime CqlSmallInt CqlTinyIntMapfromMapSetfromSetTimeUuid fromTimeUuidCounter fromCounterBlobfromBlobAscii fromAscii ColumnType CustomColumn AsciiColumn BigIntColumn BlobColumn BooleanColumn CounterColumn DecimalColumn DoubleColumn FloatColumn IntColumn TextColumnTimestampColumn UuidColumn VarCharColumn VarIntColumnTimeUuidColumn InetColumn MaybeColumn ListColumn SetColumn MapColumn TupleColumn UdtColumn DateColumn TimeColumnSmallIntColumn TinyIntColumnOpCodeOcError OcStartupOcReadyOcAuthenticate OcOptions OcSupportedOcQueryOcResult OcPrepare OcExecute OcRegisterOcEventOcBatchOcAuthChallengeOcAuthResponse OcAuthSuccess ConsistencyAnyOneLocalOneTwoThreeQuorum LocalQuorumAll EachQuorumSerial LocalSerial Compression algorithmshrinkexpandCompressionAlgorithmSnappyLZ4None CqlVersionCqlv300VersionV3V4 QueryString unQueryStringQueryId unQueryId PagingState unPagingStateTableunTableKeyspace unKeyspace noCompressionretag encodeByte decodeByteencodeSignedBytedecodeSignedByte encodeShort decodeShortencodeSignedShortdecodeSignedShort encodeInt decodeInt encodeString decodeStringencodeLongStringdecodeLongString encodeBytes decodeBytesencodeShortBytesdecodeShortBytes encodeUUID decodeUUID encodeList decodeList encodeMap decodeMapencodeMultiMapdecodeMultiMapencodeSockAddrdecodeSockAddrencodeConsistencydecodeConsistency encodeOpCode decodeOpCodedecodeColumnTypeencodePagingStatedecodePagingStateputValuegetValuedecodeKeyspace decodeTable decodeQueryIdFlagsStreamIdLength lengthRepr HeaderTypeRqHeaderRsHeaderHeader headerTypeversionflagsstreamIdopCode bodyLength encodeHeader decodeHeaderheader encodeLength decodeLength mkStreamId fromStreamIdencodeStreamIddecodeStreamId encodeFlags decodeFlagscompresstracing customPayloadwarningisSetCqlctypetoCqlfromCqlTuplecountchecktuplestoreRowfromRowmkRow rowLength columnTypes WriteType WriteSimple WriteBatch WriteBatchLogWriteUnloggedBatch WriteCounterError AlreadyExistsBadCredentials ConfigErrorFunctionFailureInvalidIsBootstrapping Overloaded ProtocolError ServerError SyntaxError TruncateError Unauthorized Unprepared Unavailable ReadFailure ReadTimeout WriteFailure WriteTimeoutunavailMessageunavailConsistencyunavailNumRequiredunavailNumAliverFailureMessagerFailureConsistencyrFailureNumAckrFailureNumRequiredrFailureNumFailuresrFailureDataPresentrTimeoutMessagerTimeoutConsistencyrTimeoutNumAckrTimeoutNumRequiredrTimeoutDataPresentwFailureMessagewFailureConsistencywFailureNumAckwFailureNumRequiredwFailureNumFailureswFailureWriteTypewTimeoutMessagewTimeoutConsistencywTimeoutNumAckwTimeoutNumRequiredwTimeoutWriteType StatusChangeUpDownTopologyChangeNewNode RemovedNodeEvent TopologyEvent StatusEvent SchemaEventChangeKeyspaceChange TableChange TypeChangeFunctionChangeAggregateChange SchemaChange SchemaCreated SchemaUpdated SchemaDropped ColumnSpeckeyspacetable columnName columnTypeMetaData columnCount pagingState columnSpecsprimaryKeyIndiciesResult VoidResult RowsResultSetKeyspaceResultPreparedResultSchemaChangeResult SupportedReady AuthSuccess AuthChallenge AuthenticateResponseRsErrorRsReadyRsAuthenticateRsAuthChallenge RsAuthSuccess RsSupportedRsResultRsEventwarningstraceIdunpackdecodeAuthenticatedecodeAuthChallengedecodeAuthSuccess decodeReadydecodeSupported decodeResultdecodeMetaDatadecodeSchemaChange decodeChange decodeEventdecodeTopologyChangedecodeStatusChange decodeErrordecodeWriteTypeSerialConsistencyLocalSerialConsistency QueryParams consistency skipMetaDatavaluespageSizequeryPagingStateserialConsistency enableTracing BatchQuery BatchPrepared BatchType BatchLogged BatchUnLogged BatchCounterBatch batchType batchQuerybatchConsistencybatchSerialConsistency EventTypeTopologyChangeEventStatusChangeEventSchemaChangeEventRegisterPrepareExecuteQueryOptions AuthResponseStartupRequest RqStartup RqOptions RqRegisterRqBatch RqAuthResp RqPrepareRqQuery RqExecute encodeRequestpack getOpCode encodeStartupencodeAuthResponse encodeOptions encodeQuery encodeExecute encodePrepareencodeRegisterencodeEventType encodeBatchencodeBatchTypeencodeBatchQueryencodeQueryParams genInstances tupleInstance countDecl taggedDecl tupleDecl storeDeclgenCqlInstances cqlInstanceslitIntvarcontcon$$$:baseGHC.IntInt8Int16 $fCqlMaybe PrivateTupletypesbytestring-0.10.8.2Data.ByteString.Internal ByteString