# Functions
AppendRequest appends request to byte slice as RESP request (ie as array of strings).
ArgToString returns string representataion of an argument.
AsError casts interface to error (if it is error).
AsErrorx casts interface to *errorx.Error.
Blocking returns true if command is known to be blocking.
CheckRequest checks requests command and arguments to be compatible with connector.
Dangerous returns true if command is not safe to use with the connector.
ForbiddenCommand returns true if command is not allowed to run.
ReadResponse reads single RESP answer from bufio.Reader.
ReplicaSafe returns true if command is readonly and "safe to run on replica".
Req - convenient wrapper to create Request.
ScanResponse parses response of Scan command, returns iterator and array of keys.
TransactionResponse parses response of EXEC command, returns array of answers.
# Variables
CollectTrace - should Sync and SyncCtx wrappers collect stack traces on a call side.
EKAddress - address of redis that has a problems.
EKArgPos - set by request writer and checker to argument position which could not be serialized.
EKLine - set by response parser for unrecognized header lines.
EKMovedTo - set by response parser for MOVED and ASK responses.
EKRequest - request that triggered error.
EKRequests - batch requests that triggered error.
EKResponse - unexpected response.
EKSlot - set by response parser for MOVED and ASK responses.
EKVal - set by request writer and checker to argument value which could not be serialized.
ErrArgumentType - argument is not serializable.
ErrAsk - ASK response.
ErrBatchFormat - some other command in batch is malformed.
ErrCommandForbidden - command is blocking or dangerous.
ErrContextClosed - context were explicitly closed (or connection / cluster were shut down).
ErrContextIsNil - context is not passed to constructor.
ErrExecAbort - EXEC returns EXECABORT.
ErrExecEmpty - EXEC returns nil (WATCH failed) (it is strange, cause we don't support WATCH).
ErrHeaderlineEmpty - header line is empty.
ErrHeaderlineTooLarge - header line too large.
ErrIntegerParsing - integer malformed.
ErrIO - io error: read/write error, or timeout, or connection closed while reading/writing It is not known if request were processed or not.
ErrLoading - redis didn't finish start.
ErrMoved - MOVED response.
ErrNoAddressProvided - no address is given to constructor.
ErrNoFinalRN - no final "\r\n".
ErrNoSlotKey - no key to determine cluster slot.
ErrOpts - options are wrong.
Errors is a root namespaces of all redispipe errors.
ErrPing - ping receives wrong response.
ErrRequest - request malformed.
ErrRequestCancelled - request already cancelled.
ErrResponse - response malformed.
ErrResponseFormat - response is not valid Redis response.
ErrResponseUnexpected - response is valid redis response, but its structure/type unexpected.
ErrResult - just regular redis response.
ErrTraitClusterMove signals that error happens due to cluster rebalancing.
ErrTraitConnectivity marks all networking and io errors.
ErrTraitNotSent signals request were not written to wire.
ErrTryAgain - EXEC returns TryAgain.
ErrUnknownHeaderType - unknown header type.
ScanEOF is error returned by Sync wrappers when iteration exhausted.
# Structs
ChanFuture - future implemented with channel as signal of fulfillment.
ChanFutured wraps Sender and provides asynchronous interface through future implemented with channel.
ChanTransaction - wrapper over ChanFuture with additional convenient method.
Request represents request to be passed to redis.
ScannerBase is internal "parent" object for scanner implementations.
ScanOpts is options for scanning.
Sync provides convenient synchronouse interface over asynchronouse Sender.
SyncCtx (like Sync) provides convenient synchronous interface over asynchronous Sender.
SyncCtxIterator is synchronous iterator over repeating *SCAN command.
SyncIterator is synchronous iterator over repeating *SCAN command.
# Type aliases
ChanFutures - implementation of Future over slice of *ChanFuture.
FuncFuture simple wrapper that makes Future from function.