<?xml version="1.0"?>
<doc>
    <assembly>
        <name>StackExchange.Redis</name>
    </assembly>
    <members>
        <member name="M:StackExchange.Redis.BufferReader.TryConsumeCRLF">
            <summary>
            Note that in results other than success, no guarantees are made about final state; if you care: snapshot
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ChannelMessage">
            <summary>
            Represents a message that is broadcast via pub/sub
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.ToString">
            <summary>
            See Object.ToString
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.GetHashCode">
            <summary>
            See Object.GetHashCode
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.Equals(System.Object)">
            <summary>
            See Object.Equals
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare.</param>
        </member>
        <member name="P:StackExchange.Redis.ChannelMessage.SubscriptionChannel">
            <summary>
            The channel that the subscription was created from
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ChannelMessage.Channel">
            <summary>
            The channel that the message was broadcast to
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ChannelMessage.Message">
            <summary>
            The value that was broadcast
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ChannelMessageQueue">
            <summary>
            Represents a message queue of ordered pub/sub notifications
            </summary>
            <remarks>To create a ChannelMessageQueue, use ISubscriber.Subscribe[Async](RedisKey)</remarks>
        </member>
        <member name="P:StackExchange.Redis.ChannelMessageQueue.Channel">
            <summary>
            The Channel that was subscribed for this queue
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.ToString">
            <summary>
            See Object.ToString
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ChannelMessageQueue.Completion">
            <summary>
            An awaitable task the indicates completion of the queue (including drain of data)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.ReadAsync(System.Threading.CancellationToken)">
            <summary>
            Consume a message from the channel.
            </summary>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.TryRead(StackExchange.Redis.ChannelMessage@)">
            <summary>
            Attempt to synchronously consume a message from the channel.
            </summary>
            <param name="item">The <see cref="T:StackExchange.Redis.ChannelMessage"/> read from the Channel.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.TryGetCount(System.Int32@)">
            <summary>
            Attempt to query the backlog length of the queue.
            </summary>
            <param name="count">The (approximate) count of items in the Channel.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.OnMessage(System.Action{StackExchange.Redis.ChannelMessage})">
            <summary>
            Create a message loop that processes messages sequentially.
            </summary>
            <param name="handler">The handler to run when receiving a message.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.OnMessage(System.Func{StackExchange.Redis.ChannelMessage,System.Threading.Tasks.Task})">
            <summary>
            Create a message loop that processes messages sequentially.
            </summary>
            <param name="handler">The handler to execute when receiving a message.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.Unsubscribe(StackExchange.Redis.CommandFlags)">
            <summary>
            Stop receiving messages on this channel.
            </summary>
            <param name="flags">The flags to use when unsubscribing.</param>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessageQueue.UnsubscribeAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Stop receiving messages on this channel.
            </summary>
            <param name="flags">The flags to use when unsubscribing.</param>
        </member>
        <member name="T:StackExchange.Redis.ClientInfo">
            <summary>
            Represents the state of an individual client connection to redis
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Address">
            <summary>
            Address (host and port) of the client
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.AgeSeconds">
            <summary>
            total duration of the connection in seconds
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Database">
            <summary>
            current database ID
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Flags">
            <summary>
            The flags associated with this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.FlagsRaw">
             <summary>
             The client flags can be a combination of:
            
             A: connection to be closed ASAP
             b: the client is waiting in a blocking operation
             c: connection to be closed after writing entire reply
             d: a watched keys has been modified - EXEC will fail
             i: the client is waiting for a VM I/O (deprecated)
             M: the client is a master
             N: no specific flag set
             O: the client is a replica in MONITOR mode
             P: the client is a Pub/Sub subscriber
             r: the client is in readonly mode against a cluster node
             S: the client is a normal replica server
             U: the client is connected via a Unix domain socket
             x: the client is in a MULTI/EXEC context
             </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Host">
            <summary>
            The host of the client (typically an IP address)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.IdleSeconds">
            <summary>
            idle time of the connection in seconds
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.LastCommand">
            <summary>
             last command played
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Name">
            <summary>
            The name allocated to this connection, if any
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.PatternSubscriptionCount">
            <summary>
            number of pattern matching subscriptions
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Port">
            <summary>
            The port of the client
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Raw">
            <summary>
            The raw content from redis
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.SubscriptionCount">
            <summary>
            number of channel subscriptions
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.TransactionCommandLength">
            <summary>
            number of commands in a MULTI/EXEC context
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Id">
            <summary>
            an unique 64-bit client ID (introduced in Redis 2.8.12).
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ClientInfo.ToString">
            <summary>
            Format the object as a string
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.ClientType">
            <summary>
            The class of the connection
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SlotRange">
            <summary>
            Indicates a range of slots served by a cluster node
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.#ctor(System.Int32,System.Int32)">
            <summary>
            Create a new SlotRange value
            </summary>
            <param name="from">The slot ID to start at.</param>
            <param name="to">The slot ID to end at.</param>
        </member>
        <member name="P:StackExchange.Redis.SlotRange.From">
            <summary>
            The start of the range (inclusive)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SlotRange.To">
            <summary>
            The end of the range (inclusive)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.op_Inequality(StackExchange.Redis.SlotRange,StackExchange.Redis.SlotRange)">
            <summary>
            Indicates whether two ranges are not equal
            </summary>
            <param name="x">The first slot range.</param>
            <param name="y">The second slot range.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.op_Equality(StackExchange.Redis.SlotRange,StackExchange.Redis.SlotRange)">
            <summary>
            Indicates whether two ranges are equal.
            </summary>
            <param name="x">The first slot range.</param>
            <param name="y">The second slot range.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.TryParse(System.String,StackExchange.Redis.SlotRange@)">
            <summary>
            Try to parse a string as a range.
            </summary>
            <param name="range">The range string to parse, e.g."1-12".</param>
            <param name="value">The parsed <see cref="T:StackExchange.Redis.SlotRange"/>, if successful.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.CompareTo(StackExchange.Redis.SlotRange)">
            <summary>
            Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.
            </summary>
            <param name="other">The other slot range to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.Equals(System.Object)">
            <summary>
            See Object.Equals
            </summary>
            <param name="obj">The other slot range to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.Equals(StackExchange.Redis.SlotRange)">
            <summary>
            Indicates whether two ranges are equal
            </summary>
            <param name="other">The other slot range to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ClusterConfiguration">
            <summary>
            Describes the state of the cluster as reported by a single node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterConfiguration.Nodes">
            <summary>
            Gets all nodes contained in the configuration
            </summary>
            <returns></returns>
        </member>
        <member name="P:StackExchange.Redis.ClusterConfiguration.Origin">
            <summary>
            The node that was asked for the configuration
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterConfiguration.Item(System.Net.EndPoint)">
            <summary>
            Obtain the node relating to a specified endpoint
            </summary>
            <param name="endpoint">The endpoint to get a cluster node from.</param>
        </member>
        <member name="M:StackExchange.Redis.ClusterConfiguration.GetBySlot(System.Int32)">
            <summary>
            Gets the node that serves the specified slot.
            </summary>
            <param name="slot">The slot ID to get a node by.</param>
        </member>
        <member name="M:StackExchange.Redis.ClusterConfiguration.GetBySlot(StackExchange.Redis.RedisKey)">
            <summary>
            Gets the node that serves the specified key's slot.
            </summary>
            <param name="key">The key to identify a node by.</param>
        </member>
        <member name="T:StackExchange.Redis.ClusterNode">
            <summary>
            Represents the configuration of a single node in a cluster configuration.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.Children">
            <summary>
            Gets all child nodes of the current node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.EndPoint">
            <summary>
            Gets the endpoint of the current node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsMyself">
            <summary>
            Gets whether this is the node which responded to the CLUSTER NODES request
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsSlave">
            <summary>
            Gets whether this node is a replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsReplica">
            <summary>
            Gets whether this node is a replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsNoAddr">
            <summary>
            Gets whether this node is flagged as noaddr
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsConnected">
            <summary>
            Gets the node's connection status
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.NodeId">
            <summary>
            Gets the unique node-id of the current node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.Parent">
            <summary>
            Gets the parent node of the current node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.ParentNodeId">
            <summary>
            Gets the unique node-id of the parent of the current node
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.Raw">
            <summary>
            The configuration as reported by the server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.Slots">
            <summary>
            The slots owned by this server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.CompareTo(StackExchange.Redis.ClusterNode)">
            <summary>
            Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.ClusterNode"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.Equals(System.Object)">
            <summary>
            See Object.Equals
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.ClusterNode"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.Equals(StackExchange.Redis.ClusterNode)">
            <summary>
            Indicates whether two ClusterNode instances are equivalent
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.ClusterNode"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.GetHashCode">
            <summary>
            See object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="T:StackExchange.Redis.CommandMap">
            <summary>
            Represents the commands mapped on a particular configuration
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.Default">
            <summary>
            The default commands specified by redis
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.Twemproxy">
            <summary>
            The commands available to <a href="twemproxy">https://github.com/twitter/twemproxy</a>
            </summary>
            <remarks>https://github.com/twitter/twemproxy/blob/master/notes/redis.md</remarks>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.SSDB">
            <summary>
            The commands available to <a href="ssdb">http://www.ideawu.com/ssdb/</a>
            </summary>
            <remarks>http://www.ideawu.com/ssdb/docs/redis-to-ssdb.html</remarks>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.Sentinel">
            <summary>
            The commands available to <a href="Sentinel">https://redis.io/topics/sentinel</a>
            </summary>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.CommandMap.Create(System.Collections.Generic.Dictionary{System.String,System.String})">
            <summary>
            Create a new CommandMap, customizing some commands
            </summary>
            <param name="overrides">The commands to override.</param>
        </member>
        <member name="M:StackExchange.Redis.CommandMap.Create(System.Collections.Generic.HashSet{System.String},System.Boolean)">
            <summary>
            Creates a CommandMap by specifying which commands are available or unavailable
            </summary>
            <param name="commands">The commands to specify.</param>
            <param name="available">Whether the commands are available or excluded.</param>
        </member>
        <member name="M:StackExchange.Redis.CommandMap.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="T:StackExchange.Redis.CommandTrace">
            <summary>
            Represents the information known about long-running commands
            </summary>    
        </member>
        <member name="P:StackExchange.Redis.CommandTrace.Arguments">
            <summary>
            The array composing the arguments of the command.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CommandTrace.Duration">
            <summary>
            The amount of time needed for its execution
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CommandTrace.Time">
            <summary>
            The time at which the logged command was processed.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CommandTrace.UniqueId">
            <summary>
            A unique progressive identifier for every slow log entry.
            </summary>
            <remarks>The entry's unique ID can be used in order to avoid processing slow log entries multiple times (for instance you may have a script sending you an email alert for every new slow log entry). The ID is never reset in the course of the Redis server execution, only a server restart will reset it.</remarks>
        </member>
        <member name="M:StackExchange.Redis.CommandTrace.GetHelpUrl">
            <summary>
            Deduces a link to the redis documentation about the specified command
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Condition">
            <summary>
            Describes a pre-condition used in a redis transaction
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given hash-field must have the specified value.
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="hashField">The field in the hash to check.</param>
            <param name="value">The value that the hash field must match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given hash-field must exist.
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="hashField">The field in the hash to check.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashNotEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given hash-field must not have the specified value.
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="hashField">The field in the hash to check.</param>
            <param name="value">The value that the hash field must not match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashNotExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given hash-field must not exist.
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="hashField">The field in the hash that must not exist.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.KeyExists(StackExchange.Redis.RedisKey)">
            <summary>
            Enforces that the given key must exist.
            </summary>
            <param name="key">The key that must exist.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.KeyNotExists(StackExchange.Redis.RedisKey)">
            <summary>
            Enforces that the given key must not exist
            </summary>
            <param name="key">The key that must not exist.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListIndexEqual(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given list index must have the specified value 
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="index">The position in the list to check.</param>
            <param name="value">The value of the list position that must match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListIndexExists(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given list index must exist
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="index">The position in the list that must exist.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListIndexNotEqual(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given list index must not have the specified value 
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="index">The position in the list to check.</param>
            <param name="value">The value of the list position must not match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListIndexNotExists(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given list index must not exist
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="index">The position in the list that must not exist.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StringEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given key must have the specified value
            </summary>
            <param name="key">The key to check.</param>
            <param name="value">The value that must match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StringNotEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given key must not have the specified value
            </summary>
            <param name="key">The key to check.</param>
            <param name="value">The value that must not match.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given hash length is a certain value
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="length">The length the hash must have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given hash length is less than a certain value
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="length">The length the hash must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.HashLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given hash length is greater than a certain value
            </summary>
            <param name="key">The key of the hash to check.</param>
            <param name="length">The length the hash must be greater than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StringLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given string length is a certain value
            </summary>
            <param name="key">The key of the string to check.</param>
            <param name="length">The length the string must be equal to.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StringLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given string length is less than a certain value
            </summary>
            <param name="key">The key of the string to check.</param>
            <param name="length">The length the string must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StringLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given string length is greater than a certain value
            </summary>
            <param name="key">The key of the string to check.</param>
            <param name="length">The length the string must be greater than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given list length is a certain value
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="length">The length the list must be equal to.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given list length is less than a certain value
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="length">The length the list must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.ListLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given list length is greater than a certain value
            </summary>
            <param name="key">The key of the list to check.</param>
            <param name="length">The length the list must be greater than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SetLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given set cardinality is a certain value
            </summary>
            <param name="key">The key of the set to check.</param>
            <param name="length">The length the set must be equal to.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SetLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given set cardinality is less than a certain value
            </summary>
            <param name="key">The key of the set to check.</param>
            <param name="length">The length the set must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SetLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given set cardinality is greater than a certain value
            </summary>
            <param name="key">The key of the set to check.</param>
            <param name="length">The length the set must be greater than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SetContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given set contains a certain member
            </summary>
            <param name="key">The key of the set to check.</param>
            <param name="member">The member the set must contain.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SetNotContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given set does not contain a certain member
            </summary>
            <param name="key">The key of the set to check.</param>
            <param name="member">The member the set must not contain.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given sorted set cardinality is a certain value
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be equal to.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthEqual(StackExchange.Redis.RedisKey,System.Int64,System.Double,System.Double)">
            <summary>
            Enforces that the given sorted set contains a certain number of members with scores in the given range
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be equal to.</param>
            <param name="min">Minimum inclusive score.</param>
            <param name="max">Maximum inclusive score.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given sorted set cardinality is less than a certain value
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthLessThan(StackExchange.Redis.RedisKey,System.Int64,System.Double,System.Double)">
            <summary>
            Enforces that the given sorted set contains less than a certain number of members with scores in the given range
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be equal to.</param>
            <param name="min">Minimum inclusive score.</param>
            <param name="max">Maximum inclusive score.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given sorted set cardinality is greater than a certain value
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be greater than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64,System.Double,System.Double)">
            <summary>
            Enforces that the given sorted set contains more than a certain number of members with scores in the given range
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="length">The length the sorted set must be equal to.</param>
            <param name="min">Minimum inclusive score.</param>
            <param name="max">Maximum inclusive score.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set contains a certain member
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="member">The member the sorted set must contain.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetNotContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set does not contain a certain member
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="member">The member the sorted set must not contain.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set member must have the specified score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="member">The member the sorted set to check.</param>
            <param name="score">The score that member must have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetNotEqual(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set member must not have the specified score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="member">The member the sorted set to check.</param>
            <param name="score">The score that member must not have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetScoreExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set must have the given score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="score">The score that the sorted set must have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetScoreNotExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set must not have the given score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="score">The score that the sorted set must not have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetScoreExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set must have the specified count of the given score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="score">The score that the sorted set must have.</param>
            <param name="count">The number of members which sorted set must have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.SortedSetScoreNotExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Enforces that the given sorted set must not have the specified count of the given score.
            </summary>
            <param name="key">The key of the sorted set to check.</param>
            <param name="score">The score that the sorted set must not have.</param>
            <param name="count">The number of members which sorted set must not have.</param>
        </member>
        <member name="T:StackExchange.Redis.ConditionResult">
            <summary>
            Indicates the status of a condition as part of a transaction
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConditionResult.WasSatisfied">
            <summary>
            Indicates whether the condition was satisfied
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ConfigurationOptions">
            <summary>
            The options relevant to a set of redis connections
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConfigurationOptions.CertificateSelection">
            <summary>
            A LocalCertificateSelectionCallback delegate responsible for selecting the certificate used for authentication; note
            that this cannot be specified in the configuration-string.
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConfigurationOptions.CertificateValidation">
            <summary>
            A RemoteCertificateValidationCallback delegate responsible for validating the certificate supplied by the remote party; note
            that this cannot be specified in the configuration-string.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.AbortOnConnectFail">
            <summary>
            Gets or sets whether connect/configuration timeouts should be explicitly notified via a TimeoutException
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.AllowAdmin">
            <summary>
            Indicates whether admin operations should be allowed
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.AsyncTimeout">
            <summary>
            Specifies the time in milliseconds that the system should allow for asynchronous operations (defaults to SyncTimeout)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.UseSsl">
            <summary>
            Indicates whether the connection should be encrypted
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ChannelPrefix">
            <summary>
            Automatically encodes and decodes channels
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.CheckCertificateRevocation">
            <summary>
            A Boolean value that specifies whether the certificate revocation list is checked during authentication.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.TrustIssuer(System.String)">
            <summary>
            Create a certificate validation check that checks against the supplied issuer even if not known by the machine
            </summary>
            <param name="issuerCertificatePath">The file system path to find the certificate at.</param>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.TrustIssuer(System.Security.Cryptography.X509Certificates.X509Certificate2)">
            <summary>
            Create a certificate validation check that checks against the supplied issuer even if not known by the machine
            </summary>
            <param name="issuer">The issuer to trust.</param>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ClientName">
            <summary>
            The client name to use for all connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ConnectRetry">
            <summary>
            The number of times to repeat the initial connect cycle if no servers respond promptly
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.CommandMap">
            <summary>
            The command-map associated with this configuration
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ConfigurationChannel">
            <summary>
            Channel to use for broadcasting and listening for configuration change notification
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ConnectTimeout">
            <summary>
            Specifies the time in milliseconds that should be allowed for connection (defaults to 5 seconds unless SyncTimeout is higher)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.DefaultDatabase">
            <summary>
            Specifies the default database to be used when calling ConnectionMultiplexer.GetDatabase() without any parameters
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.DefaultVersion">
            <summary>
            The server version to assume
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.EndPoints">
            <summary>
            The endpoints defined for this configuration
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.HighPrioritySocketThreads">
            <summary>
            Use ThreadPriority.AboveNormal for SocketManager reader and writer threads (true by default). If false, ThreadPriority.Normal will be used.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.KeepAlive">
            <summary>
            Specifies the time in seconds at which connections should be pinged to ensure validity
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.User">
            <summary>
            The user to use to authenticate with the server.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.Password">
            <summary>
            The password to use to authenticate with the server.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.PreserveAsyncOrder">
            <summary>
            Specifies whether asynchronous operations should be invoked in a way that guarantees their original delivery order
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.Proxy">
            <summary>
            Type of proxy to use (if any); for example Proxy.Twemproxy.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ReconnectRetryPolicy">
            <summary>
            The retry policy to be used for connection reconnects
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ResolveDns">
            <summary>
            Indicates whether endpoints should be resolved via DNS before connecting.
            If enabled the ConnectionMultiplexer will not re-resolve DNS
            when attempting to re-connect after a connection failure.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ResponseTimeout">
            <summary>
            Specifies the time in milliseconds that the system should allow for responses before concluding that the socket is unhealthy
            (defaults to SyncTimeout)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ServiceName">
            <summary>
            The service name used to resolve a service via sentinel.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.SocketManager">
            <summary>
            Gets or sets the SocketManager instance to be used with these options; if this is null a shared cross-multiplexer SocketManager
            is used
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.Ssl">
            <summary>
            Indicates whether the connection should be encrypted
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.SslHost">
            <summary>
            The target-host to use when validating SSL certificate; setting a value here enables SSL mode
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.SslProtocols">
            <summary>
            Configures which Ssl/TLS protocols should be allowed.  If not set, defaults are chosen by the .NET framework.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.SyncTimeout">
            <summary>
            Specifies the time in milliseconds that the system should allow for synchronous operations (defaults to 5 seconds)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.TieBreaker">
            <summary>
            Tie-breaker used to choose between masters (must match the endpoint exactly)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.WriteBuffer">
            <summary>
            The size of the output buffer to use
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ConfigCheckSeconds">
            <summary>
            Check configuration every n seconds (every minute by default)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.Parse(System.String)">
            <summary>
            Parse the configuration from a comma-delimited configuration string
            </summary>
            <param name="configuration">The configuration string to parse.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="configuration"/> is <c>null</c>.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="configuration"/> is empty.</exception>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.Parse(System.String,System.Boolean)">
            <summary>
            Parse the configuration from a comma-delimited configuration string
            </summary>
            <param name="configuration">The configuration string to parse.</param>
            <param name="ignoreUnknown">Whether to ignore unknown elements in <paramref name="configuration"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="configuration"/> is <c>null</c>.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="configuration"/> is empty.</exception>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.Clone">
            <summary>
            Create a copy of the configuration
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.SetDefaultPorts">
            <summary>
            Resolve the default port for any endpoints that did not have a port explicitly specified
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.SetSentinelDefaults">
            <summary>
            Sets default config settings required for sentinel usage
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.ToString">
            <summary>
            Returns the effective configuration string for this configuration, including Redis credentials.
            </summary>
            <remarks>
            Includes password to allow generation of configuration strings used for connecting multiplexer.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.ToString(System.Boolean)">
            <summary>
            Returns the effective configuration string for this configuration
            with the option to include or exclude the password from the string.
            </summary>
            <param name="includePassword">Whether to include the password.</param>
        </member>
        <member name="T:StackExchange.Redis.ConnectionCounters">
            <summary>
            Illustrates the counters associated with an individual connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.CompletedAsynchronously">
            <summary>
            The number of operations that have been completed asynchronously
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.CompletedSynchronously">
            <summary>
            The number of operations that have been completed synchronously
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.ConnectionType">
            <summary>
            The type of this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.FailedAsynchronously">
            <summary>
            The number of operations that failed to complete asynchronously
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.IsEmpty">
            <summary>
            Indicates if there are any pending items or failures on this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.NonPreferredEndpointCount">
            <summary>
            Indicates the total number of messages despatched to a non-preferred endpoint, for example sent to a master
            when the caller stated a preference of replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.OperationCount">
            <summary>
            The number of operations performed on this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.PendingUnsentItems">
            <summary>
            Operations that have been requested, but which have not yet been sent to the server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.ResponsesAwaitingAsyncCompletion">
            <summary>
            Operations for which the response has been processed, but which are awaiting asynchronous completion
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.SentItemsAwaitingResponse">
            <summary>
            Operations that have been sent to the server, but which are awaiting a response
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.SocketCount">
            <summary>
            The number of sockets used by this logical connection (total, including reconnects)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.Subscriptions">
            <summary>
            The number of subscriptions (with and without patterns) currently held against this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.TotalOutstanding">
            <summary>
            Indicates the total number of outstanding items against this connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionCounters.WriterCount">
            <summary>
            Indicates the total number of writers items against this connection
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionCounters.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ConnectionFailedEventArgs">
            <summary>
            Contains information about a server connection failure
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionFailedEventArgs.#ctor(System.Object,System.Net.EndPoint,StackExchange.Redis.ConnectionType,StackExchange.Redis.ConnectionFailureType,System.Exception,System.String)">
            <summary>
            This constructor is only for testing purposes.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="endPoint">Redis endpoint.</param>
            <param name="connectionType">Redis connection type.</param>
            <param name="failureType">Redis connection failure type.</param>
            <param name="exception">The exception occured.</param>
            <param name="physicalName">Connection physical name.</param>
        </member>
        <member name="P:StackExchange.Redis.ConnectionFailedEventArgs.ConnectionType">
            <summary>
            Gets the connection-type of the failing connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionFailedEventArgs.EndPoint">
            <summary>
            Gets the failing server-endpoint
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionFailedEventArgs.Exception">
            <summary>
            Gets the exception if available (this can be null)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionFailedEventArgs.FailureType">
            <summary>
            The type of failure
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionFailedEventArgs.ToString">
            <summary>
            Returns the physical name of the connection.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ConnectionMultiplexer">
            <summary>
            Represents an inter-related group of connections to redis servers
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SetFeatureFlag(System.String,System.Boolean)">
            <summary>
            Enables or disables a feature flag; this should only be used under support guidance, and should not be rapidly toggled
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetFeatureFlag(System.String)">
            <summary>
            Returns the state of a feature flag; this should only be used under support guidance
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionMultiplexer.AllowConnect">
            <summary>
            For debugging: when not enabled, servers cannot connect
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionMultiplexer.IgnoreConnect">
            <summary>
            For debugging: when not enabled, end-connect is silently ignored (to simulate a long-running connect)
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionMultiplexer._connectAttemptCount">
            <summary>
            Tracks overall connection multiplexer counts
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionMultiplexer._connectCompletedCount">
            <summary>
            Tracks overall connection multiplexer counts
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionMultiplexer._connectionCloseCount">
            <summary>
            Tracks overall connection multiplexer counts
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.Factory">
            <summary>
            Provides a way of overriding the default Task Factory. If not set, it will use the default Task.Factory.
            Useful when top level code sets it's own factory which may interfere with Redis queries.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetCounters">
            <summary>
            Get summary statistics associates with this server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.ClientName">
            <summary>
            Gets the client-name that will be used on all new connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.TryGetAzureRoleInstanceIdNoThrow">
            <summary>
            Tries to get the Roleinstance Id if Microsoft.WindowsAzure.ServiceRuntime is loaded.
            In case of any failure, swallows the exception and returns null
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.Configuration">
            <summary>
            Gets the configuration of the connection
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ErrorMessage">
            <summary>
            A server replied with an error message;
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ExportConfiguration(System.IO.Stream,StackExchange.Redis.ExportOptions)">
            <summary>
            Write the configuration of all servers to an output stream
            </summary>
            <param name="destination">The destination stream to write the export to.</param>
            <param name="options">The options to use for this export.</param>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ConnectionFailed">
            <summary>
            Raised whenever a physical connection fails
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.InternalError">
            <summary>
            Raised whenever an internal error occurs (this is primarily for debugging)
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ConnectionRestored">
            <summary>
            Raised whenever a physical connection is established
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ConfigurationChanged">
            <summary>
            Raised when configuration changes are detected
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ConfigurationChangedBroadcast">
            <summary>
            Raised when nodes are explicitly requested to reconfigure via broadcast;
            this usually means master/replica changes
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.TimeoutMilliseconds">
            <summary>
            Gets the synchronous timeout associated with the connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.AsyncTimeoutMilliseconds">
            <summary>
            Gets the asynchronous timeout associated with the connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetEndPoints(System.Boolean)">
            <summary>
            Gets all endpoints defined on the server
            </summary>
            <param name="configuredOnly">Whether to get only the endpoints specified explicitly in the config.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Wait(System.Threading.Tasks.Task)">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Wait``1(System.Threading.Tasks.Task{``0})">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <typeparam name="T">The type contains in the task to wait on.</typeparam>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.WaitAll(System.Threading.Tasks.Task[])">
            <summary>
            Wait for the given asynchronous operations to complete (or timeout)
            </summary>
            <param name="tasks">The tasks to wait on.</param>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.HashSlotMoved">
            <summary>
            Raised when a hash-slot has been relocated
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.HashSlot(StackExchange.Redis.RedisKey)">
            <summary>
            Compute the hash-slot of a specified key
            </summary>
            <param name="key">The key to get a hash slot ID for.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ConnectAsync(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ConnectAsync(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Connect(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Connect(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelConnect(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelConnectAsync(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelConnect(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelConnectAsync(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelMasterConnect(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server
            for the specified ServiceName in the config and returns a managed connection to the current master server
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelMasterConnect(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server
            for the specified ServiceName in the config and returns a managed connection to the current master server
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelMasterConnectAsync(System.String,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server
            for the specified ServiceName in the config and returns a managed connection to the current master server
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelMasterConnectAsync(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server
            for the specified ServiceName in the config and returns a managed connection to the current master server
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetSubscriber(System.Object)">
            <summary>
            Obtain a pub/sub subscriber connection to the specified server
            </summary>
            <param name="asyncState">The async state object to pass to the created <see cref="T:StackExchange.Redis.RedisSubscriber"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetDatabase(System.Int32,System.Object)">
            <summary>
            Obtain an interactive connection to a database inside redis
            </summary>
            <param name="db">The ID to get a database for.</param>
            <param name="asyncState">The async state to pass into the resulting <see cref="T:StackExchange.Redis.RedisDatabase"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetServer(System.String,System.Int32,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="host">The host to get a server for.</param>
            <param name="port">The port for <paramref name="host"/> to get a server for.</param>
            <param name="asyncState">The async state to pass into the resulting <see cref="T:StackExchange.Redis.RedisServer"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetServer(System.String,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="hostAndPort">The "host:port" string to get a server for.</param>
            <param name="asyncState">The async state to pass into the resulting <see cref="T:StackExchange.Redis.RedisServer"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetServer(System.Net.IPAddress,System.Int32)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="host">The host to get a server for.</param>
            <param name="port">The port for <paramref name="host"/> to get a server for.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetServer(System.Net.EndPoint,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="endpoint">The endpoint to get a server for.</param>
            <param name="asyncState">The async state to pass into the resulting <see cref="T:StackExchange.Redis.RedisServer"/>.</param>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.OperationCount">
            <summary>
            The number of operations that have been performed on all connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ConfigureAsync(System.IO.TextWriter)">
            <summary>
            Reconfigure the current connections based on the existing configuration
            </summary>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Configure(System.IO.TextWriter)">
            <summary>
            Reconfigure the current connections based on the existing configuration
            </summary>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetStatus">
            <summary>
            Provides a text overview of the status of all connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetStatus(System.IO.TextWriter)">
            <summary>
            Provides a text overview of the status of all connections
            </summary>
            <param name="log">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.PreserveAsyncOrder">
            <summary>
            Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.IsConnected">
            <summary>
            Indicates whether any servers are connected
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.IsConnecting">
            <summary>
            Indicates whether any servers are currently trying to connect
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.InitializeSentinel(StackExchange.Redis.ConnectionMultiplexer.LogProxy)">
            <summary>
            Initializes the connection as a Sentinel connection and adds
            the necessary event handlers to track changes to the managed
            masters.
            </summary>
            <param name="logProxy"></param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetSentinelMasterConnection(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Returns a managed connection to the master server indicated by
            the ServiceName in the config.
            </summary>
            <param name="config">the configuration to be used when connecting to the master</param>
            <param name="log"></param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SwitchMaster(System.Net.EndPoint,StackExchange.Redis.ConnectionMultiplexer,System.IO.TextWriter)">
            <summary>
            Switches the SentinelMasterConnection over to a new master.
            </summary>
            <param name="switchBlame">The endpoint responsible for the switch</param>
            <param name="connection">The connection that should be switched over to a new master endpoint</param>
            <param name="log">Log to write to, if any</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Close(System.Boolean)">
            <summary>
            Close all connections and release all resources associated with this object
            </summary>
            <param name="allowCommandsToComplete">Whether to allow all in-queue commands to complete first.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.CloseAsync(System.Boolean)">
            <summary>
            Close all connections and release all resources associated with this object
            </summary>
            <param name="allowCommandsToComplete">Whether to allow all in-queue commands to complete first.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Dispose">
            <summary>
            Release all resources associated with this object
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.IncludeDetailInExceptions">
            <summary>
            Should exceptions include identifiable details? (key names, additional .Data annotations)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.IncludePerformanceCountersInExceptions">
            <summary>
            Should exceptions include performance counter details? (CPU usage, etc - note that this can be problematic on some platforms)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.StormLogThreshold">
            <summary>
            Limit at which to start recording unusual busy patterns (only one log will be retained at a time;
            set to a negative value to disable this feature)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetStormLog">
            <summary>
            Obtains the log of unusual busy patterns
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ResetStormLog">
            <summary>
            Resets the log of unusual busy patterns
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.PublishReconfigure(StackExchange.Redis.CommandFlags)">
            <summary>
            Request all compatible clients to reconfigure or reconnect
            </summary>
            <param name="flags">The command flags to use.</param>2
            <returns>The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending)</returns>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.PublishReconfigureAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Request all compatible clients to reconfigure or reconnect
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The number of instances known to have received the message (however, the actual number can be higher)</returns>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetHashSlot(StackExchange.Redis.RedisKey)">
            <summary>
            Get the hash-slot associated with a given key, if applicable; this can be useful for grouping operations
            </summary>
            <param name="key">The <see cref="T:StackExchange.Redis.RedisKey"/> to determine the hash slot for.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.RegisterProfiler(System.Func{StackExchange.Redis.Profiling.ProfilingSession})">
            <summary>
            Register a callback to provide an on-demand ambient session provider based on the
            calling context; the implementing code is responsible for reliably resolving the same provider
            based on ambient context, or returning null to not profile
            </summary>
            <param name="profilingSessionProvider">The session provider to register.</param>
        </member>
        <member name="T:StackExchange.Redis.CursorEnumerable`1">
            <summary>
            Provides the ability to iterate over a cursor-based sequence of redis data, synchronously or asynchronously
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.GetEnumerator">
            <summary>
            Gets an enumerator for the sequence
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)">
            <summary>
            Gets an enumerator for the sequence
            </summary>
        </member>
        <member name="T:StackExchange.Redis.CursorEnumerable`1.Enumerator">
            <summary>
            Provides the ability to iterate over a cursor-based sequence of redis data, synchronously or asynchronously
            </summary>
        </member>
        <member name="P:StackExchange.Redis.CursorEnumerable`1.Enumerator.Current">
            <summary>
            Gets the current value of the enumerator
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.Enumerator.Dispose">
            <summary>
            Release all resources associated with this enumerator
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.Enumerator.DisposeAsync">
            <summary>
            Release all resources associated with this enumerator
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.Enumerator.MoveNext">
            <summary>
            Try to move to the next item in the sequence
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.Enumerator.MoveNextAsync">
            <summary>
            Try to move to the next item in the sequence
            </summary>
        </member>
        <member name="M:StackExchange.Redis.CursorEnumerable`1.Enumerator.Reset">
            <summary>
            Reset the enumerator
            </summary>
        </member>
        <member name="T:StackExchange.Redis.EndPointCollection">
            <summary>
            A list of endpoints
            </summary>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.#ctor">
            <summary>
            Create a new EndPointCollection
            </summary>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.#ctor(System.Collections.Generic.IList{System.Net.EndPoint})">
            <summary>
            Create a new EndPointCollection
            </summary>
            <param name="endpoints">The endpoints to add to the collection.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.ToString(System.Net.EndPoint)">
            <summary>
            Format an endpoint
            </summary>
            <param name="endpoint">The endpoint to get a string representation for.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.TryParse(System.String)">
            <summary>
            Attempt to parse a string into an EndPoint
            </summary>
            <param name="endpoint">The endpoint string to parse.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.Add(System.String)">
            <summary>
            Adds a new endpoint to the list
            </summary>
            <param name="hostAndPort">The host:port string to add an endpoint for to the collection.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.Add(System.String,System.Int32)">
            <summary>
            Adds a new endpoint to the list.
            </summary>
            <param name="host">The host to add.</param>
            <param name="port">The port for <paramref name="host"/> to add.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.Add(System.Net.IPAddress,System.Int32)">
            <summary>
            Adds a new endpoint to the list.
            </summary>
            <param name="host">The host to add.</param>
            <param name="port">The port for <paramref name="host"/> to add.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.TryAdd(System.Net.EndPoint)">
            <summary>
            Try adding a new endpoint to the list.
            </summary>
            <param name="endpoint">The endpoint to add.</param>
            <returns>True if the endpoint was added or false if not.</returns>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.InsertItem(System.Int32,System.Net.EndPoint)">
            <summary>
            See Collection&lt;T&gt;.InsertItem()
            </summary>
            <param name="index">The index to add <paramref name="item"/> into the collection at.</param>
            <param name="item">The item to insert at <paramref name="index"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.SetItem(System.Int32,System.Net.EndPoint)">
            <summary>
            See Collection&lt;T&gt;.SetItem()
            </summary>
            <param name="index">The index to replace an endpoint at.</param>
            <param name="item">The item to replace the existing endpoint at <paramref name="index"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.GetEnumerator">
            <inheritdoc/>
        </member>
        <member name="T:StackExchange.Redis.EndPointEventArgs">
            <summary>
            Event information related to redis endpoints
            </summary>
        </member>
        <member name="M:StackExchange.Redis.EndPointEventArgs.#ctor(System.Object,System.Net.EndPoint)">
            <summary>
            This constructor is only for testing purposes.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="endpoint">Redis endpoint.</param>
        </member>
        <member name="P:StackExchange.Redis.EndPointEventArgs.EndPoint">
            <summary>
            The endpoint involved in this event (this can be null)
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Aggregate">
            <summary>
            Specifies how elements should be aggregated when combining sorted sets
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Aggregate.Sum">
            <summary>
            The values of the combined elements are added
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Aggregate.Min">
            <summary>
            The least value of the combined elements is used
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Aggregate.Max">
            <summary>
            The greatest value of the combined elements is used
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Bitwise">
            <summary>
            <a href="https://en.wikipedia.org/wiki/Bitwise_operation">Bitwise operators</a>
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Bitwise.And">
            <summary>
            <a href="https://en.wikipedia.org/wiki/Bitwise_operation#AND">And</a>
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Bitwise.Or">
            <summary>
            <a href="https://en.wikipedia.org/wiki/Bitwise_operation#OR">Or</a>
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Bitwise.Xor">
            <summary>
            <a href="https://en.wikipedia.org/wiki/Bitwise_operation#XOR">Xor</a>
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Bitwise.Not">
            <summary>
            <a href="https://en.wikipedia.org/wiki/Bitwise_operation#NOT">Not</a>
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ClientFlags">
            <summary>
            The client flags can be a combination of:
            O: the client is a replica in MONITOR mode
            S: the client is a normal replica server
            M: the client is a master
            x: the client is in a MULTI/EXEC context
            b: the client is waiting in a blocking operation
            i: the client is waiting for a VM I/O (deprecated)
            d: a watched keys has been modified - EXEC will fail
            c: connection to be closed after writing entire reply
            u: the client is unblocked
            A: connection to be closed ASAP
            N: no specific flag set
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.None">
            <summary>
            no specific flag set
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.SlaveMonitor">
            <summary>
            the client is a replica in MONITOR mode
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.ReplicaMonitor">
            <summary>
            the client is a replica in MONITOR mode
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Slave">
            <summary>
            the client is a normal replica server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Replica">
            <summary>
            the client is a normal replica server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Master">
            <summary>
            the client is a master
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Transaction">
            <summary>
            the client is in a MULTI/EXEC context
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Blocked">
            <summary>
            the client is waiting in a blocking operation
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.TransactionDoomed">
            <summary>
            a watched keys has been modified - EXEC will fail
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Closing">
            <summary>
            connection to be closed after writing entire reply
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.Unblocked">
            <summary>
            the client is unblocked
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.CloseASAP">
            <summary>
            connection to be closed ASAP
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.PubSubSubscriber">
            <summary>
            the client is a Pub/Sub subscriber
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.ReadOnlyCluster">
            <summary>
            the client is in readonly mode against a cluster node
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.UnixDomainSocket">
            <summary>
            the client is connected via a Unix domain socket
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ClientType">
            <summary>
            The class of the connection
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientType.Normal">
            <summary>
            Regular connections, including MONITOR connections
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientType.Replica">
            <summary>
            Replication connections
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientType.Slave">
            <summary>
            Replication connections
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientType.PubSub">
            <summary>
            Subscription connections
            </summary>
        </member>
        <member name="T:StackExchange.Redis.CommandFlags">
            <summary>
            Behaviour markers associated with a given command
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.None">
            <summary>
            Default behaviour.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.HighPriority">
            <summary>
            From 2.0, this flag is not used
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.FireAndForget">
            <summary>
            The caller is not interested in the result; the caller will immediately receive a default-value
            of the expected return type (this value is not indicative of anything at the server).
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.PreferMaster">
            <summary>
            This operation should be performed on the master if it is available, but read operations may
            be performed on a replica if no master is available. This is the default option.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.DemandMaster">
            <summary>
            This operation should only be performed on the master.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.PreferSlave">
            <summary>
            This operation should be performed on the replica if it is available, but will be performed on
            a master if no replicas are available. Suitable for read operations only.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.PreferReplica">
            <summary>
            This operation should be performed on the replica if it is available, but will be performed on
            a master if no replicas are available. Suitable for read operations only.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.DemandReplica">
            <summary>
            This operation should only be performed on a replica. Suitable for read operations only.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.DemandSlave">
            <summary>
            This operation should only be performed on a replica. Suitable for read operations only.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.NoRedirect">
            <summary>
            Indicates that this operation should not be forwarded to other servers as a result of an ASK or MOVED response
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandFlags.NoScriptCache">
            <summary>
            Indicates that script-related operations should use EVAL, not SCRIPT LOAD + EVALSHA
            </summary>
        </member>
        <member name="T:StackExchange.Redis.CommandStatus">
            <summary>
            track status of a command while communicating with Redis
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandStatus.Unknown">
            <summary>
            command status unknown
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandStatus.WaitingToBeSent">
            <summary>
            ConnectionMultiplexer has not yet started writing this command to redis 
            </summary>
        </member>
        <member name="F:StackExchange.Redis.CommandStatus.Sent">
            <summary>
            command has been sent to Redis
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ConnectionFailureType">
            <summary>
            The known types of connection failure
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.None">
            <summary>
            This event is not a failure
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.UnableToResolvePhysicalConnection">
            <summary>
            No viable connections were available for this operation
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.SocketFailure">
            <summary>
            The socket for this connection failed
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.AuthenticationFailure">
            <summary>
            Either SSL Stream or Redis authentication failed
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.ProtocolFailure">
            <summary>
            An unexpected response was received from the server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.InternalFailure">
            <summary>
            An unknown internal error occurred
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.SocketClosed">
            <summary>
            The socket was closed
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.ConnectionDisposed">
            <summary>
            The socket was closed
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.Loading">
            <summary>
            The database is loading and is not available for use
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionFailureType.UnableToConnect">
            <summary>
            It has not been possible to create an intial connection to the redis server(s)
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ConnectionType">
            <summary>
            The type of a connection
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionType.None">
            <summary>
            Not connection-type related
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionType.Interactive">
            <summary>
            An interactive connection handles request/response commands for accessing data on demand
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ConnectionType.Subscription">
            <summary>
            A subscriber connection recieves unsolicted messages from the server as pub/sub events occur
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Exclude">
            <summary>
            When performing a range query, by default the start / stop limits are inclusive;
            however, both can also be specified separately as exclusive
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Exclude.None">
            <summary>
            Both start and stop are inclusive
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Exclude.Start">
            <summary>
            Start is exclusive, stop is inclusive
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Exclude.Stop">
            <summary>
            Start is inclusive, stop is exclusive
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Exclude.Both">
            <summary>
            Both start and stop are exclusive
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ExportOptions">
            <summary>
            Which settings to export
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.None">
            <summary>
            No options
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.Info">
            <summary>
            The output of INFO
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.Config">
            <summary>
            The output of CONFIG GET *
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.Client">
            <summary>
            The output of CLIENT LIST
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.Cluster">
            <summary>
            The output of CLUSTER NODES
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExportOptions.All">
            <summary>
            Everything available
            </summary>
        </member>
        <member name="T:StackExchange.Redis.GeoUnit">
            <summary>
            Units associated with Geo Commands
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoUnit.Meters">
            <summary>
            Meters
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoUnit.Kilometers">
            <summary>
            Kilometers
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoUnit.Miles">
            <summary>
            Miles
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoUnit.Feet">
            <summary>
            Feet
            </summary>
        </member>
        <member name="T:StackExchange.Redis.MigrateOptions">
            <summary>
            Additional options for the MIGRATE command
            </summary>
        </member>
        <member name="F:StackExchange.Redis.MigrateOptions.None">
            <summary>
            No options specified
            </summary>
        </member>
        <member name="F:StackExchange.Redis.MigrateOptions.Copy">
            <summary>
            Do not remove the key from the local instance.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.MigrateOptions.Replace">
            <summary>
            Replace existing key on the remote instance.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Order">
            <summary>
            The direction in which to sequence elements
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Order.Ascending">
            <summary>
            Ordered from low values to high values
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Order.Descending">
            <summary>
            Ordered from high values to low values
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Proxy">
            <summary>
            Specifies the proxy that is being used to communicate to redis
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Proxy.None">
            <summary>
            Direct communication to the redis server(s)
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Proxy.Twemproxy">
            <summary>
            Communication via <a href="https://github.com/twitter/twemproxy">twemproxy</a>
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisType">
            <summary>
            The intrinsinc data-types supported by redis
            </summary>
            <remarks>https://redis.io/topics/data-types</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.None">
            <summary>
            The specified key does not exist
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisType.String">
            <summary>
            Strings are the most basic kind of Redis value. Redis Strings are binary safe, this means that a Redis string can contain any kind of data, for instance a JPEG image or a serialized Ruby object.
            A String value can be at max 512 Megabytes in length.
            </summary>
            <remarks>https://redis.io/commands#string</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.List">
            <summary>
            Redis Lists are simply lists of strings, sorted by insertion order. It is possible to add elements to a Redis List pushing new elements on the head (on the left) or on the tail (on the right) of the list.
            </summary>
            <remarks>https://redis.io/commands#list</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.Set">
            <summary>
            Redis Sets are an unordered collection of Strings. It is possible to add, remove, and test for existence of members in O(1) (constant time regardless of the number of elements contained inside the Set).
            Redis Sets have the desirable property of not allowing repeated members. Adding the same element multiple times will result in a set having a single copy of this element. Practically speaking this means that adding a member does not require a check if exists then add operation.
            </summary>
            <remarks>https://redis.io/commands#set</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.SortedSet">
            <summary>
            Redis Sorted Sets are, similarly to Redis Sets, non repeating collections of Strings. The difference is that every member of a Sorted Set is associated with score, that is used in order to take the sorted set ordered, from the smallest to the greatest score. While members are unique, scores may be repeated.
            </summary>
            <remarks>https://redis.io/commands#sorted_set</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.Hash">
            <summary>
            Redis Hashes are maps between string fields and string values, so they are the perfect data type to represent objects (eg: A User with a number of fields like name, surname, age, and so forth)
            </summary>
            <remarks>https://redis.io/commands#hash</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.Stream">
            <summary>
            A Redis Stream is a data structure which models the behavior of an append only log but it has more
            advanced features for manipulating the data contained within the stream. Each entry in a
            stream contains a unique message ID and a list of name/value pairs containing the entry's data.
            </summary>
            <remarks>https://redis.io/commands#stream</remarks>
        </member>
        <member name="F:StackExchange.Redis.RedisType.Unknown">
            <summary>
            The data-type was not recognised by the client library
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ReplicationChangeOptions">
            <summary>
            Additional operations to perform when making a server a master
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.None">
            <summary>
            No additional operations
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.SetTiebreaker">
            <summary>
            Set the tie-breaker key on all available masters, to specify this server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.Broadcast">
            <summary>
            Broadcast to the pub-sub channel to listening clients to reconfigure themselves
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.EnslaveSubordinates">
            <summary>
            Issue a REPLICAOF to all other known nodes, making this this master of all
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.ReplicateToOtherEndpoints">
            <summary>
            Issue a REPLICAOF to all other known nodes, making this this master of all
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.All">
            <summary>
            All additional operations
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultType">
            <summary>
            The underlying result type as defined by redis
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.None">
            <summary>
            No value was received
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.SimpleString">
            <summary>
            Basic strings typically represent status results such as "OK"
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Error">
            <summary>
            Error strings represent invalid operation results from the server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Integer">
            <summary>
            Integers are returned for count operations and some integer-based increment operations
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.BulkString">
            <summary>
            Bulk strings represent typical user content values
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.MultiBulk">
            <summary>
            Multi-bulk replies represent complex results such as arrays
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RetransmissionReasonType">
            <summary>
            <para>
            If an IProfiledCommand is a retransmission of a previous command, this enum
            is used to indicate what prompted the retransmission.
            </para>
            <para>
            This can be used to distinguish between transient causes (moving hashslots, joining nodes, etc.)
            and incorrect routing.
            </para>
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RetransmissionReasonType.None">
            <summary>
            No stated reason
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RetransmissionReasonType.Ask">
            <summary>
            Issued to investigate which node owns a key
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RetransmissionReasonType.Moved">
            <summary>
            A node has indicated that it does *not* own the given key
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SaveType">
            <summary>
            The type of save operation to perform
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SaveType.BackgroundRewriteAppendOnlyFile">
            <summary>
            Instruct Redis to start an Append Only File rewrite process. The rewrite will create a small optimized version of the current Append Only File.
            </summary>
            <remarks>https://redis.io/commands/bgrewriteaof</remarks>
        </member>
        <member name="F:StackExchange.Redis.SaveType.BackgroundSave">
            <summary>
            Save the DB in background. The OK code is immediately returned. Redis forks, the parent continues to serve the clients, the child saves the DB on disk then exits. A client my be able to check if the operation succeeded using the LASTSAVE command.
            </summary>
            <remarks>https://redis.io/commands/bgsave</remarks>
        </member>
        <member name="F:StackExchange.Redis.SaveType.ForegroundSave">
            <summary>
            Save the DB in foreground. This is almost never a good thing to do, and could cause significant blocking. Only do this if you know you need to save
            </summary>
            <remarks>https://redis.io/commands/save</remarks>
        </member>
        <member name="T:StackExchange.Redis.ServerType">
            <summary>
            Indicates the flavor of a particular redis server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ServerType.Standalone">
            <summary>
            Classic redis-server server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ServerType.Sentinel">
            <summary>
            Monitoring/configuration redis-sentinel server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ServerType.Cluster">
            <summary>
            Distributed redis-cluster server
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ServerType.Twemproxy">
            <summary>
            Distributed redis installation via <a href="https://github.com/twitter/twemproxy">twemproxy</a>
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SetOperation">
            <summary>
            Describes an algebraic set operation that can be performed to combine multiple sets
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SetOperation.Union">
            <summary>
            Returns the members of the set resulting from the union of all the given sets.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SetOperation.Intersect">
            <summary>
            Returns the members of the set resulting from the intersection of all the given sets.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SetOperation.Difference">
            <summary>
            Returns the members of the set resulting from the difference between the first set and all the successive sets.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ShutdownMode">
            <summary>
            Defines the persistence behaviour of the server during shutdown
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ShutdownMode.Default">
            <summary>
            The data is persisted if save points are configured
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ShutdownMode.Never">
            <summary>
            The data is NOT persisted even if save points are configured
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ShutdownMode.Always">
            <summary>
            The data is persisted even if save points are NOT configured
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SortType">
            <summary>
            Specifies how to compare elements for sorting
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortType.Numeric">
            <summary>
            Elements are interpreted as a double-precision floating point number and sorted numerically
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortType.Alphabetic">
            <summary>
            Elements are sorted using their alphabetic form (Redis is UTF-8 aware as long as the !LC_COLLATE environment variable is set at the server)
            </summary>
        </member>
        <member name="T:StackExchange.Redis.When">
            <summary>
            Indicates when this operation should be performed (only some variations are legal in a given context)
            </summary>
        </member>
        <member name="F:StackExchange.Redis.When.Always">
            <summary>
            The operation should occur whether or not there is an existing value 
            </summary>
        </member>
        <member name="F:StackExchange.Redis.When.Exists">
            <summary>
            The operation should only occur when there is an existing value 
            </summary>
        </member>
        <member name="F:StackExchange.Redis.When.NotExists">
            <summary>
            The operation should only occur when there is not an existing value 
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisCommandException">
            <summary>
            Indicates that a command was illegal and was not sent to the server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisCommandException.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisCommandException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisCommandException.#ctor(System.String,System.Exception)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisCommandException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisTimeoutException">
            <summary>
            Indicates the time allotted for a command or operation has expired.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisTimeoutException.#ctor(System.String,StackExchange.Redis.CommandStatus)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisTimeoutException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
            <param name="commandStatus">The command status, as of when the timeout happened.</param>
        </member>
        <member name="P:StackExchange.Redis.RedisTimeoutException.Commandstatus">
            <summary>
            status of the command while communicating with Redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisTimeoutException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization implementation; not intended for general usage
            </summary>
            <param name="info">Serialization info.</param>
            <param name="context">Serialization context.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisConnectionException">
            <summary>
            Indicates a connection fault when communicating with redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisConnectionException.#ctor(StackExchange.Redis.ConnectionFailureType,System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisConnectionException"/>.
            </summary>
            <param name="failureType">The type of connection failure.</param>
            <param name="message">The message for the exception.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisConnectionException.#ctor(StackExchange.Redis.ConnectionFailureType,System.String,System.Exception)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisConnectionException"/>.
            </summary>
            <param name="failureType">The type of connection failure.</param>
            <param name="message">The message for the exception.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisConnectionException.#ctor(StackExchange.Redis.ConnectionFailureType,System.String,System.Exception,StackExchange.Redis.CommandStatus)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisConnectionException"/>.
            </summary>
            <param name="failureType">The type of connection failure.</param>
            <param name="message">The message for the exception.</param>
            <param name="innerException">The inner exception.</param>
            <param name="commandStatus">The status of the command.</param>
        </member>
        <member name="P:StackExchange.Redis.RedisConnectionException.FailureType">
            <summary>
            The type of connection failure
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisConnectionException.CommandStatus">
            <summary>
            status of the command while communicating with Redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisConnectionException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization implementation; not intended for general usage
            </summary>
            <param name="info">Serialization info.</param>
            <param name="context">Serialization context.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisException">
            <summary>
            Indicates an issue communicating with redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisException.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisException.#ctor(System.String,System.Exception)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Deserialization constructor; not intended for general usage
            </summary>
            <param name="info">Serialization info.</param>
            <param name="ctx">Serialization context.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisServerException">
            <summary>
            Indicates an exception raised by a redis server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisServerException.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisServerException"/>.
            </summary>
            <param name="message">The message for the exception.</param>
        </member>
        <member name="T:StackExchange.Redis.ExponentialRetry">
            <summary>
            Represents a retry policy that performs retries, using a randomized exponential back off scheme to determine the interval between retries. 
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ExponentialRetry.#ctor(System.Int32)">
            <summary>
            Initializes a new instance using the specified back off interval with default maxDeltaBackOffMilliseconds of 10 seconds
            </summary>
            <param name="deltaBackOffMilliseconds">time in milliseconds for the back-off interval between retries</param>
        </member>
        <member name="M:StackExchange.Redis.ExponentialRetry.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance using the specified back off interval.
            </summary>
            <param name="deltaBackOffMilliseconds">time in milliseconds for the back-off interval between retries</param>
            <param name="maxDeltaBackOffMilliseconds">time in milliseconds for the maximum value that the back-off interval can exponentailly grow upto</param>
        </member>
        <member name="M:StackExchange.Redis.ExponentialRetry.ShouldRetry(System.Int64,System.Int32)">
            <summary>
            This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now.
            </summary>
            <param name="currentRetryCount">The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state</param>
            <param name="timeElapsedMillisecondsSinceLastRetry">Total elapsed time in milliseconds since the last reconnect retry was made</param>
        </member>
        <member name="T:StackExchange.Redis.ExtensionMethods">
            <summary>
            Utility methods
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToStringDictionary(StackExchange.Redis.HashEntry[])">
            <summary>
            Create a dictionary from an array of HashEntry values 
            </summary>
            <param name="hash">The entry to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToDictionary(StackExchange.Redis.HashEntry[])">
            <summary>
            Create a dictionary from an array of HashEntry values 
            </summary>
            <param name="hash">The entry to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToStringDictionary(StackExchange.Redis.SortedSetEntry[])">
            <summary>
            Create a dictionary from an array of SortedSetEntry values 
            </summary>
            <param name="sortedSet">The set entries to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToDictionary(StackExchange.Redis.SortedSetEntry[])">
            <summary>
            Create a dictionary from an array of SortedSetEntry values 
            </summary>
            <param name="sortedSet">The set entries to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToStringDictionary(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue}[])">
            <summary>
            Create a dictionary from an array of key/value pairs
            </summary>
            <param name="pairs">The pairs to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToDictionary(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue}[])">
            <summary>
            Create a dictionary from an array of key/value pairs
            </summary>
            <param name="pairs">The pairs to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToDictionary(System.Collections.Generic.KeyValuePair{System.String,System.String}[])">
            <summary>
            Create a dictionary from an array of string pairs
            </summary>
            <param name="pairs">The pairs to convert to a dictionary.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToRedisValueArray(System.String[])">
            <summary>
            Create an array of RedisValues from an array of strings.
            </summary>
            <param name="values">The string array to convert to RedisValues</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.ToStringArray(StackExchange.Redis.RedisValue[])">
            <summary>
            Create an array of strings from an array of values
            </summary>
            <param name="values">The values to convert to an array.</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.AsStream(StackExchange.Redis.Lease{System.Byte},System.Boolean)">
            <summary>
            Represent a byte-Lease as a read-only Stream
            </summary>
            <param name="bytes">The lease upon which to base the stream</param>
            <param name="ownsLease">If true, disposing the stream also disposes the lease</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.DecodeString(StackExchange.Redis.Lease{System.Byte},System.Text.Encoding)">
            <summary>
            Decode a byte-Lease as a String, optionally specifying the encoding (UTF-8 if omitted)
            </summary>
            <param name="bytes">The bytes to decode</param>
            <param name="encoding">The encoding to use</param>
        </member>
        <member name="M:StackExchange.Redis.ExtensionMethods.DecodeLease(StackExchange.Redis.Lease{System.Byte},System.Text.Encoding)">
            <summary>
            Decode a byte-Lease as a String, optionally specifying the encoding (UTF-8 if omitted)
            </summary>
            <param name="bytes">The bytes to decode</param>
            <param name="encoding">The encoding to use</param>
        </member>
        <member name="T:StackExchange.Redis.GeoRadiusOptions">
            <summary>
            GeoRadius command options.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoRadiusOptions.None">
            <summary>
            No Options
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoRadiusOptions.WithCoordinates">
            <summary>
            Redis will return the coordinates of any results.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoRadiusOptions.WithDistance">
            <summary>
            Redis will return the distance from center for all results.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoRadiusOptions.WithGeoHash">
            <summary>
            Redis will return the geo hash value as an integer. (This is the score in the sorted set)
            </summary>
        </member>
        <member name="F:StackExchange.Redis.GeoRadiusOptions.Default">
            <summary>
            Populates the commonly used values from the entry (the integer hash is not returned as it is not commonly useful)
            </summary>
        </member>
        <member name="T:StackExchange.Redis.GeoRadiusResult">
            <summary>
            The result of a GeoRadius command.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoRadiusResult.ToString">
            <summary>
            Indicate the member being represented
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoRadiusResult.Member">
            <summary>
            The matched member.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoRadiusResult.Distance">
            <summary>
            The distance of the matched member from the center of the geo radius command.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoRadiusResult.Hash">
            <summary>
            The hash value of the matched member as an integer. (The key in the sorted set)
            </summary>
            <remarks>Note that this is not the same as the hash returned from GeoHash</remarks>
        </member>
        <member name="P:StackExchange.Redis.GeoRadiusResult.Position">
            <summary>
            The coordinates of the matched member.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoRadiusResult.#ctor(StackExchange.Redis.RedisValue@,System.Nullable{System.Double},System.Nullable{System.Int64},System.Nullable{StackExchange.Redis.GeoPosition})">
            <summary>
            Returns a new GeoRadiusResult
            </summary>
            <param name="member">The value from the result.</param>
            <param name="distance">Tthe distance from the result.</param>
            <param name="hash">The hash of the result.</param>
            <param name="position">The geo position of the result.</param>
        </member>
        <member name="T:StackExchange.Redis.GeoPosition">
            <summary>
            Describes the longitude and latitude of a GeoEntry
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoPosition.Latitude">
            <summary>
            The Latitude of the GeoPosition
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoPosition.Longitude">
            <summary>
            The Logitude of the GeoPosition
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.#ctor(System.Double,System.Double)">
            <summary>
            Creates a new GeoPosition
            </summary>
            <param name="longitude"></param>
            <param name="latitude"></param>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.GetHashCode">
            <summary>
            See Object.GetHashCode()
            Diagonals not an issue in the case of lat/long
            </summary>
            <remarks>
            Diagonals are not an issue in the case of lat/long.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.Equals(System.Object)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.GeoPosition"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.Equals(StackExchange.Redis.GeoPosition)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.GeoPosition"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.op_Equality(StackExchange.Redis.GeoPosition,StackExchange.Redis.GeoPosition)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="x">The first position to compare.</param>
            <param name="y">The second position to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.op_Inequality(StackExchange.Redis.GeoPosition,StackExchange.Redis.GeoPosition)">
            <summary>
            Compares two values for non-equality
            </summary>
            <param name="x">The first position to compare.</param>
            <param name="y">The second position to compare.</param>
        </member>
        <member name="T:StackExchange.Redis.GeoEntry">
            <summary>
            Describes a GeoEntry element with the corresponding value
            GeoEntries are stored in redis as SortedSetEntries
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoEntry.Member">
            <summary>
            The name of the geo entry
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoEntry.Position">
            <summary>
            Describes the longitude and latitude of a GeoEntry
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.#ctor(System.Double,System.Double,StackExchange.Redis.RedisValue)">
            <summary>
            Initializes a GeoEntry value
            </summary>
            <param name="longitude">The longitude position to use.</param>
            <param name="latitude">The latitude position to use.</param>
            <param name="member">The value to store for this position.</param>
        </member>
        <member name="P:StackExchange.Redis.GeoEntry.Longitude">
            <summary>
            The longitude of the geo entry
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoEntry.Latitude">
            <summary>
            The latitude of the geo entry
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.Equals(System.Object)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.GeoEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.Equals(StackExchange.Redis.GeoEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.GeoEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.op_Equality(StackExchange.Redis.GeoEntry,StackExchange.Redis.GeoEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="x">The first entry to compare.</param>
            <param name="y">The second entry to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.op_Inequality(StackExchange.Redis.GeoEntry,StackExchange.Redis.GeoEntry)">
            <summary>
            Compares two values for non-equality
            </summary>
            <param name="x">The first entry to compare.</param>
            <param name="y">The second entry to compare.</param>
        </member>
        <member name="T:StackExchange.Redis.HashEntry">
            <summary>
            Describes a hash-field (a name/value pair)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.#ctor(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Initializes a <see cref="T:StackExchange.Redis.HashEntry"/> value.
            </summary>
            <param name="name">The name for this hash entry.</param>
            <param name="value">The value for this hash entry.</param>
        </member>
        <member name="P:StackExchange.Redis.HashEntry.Name">
            <summary>
            The name of the hash field
            </summary>
        </member>
        <member name="P:StackExchange.Redis.HashEntry.Value">
            <summary>
            The value of the hash field
            </summary>
        </member>
        <member name="P:StackExchange.Redis.HashEntry.Key">
            <summary>
            The name of the hash field
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.op_Implicit(StackExchange.Redis.HashEntry)~System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue}">
            <summary>
            Converts to a key/value pair
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.HashEntry"/> to create a <see cref="T:System.Collections.Generic.KeyValuePair`2"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.op_Implicit(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue})~StackExchange.Redis.HashEntry">
            <summary>
            Converts from a key/value pair
            </summary>
            <param name="value">The <see cref="T:System.Collections.Generic.KeyValuePair`2"/> to get a <see cref="T:StackExchange.Redis.HashEntry"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.Equals(System.Object)">
            <summary>
            Compares two values for equality.
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.HashEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.Equals(StackExchange.Redis.HashEntry)">
            <summary>
            Compares two values for equality.
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.HashEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.op_Equality(StackExchange.Redis.HashEntry,StackExchange.Redis.HashEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.HashEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.HashEntry"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.op_Inequality(StackExchange.Redis.HashEntry,StackExchange.Redis.HashEntry)">
            <summary>
            Compares two values for non-equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.HashEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.HashEntry"/> to compare.</param>
        </member>
        <member name="T:StackExchange.Redis.HashSlotMovedEventArgs">
            <summary>
            Contains information about individual hash-slot relocations
            </summary>
        </member>
        <member name="P:StackExchange.Redis.HashSlotMovedEventArgs.HashSlot">
            <summary>
            The hash-slot that was relocated
            </summary>
        </member>
        <member name="P:StackExchange.Redis.HashSlotMovedEventArgs.OldEndPoint">
            <summary>
            The old endpoint for this hash-slot (if known)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.HashSlotMovedEventArgs.NewEndPoint">
            <summary>
            The new endpoint for this hash-slot (if known)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashSlotMovedEventArgs.#ctor(System.Object,System.Int32,System.Net.EndPoint,System.Net.EndPoint)">
            <summary>
            This constructor is only for testing purposes.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="hashSlot">Hash slot.</param>
            <param name="old">Old endpoint.</param>
            <param name="new">New endpoint.</param>
        </member>
        <member name="T:StackExchange.Redis.IBatch">
            <summary>
            Represents a block of operations that will be sent to the server together;
            this can be useful to reduce packet fragmentation on slow connections - it
            can improve the time to get *all* the operations processed, with the trade-off
            of a slower time to get the *first* operation processed; this is usually
            a good thing. Unless this batch is a <b>transaction</b>, there is no guarantee
            that these operations will be processed either contiguously or atomically by the server.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IBatch.Execute">
            <summary>
            Execute the batch operation, sending all queued commands to the server.
            Note that this operation is neither synchronous nor truly asyncronous - it
            simply enqueues the buffered messages. To check on completion, you should
            check the individual responses.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.IConnectionMultiplexer">
            <summary>
            Represents the abstract multiplexer API
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.ClientName">
            <summary>
            Gets the client-name that will be used on all new connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.Configuration">
            <summary>
            Gets the configuration of the connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.TimeoutMilliseconds">
            <summary>
            Gets the timeout associated with the connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.OperationCount">
            <summary>
            The number of operations that have been performed on all connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.PreserveAsyncOrder">
            <summary>
            Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.IsConnected">
            <summary>
            Indicates whether any servers are connected
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.IsConnecting">
            <summary>
            Indicates whether any servers are connected
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.IncludeDetailInExceptions">
            <summary>
            Should exceptions include identifiable details? (key names, additional .Data annotations)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.StormLogThreshold">
            <summary>
            Limit at which to start recording unusual busy patterns (only one log will be retained at a time;
            set to a negative value to disable this feature)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.RegisterProfiler(System.Func{StackExchange.Redis.Profiling.ProfilingSession})">
            <summary>
            Register a callback to provide an on-demand ambient session provider based on the
            calling context; the implementing code is responsible for reliably resolving the same provider
            based on ambient context, or returning null to not profile
            </summary>
            <param name="profilingSessionProvider">The profiling session provider.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetCounters">
            <summary>
            Get summary statistics associates with this server
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ErrorMessage">
            <summary>
            A server replied with an error message;
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ConnectionFailed">
            <summary>
            Raised whenever a physical connection fails
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.InternalError">
            <summary>
            Raised whenever an internal error occurs (this is primarily for debugging)
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ConnectionRestored">
            <summary>
            Raised whenever a physical connection is established
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ConfigurationChanged">
            <summary>
            Raised when configuration changes are detected
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ConfigurationChangedBroadcast">
            <summary>
            Raised when nodes are explicitly requested to reconfigure via broadcast;
            this usually means master/replica changes
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetEndPoints(System.Boolean)">
            <summary>
            Gets all endpoints defined on the server
            </summary>
            <param name="configuredOnly">Whether to return only the explicitly configured endpoints.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.Wait(System.Threading.Tasks.Task)">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.Wait``1(System.Threading.Tasks.Task{``0})">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <typeparam name="T">The type in <paramref name="task"/>.</typeparam>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.WaitAll(System.Threading.Tasks.Task[])">
            <summary>
            Wait for the given asynchronous operations to complete (or timeout)
            </summary>
            <param name="tasks">The tasks to wait on.</param>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.HashSlotMoved">
            <summary>
            Raised when a hash-slot has been relocated
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.HashSlot(StackExchange.Redis.RedisKey)">
            <summary>
            Compute the hash-slot of a specified key
            </summary>
            <param name="key">The key to get a slot ID for.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetSubscriber(System.Object)">
            <summary>
            Obtain a pub/sub subscriber connection to the specified server
            </summary>
            <param name="asyncState">The async state to pass to the created <see cref="T:StackExchange.Redis.ISubscriber"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetDatabase(System.Int32,System.Object)">
            <summary>
            Obtain an interactive connection to a database inside redis
            </summary>
            <param name="db">The database ID to get.</param>
            <param name="asyncState">The async state to pass to the created <see cref="T:StackExchange.Redis.IDatabase"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetServer(System.String,System.Int32,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="host">The host to get a server for.</param>
            <param name="port">The specific port for <paramref name="host"/> to get a server for.</param>
            <param name="asyncState">The async state to pass to the created <see cref="T:StackExchange.Redis.IServer"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetServer(System.String,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="hostAndPort">The "host:port" string to get a server for.</param>
            <param name="asyncState">The async state to pass to the created <see cref="T:StackExchange.Redis.IServer"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetServer(System.Net.IPAddress,System.Int32)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="host">The host to get a server for.</param>
            <param name="port">The specific port for <paramref name="host"/> to get a server for.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetServer(System.Net.EndPoint,System.Object)">
            <summary>
            Obtain a configuration API for an individual server
            </summary>
            <param name="endpoint">The endpoint to get a server for.</param>
            <param name="asyncState">The async state to pass to the created <see cref="T:StackExchange.Redis.IServer"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.ConfigureAsync(System.IO.TextWriter)">
            <summary>
            Reconfigure the current connections based on the existing configuration
            </summary>
            <param name="log">The log to write output to.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.Configure(System.IO.TextWriter)">
            <summary>
            Reconfigure the current connections based on the existing configuration
            </summary>
            <param name="log">The log to write output to.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetStatus">
            <summary>
            Provides a text overview of the status of all connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetStatus(System.IO.TextWriter)">
            <summary>
            Provides a text overview of the status of all connections
            </summary>
            <param name="log">The log to write output to.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.Close(System.Boolean)">
            <summary>
            Close all connections and release all resources associated with this object
            </summary>
            <param name="allowCommandsToComplete">Whether to allow in-queue commadns to complete first.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.CloseAsync(System.Boolean)">
            <summary>
            Close all connections and release all resources associated with this object
            </summary>
            <param name="allowCommandsToComplete">Whether to allow in-queue commadns to complete first.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetStormLog">
            <summary>
            Obtains the log of unusual busy patterns
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.ResetStormLog">
            <summary>
            Resets the log of unusual busy patterns
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.PublishReconfigure(StackExchange.Redis.CommandFlags)">
            <summary>
            Request all compatible clients to reconfigure or reconnect
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending)</returns>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.PublishReconfigureAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Request all compatible clients to reconfigure or reconnect
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The number of instances known to have received the message (however, the actual number can be higher)</returns>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetHashSlot(StackExchange.Redis.RedisKey)">
            <summary>
            Get the hash-slot associated with a given key, if applicable; this can be useful for grouping operations
            </summary>
            <param name="key">The key to get a the slot for.</param>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.ExportConfiguration(System.IO.Stream,StackExchange.Redis.ExportOptions)">
            <summary>
            Write the configuration of all servers to an output stream
            </summary>
            <param name="destination">The destination stream to write the export to.</param>
            <param name="options">The options to use for this export.</param>
        </member>
        <member name="T:StackExchange.Redis.IDatabase">
            <summary>
            Describes functionality that is common to both standalone redis servers and redis clusters
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IDatabase.Database">
            <summary>
            The numeric identifier of this database
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.CreateBatch(System.Object)">
            <summary>
            Allows creation of a group of operations that will be sent to the server as a single unit,
            but which may or may not be processed on the server contiguously.
            </summary>
            <param name="asyncState">The async object state to be passed into the created <see cref="T:StackExchange.Redis.IBatch"/>.</param>
            <returns>The created batch.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.CreateTransaction(System.Object)">
            <summary>
            Allows creation of a group of operations that will be sent to the server as a single unit,
            and processed on the server as a single unit.
            </summary>
            <param name="asyncState">The async object state to be passed into the created <see cref="T:StackExchange.Redis.ITransaction"/>.</param>
            <returns>The created transaction.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyMigrate(StackExchange.Redis.RedisKey,System.Net.EndPoint,System.Int32,System.Int32,StackExchange.Redis.MigrateOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance.
            </summary>
            <param name="key">The key to migrate.</param>
            <param name="toServer">The server to migrate the key to.</param>
            <param name="toDatabase">The database to migrate the key to.</param>
            <param name="timeoutMilliseconds">The timeout to use for the transfer.</param>
            <param name="migrateOptions">The options to use for this migration.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/MIGRATE</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.DebugObject(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway.
            </summary>
            <param name="key">The key to debug.</param>
            <param name="flags">The flags to use for this migration.</param>
            <returns>The raw output from DEBUG OBJECT.</returns>
            <remarks>https://redis.io/commands/debug-object</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoAdd(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of geo entry.</param>
            <param name="latitude">The latitude of the geo entry.</param>
            <param name="member">The value to set at this entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False.</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.GeoEntry,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The geo value to store.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.GeoEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The geo values add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements that were added to the set, not including all the elements already present into the set.</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified member from the geo sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The geo value to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the member existed in the sorted set and was removed; False otherwise.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoDistance(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoUnit,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the distance between two members in the geospatial index represented by the sorted set.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member1">The first member to check.</param>
            <param name="member2">The second member to check.</param>
            <param name="unit">The unit of distance to return (defaults to meters).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing.</returns>
            <remarks>https://redis.io/commands/geodist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoHash(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="members">The members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command.</returns>
            <remarks>https://redis.io/commands/geohash</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoHash(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command.</returns>
            <remarks>https://redis.io/commands/geohash</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoPosition(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="members">The members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array.</returns>
            <remarks>https://redis.io/commands/geopos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoPosition(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array.</returns>
            <remarks>https://redis.io/commands/geopos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoRadius(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.GeoUnit,System.Int32,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get a radius of results from.</param>
            <param name="radius">The radius to check.</param>
            <param name="unit">The unit of <paramref name="radius"/> (defaults to meters).</param>
            <param name="count">The count of results to get, -1 for unlimited.</param>
            <param name="order">The order of the results.</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The results found within the radius, if any.</returns>
            <remarks>https://redis.io/commands/georadius</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoRadius(StackExchange.Redis.RedisKey,System.Double,System.Double,System.Double,StackExchange.Redis.GeoUnit,System.Int32,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of the point to get a radius of results from.</param>
            <param name="latitude">The latitude of the point to get a radius of results from.</param>
            <param name="radius">The radius to check.</param>
            <param name="unit">The unit of <paramref name="radius"/> (defaults to meters).</param>
            <param name="count">The count of results to get, -1 for unlimited.</param>
            <param name="order">The order of the results.</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The results found within the radius, if any.</returns>
            <remarks>https://redis.io/commands/georadius</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashDecrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the number stored at field in the hash stored at key by decrement. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the decrement operation.</returns>
            <remarks>The range of values supported by HINCRBY is limited to 64 bit signed integers.</remarks>
            <remarks>https://redis.io/commands/hincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashDecrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the decrement operation.</returns>
            <remarks>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</remarks>
            <remarks>https://redis.io/commands/hincrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashDelete(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields that were removed.</returns>
            <remarks>https://redis.io/commands/hdel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashDelete(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The fields in the hash to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields that were removed.</returns>
            <remarks>https://redis.io/commands/hdel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashExists(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if field is an existing field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the hash contains field. 0 if the hash does not contain field, or key does not exist.</returns>
            <remarks>https://redis.io/commands/hexists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashGet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value associated with field, or nil when field is not present in the hash or key does not exist.</returns>
            <remarks>https://redis.io/commands/hget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashGetLease(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value associated with field, or nil when field is not present in the hash or key does not exist.</returns>
            <remarks>https://redis.io/commands/hget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashGet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the values associated with the specified fields in the hash stored at key.
            For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The fields in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of values associated with the given fields, in the same order as they are requested.</returns>
            <remarks>https://redis.io/commands/hmget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashGetAll(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all fields and values of the hash stored at key. 
            </summary>
            <param name="key">The key of the hash to get all entries from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of fields and their values stored in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hgetall</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashIncrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the increment operation.</returns>
            <remarks>The range of values supported by HINCRBY is limited to 64 bit signed integers.</remarks>
            <remarks>https://redis.io/commands/hincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashIncrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the increment operation.</returns>
            <remarks>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</remarks>
            <remarks>https://redis.io/commands/hincrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashKeys(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all field names in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of fields in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hkeys</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of fields contained in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields in the hash, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/hlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The HSCAN command is used to incrementally iterate over a hash.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="pattern">The pattern of keys to get entries for.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all elements of the hash matching the pattern.</returns>
            <remarks>https://redis.io/commands/hscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The HSCAN command is used to incrementally iterate over a hash; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="pattern">The pattern of keys to get entries for.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all elements of the hash matching the pattern.</returns>
            <remarks>https://redis.io/commands/hscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashSet(StackExchange.Redis.RedisKey,StackExchange.Redis.HashEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the specified fields to their respective values in the hash stored at key. This command overwrites any specified fields that already exist in the hash, leaving other unspecified fields untouched. If key does not exist, a new key holding a hash is created.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The entries to set in the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/hmset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field to set in the hash.</param>
            <param name="value">The value to set.</param>
            <param name="when">Which conditions under which to set the field value (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated.</returns>
            <remarks>https://redis.io/commands/hset</remarks>
            <remarks>https://redis.io/commands/hsetnx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashStringLength(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the string length of the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field containing the string</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the length of the string at field, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/hstrlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashValues(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all values in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of values in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hvals</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="value">The value to add.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if at least 1 HyperLogLog internal register was altered, false otherwise.</returns>
            <remarks>https://redis.io/commands/pfadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="values">The values to add.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if at least 1 HyperLogLog internal register was altered, false otherwise.</returns>
            <remarks>https://redis.io/commands/pfadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The approximated number of unique elements observed via HyperLogLogAdd.</returns>
            <remarks>https://redis.io/commands/pfcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogLength(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist.
            </summary>
            <param name="keys">The keys of the hyperloglogs.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The approximated number of unique elements observed via HyperLogLogAdd.</returns>
            <remarks>https://redis.io/commands/pfcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogMerge(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures.
            </summary>
            <param name="destination">The key of the merged hyperloglog.</param>
            <param name="first">The key of the first hyperloglog to merge.</param>
            <param name="second">The key of the first hyperloglog to merge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/pfmerge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HyperLogLogMerge(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures.
            </summary>
            <param name="destination">The key of the merged hyperloglog.</param>
            <param name="sourceKeys">The keys of the hyperloglogs to merge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/pfmerge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.IdentifyEndpoint(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicate exactly which redis server we are talking to.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The endpoint serving the key.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyDelete(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified key. A key is ignored if it does not exist.
            If UNLINK is available (Redis 4.0+), it will be used.
            </summary>
            <param name="key">The key to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was removed.</returns>
            <remarks>https://redis.io/commands/del</remarks>
            <remarks>https://redis.io/commands/unlink</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyDelete(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified keys. A key is ignored if it does not exist.
            If UNLINK is available (Redis 4.0+), it will be used.
            </summary>
            <param name="keys">The keys to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that were removed.</returns>
            <remarks>https://redis.io/commands/del</remarks>
            <remarks>https://redis.io/commands/unlink</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyDump(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command.
            </summary>
            <param name="key">The key to dump.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the serialized value.</returns>
            <remarks>https://redis.io/commands/dump</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExists(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if key exists.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the key exists. 0 if the key does not exist.</returns>
            <remarks>https://redis.io/commands/exists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExists(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Indicates how many of the supplied keys exists.
            </summary>
            <param name="keys">The keys to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that existed.</returns>
            <remarks>https://redis.io/commands/exists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpire(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology.
            </summary>
            <param name="key">The key to set the expiration for.</param>
            <param name="expiry">The timeout to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was set. 0 if key does not exist or the timeout could not be set.</returns>
            <remarks>If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key.
            For Redis versions &lt; 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information.</remarks>
            <remarks>https://redis.io/commands/expire</remarks>
            <remarks>https://redis.io/commands/pexpire</remarks>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpire(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology.
            </summary>
            <param name="key">The key to set the expiration for.</param>
            <param name="expiry">The exact date to expiry to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was set. 0 if key does not exist or the timeout could not be set.</returns>
            <remarks>If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key.
            For Redis versions &lt; 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information.</remarks>
            <remarks>https://redis.io/commands/expireat</remarks>
            <remarks>https://redis.io/commands/pexpireat</remarks>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyIdleTime(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the time since the object stored at the specified key is idle (not requested by read or write operations)
            </summary>
            <param name="key">The key to get the time of.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The time since the object stored at the specified key is idle</returns>
            <remarks>https://redis.io/commands/object</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyMove(StackExchange.Redis.RedisKey,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this.
            </summary>
            <param name="key">The key to move.</param>
            <param name="database">The database to move the key to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if key was moved; 0 if key was not moved.</returns>
            <remarks>https://redis.io/commands/move</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyPersist(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated).
            </summary>
            <param name="key">The key to presist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout.</returns>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyRandom(StackExchange.Redis.CommandFlags)">
            <summary>
            Return a random key from the currently selected database.
            </summary>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The random key, or nil when the database is empty.</returns>
            <remarks>https://redis.io/commands/randomkey</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyRename(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. 
            </summary>
            <param name="key">The key to rename.</param>
            <param name="newKey">The key to rename to.</param>
            <param name="when">What conditions to rename under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was renamed, false otherwise.</returns>
            <remarks>https://redis.io/commands/rename</remarks>
            <remarks>https://redis.io/commands/renamenx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyRestore(StackExchange.Redis.RedisKey,System.Byte[],System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP).
            If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set.
            </summary>
            <param name="key">The key to restore.</param>
            <param name="value">The value of the key.</param>
            <param name="expiry">The expiry to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/restore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyTimeToLive(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the remaining time to live of a key that has a timeout.  This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>TTL, or nil when key does not exist or does not have a timeout.</returns>
            <remarks>https://redis.io/commands/ttl</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyType(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash.
            </summary>
            <param name="key">The key to get the type of.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Type of key, or none when key does not exist.</returns>
            <remarks>https://redis.io/commands/type</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListGetByIndex(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="index">The index position to ge the value at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The requested element, or nil when index is out of range.</returns>
            <remarks>https://redis.io/commands/lindex</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListInsertAfter(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Inserts value in the list stored at key either before or after the reference value pivot.
            When key does not exist, it is considered an empty list and no operation is performed.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="pivot">The value to insert after.</param>
            <param name="value">The value to insert.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the insert operation, or -1 when the value pivot was not found.</returns>
            <remarks>https://redis.io/commands/linsert</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListInsertBefore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Inserts value in the list stored at key either before or after the reference value pivot.
            When key does not exist, it is considered an empty list and no operation is performed.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="pivot">The value to insert before.</param>
            <param name="value">The value to insert.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the insert operation, or -1 when the value pivot was not found.</returns>
            <remarks>https://redis.io/commands/linsert</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPop(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the first element of the list stored at key.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of the first element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/lpop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to add to the head of the list.</param>
            <param name="when">Which conditions to add to the list under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
            <remarks>https://redis.io/commands/lpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the head of the list.</param>
            <param name="when">Which conditions to add to the list under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
            <remarks>https://redis.io/commands/lpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the head of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. 
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list at key.</returns>
            <remarks>https://redis.io/commands/llen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRange(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on.
            These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on.
            Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. 
            </summary>
            <param name="key">The key of the list.</param>
            <param name="start">The start index of the list.</param>
            <param name="stop">The stop index of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/lrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways:
            count &gt; 0: Remove elements equal to value moving from head to tail.
            count &lt; 0: Remove elements equal to value moving from tail to head.
            count = 0: Remove all elements equal to value.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to remove from the list.</param>
            <param name="count">The count behavior (see method summary).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of removed elements.</returns>
            <remarks>https://redis.io/commands/lrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPop(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the last element of the list stored at key.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped.</returns>
            <remarks>https://redis.io/commands/rpop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPopLeftPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination.
            </summary>
            <param name="source">The key of the source list.</param>
            <param name="destination">The key of the destination list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped and pushed.</returns>
            <remarks>https://redis.io/commands/rpoplpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to add to the tail of the list.</param>
            <param name="when">Which conditions to add to the list under.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
            <remarks>https://redis.io/commands/rpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the tail of the list.</param>
            <param name="when">Which conditions to add to the list under.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
            <remarks>https://redis.io/commands/rpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPush(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. 
            Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the tail of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListSetByIndex(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="index">The index to set the value at.</param>
            <param name="value">The values to add to the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/lset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListTrim(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on.
            For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain.
            start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="start">The start index of the list to trim to.</param>
            <param name="stop">The end index of the list to trim to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/ltrim</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.LockExtend(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.TimeSpan,StackExchange.Redis.CommandFlags)">
            <summary>
            Extends a lock, if the token value is correct.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value to set at the key.</param>
            <param name="expiry">The expiration of the lock key.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully extended.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.LockQuery(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Queries the token held against a lock.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The current value of the lock, if any.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.LockRelease(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Releases a lock, if the token value is correct.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value at the key tht must match.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully released, false otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.LockTake(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.TimeSpan,StackExchange.Redis.CommandFlags)">
            <summary>
            Takes a lock (specifying a token value) if it is not already taken.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value to set at the key.</param>
            <param name="expiry">The expiration of the lock key.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully taken, false otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.Publish(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Posts a message to the given channel.
            </summary>
            <param name="channel">The channel to publish to.</param>
            <param name="message">The message to send.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of clients that received the message.</returns>
            <remarks>https://redis.io/commands/publish</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.Execute(System.String,System.Object[])">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.Execute(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluate(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a Lua script against the server.
            </summary>
            <param name="script">The script to execute.</param>
            <param name="keys">The keys to execute against.</param>
            <param name="values">The values to execute against.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
            <remarks>https://redis.io/commands/evalsha</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluate(System.Byte[],StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a Lua script against the server using just the SHA1 hash
            </summary>
            <param name="hash">The hash of the script to execute.</param>
            <param name="keys">The keys to execute against.</param>
            <param name="values">The values to execute against.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/evalsha</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluate(StackExchange.Redis.LuaScript,System.Object,StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a lua script against the server, using previously prepared script.
            Named parameters, if any, are provided by the `parameters` object.
            </summary>
            <param name="script">The script to execute.</param>
            <param name="parameters">The parameters to pass to the script.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluate(StackExchange.Redis.LoadedLuaScript,System.Object,StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a lua script against the server, using previously prepared and loaded script.
            This method sends only the SHA1 hash of the lua script to Redis.
            Named parameters, if any, are provided by the `parameters` object.
            </summary>
            <param name="script">The already-loaded script to execute.</param>
            <param name="parameters">The parameters to pass to the script.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key.
            Specified members that are already a member of this set are ignored.
            If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False</returns>
            <remarks>https://redis.io/commands/sadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified members to the set stored at key.
            Specified members that are already a member of this set are ignored.
            If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The values to add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements that were added to the set, not including all the elements already present into the set.</returns>
            <remarks>https://redis.io/commands/sadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetCombine(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the members of the set resulting from the specified operation against the given sets.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="first">The key of the first set.</param>
            <param name="second">The key of the second set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List with members of the resulting set.</returns>
            <remarks>https://redis.io/commands/sunion</remarks>
            <remarks>https://redis.io/commands/sinter</remarks>
            <remarks>https://redis.io/commands/sdiff</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetCombine(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the members of the set resulting from the specified operation against the given sets.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="keys">The keys of the sets to operate on.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List with members of the resulting set.</returns>
            <remarks>https://redis.io/commands/sunion</remarks>
            <remarks>https://redis.io/commands/sinter</remarks>
            <remarks>https://redis.io/commands/sdiff</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetCombineAndStore(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="first">The key of the first set.</param>
            <param name="second">The key of the second set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting set.</returns>
            <remarks>https://redis.io/commands/sunionstore</remarks>
            <remarks>https://redis.io/commands/sinterstore</remarks>
            <remarks>https://redis.io/commands/sdiffstore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetCombineAndStore(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="keys">The keys of the sets to operate on.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting set.</returns>
            <remarks>https://redis.io/commands/sunionstore</remarks>
            <remarks>https://redis.io/commands/sinterstore</remarks>
            <remarks>https://redis.io/commands/sdiffstore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if member is a member of the set stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to check for .</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist.</returns>
            <remarks>https://redis.io/commands/sismember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the set cardinality (number of elements) of the set stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality (number of elements) of the set, or 0 if key does not exist.</returns>
            <remarks>https://redis.io/commands/scard</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetMembers(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all the members of the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>All elements of the set.</returns>
            <remarks>https://redis.io/commands/smembers</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetMove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients.
            When the specified element already exists in the destination set, it is only removed from the source set.
            </summary>
            <param name="source">The key of the source set.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="value">The value to move.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the element is moved. 0 if the element is not a member of source and no operation was performed.</returns>
            <remarks>https://redis.io/commands/smove</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetPop(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns a random element from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The removed element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/spop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetPop(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the specified number of random elements from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="count">The number of elements to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist.</returns>
            <remarks>https://redis.io/commands/spop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetRandomMember(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Return a random element from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected element, or nil when key does not exist</returns>
            <remarks>https://redis.io/commands/srandmember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetRandomMembers(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times.
            In this case the numer of returned elements is the absolute value of the specified count.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="count">The count of members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist</returns>
            <remarks>https://redis.io/commands/srandmember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the specified member from the set stored at key.  Specified members that are not a member of this set are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was already present in the set, else False</returns>
            <remarks>https://redis.io/commands/srem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The values to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of members that were removed from the set, not including non existing members.</returns>
            <remarks>https://redis.io/commands/srem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The SSCAN command is used to incrementally iterate over set
            </summary>
            <param name="key">The key of the set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all matching elements of the set.</returns>
            <remarks>https://redis.io/commands/sscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The SSCAN command is used to incrementally iterate over set; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all matching elements of the set.</returns>
            <remarks>https://redis.io/commands/sscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.Sort(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.SortType,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be
            used to perform external key-lookups using the <c>by</c> parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can
            be performed instead by specifying the <c>get</c> parameter (note that <c>#</c> specifies the element itself, when used in <c>get</c>).
            Referring to the <a href="https://redis.io/commands/sort">redis SORT documentation </a> for examples is recommended. When used in hashes, <c>by</c> and <c>get</c>
            can be used to specify fields using <c>-&gt;</c> notation (again, refer to redis documentation).
            </summary>
            <param name="key">The key of the list, set, or sorted set.</param>
            <param name="skip">How many entries to skip on the return.</param>
            <param name="take">How many entries to take on the return.</param>
            <param name="order">The ascending or descending order (defaults to ascending).</param>
            <param name="sortType">The sorting method (defaults to numeric).</param>
            <param name="by">The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup.</param>
            <param name="get">The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The sorted elements, or the external values if <c>get</c> is specified.</returns>
            <remarks>https://redis.io/commands/sort</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortAndStore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.SortType,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be
            used to perform external key-lookups using the <c>by</c> parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can
            be performed instead by specifying the <c>get</c> parameter (note that <c>#</c> specifies the element itself, when used in <c>get</c>).
            Referring to the <a href="https://redis.io/commands/sort">redis SORT documentation </a> for examples is recommended. When used in hashes, <c>by</c> and <c>get</c>
            can be used to specify fields using <c>-&gt;</c> notation (again, refer to redis documentation).
            </summary>
            <param name="destination">The destination key to store results in.</param>
            <param name="key">The key of the list, set, or sorted set.</param>
            <param name="skip">How many entries to skip on the return.</param>
            <param name="take">How many entries to take on the return.</param>
            <param name="order">The ascending or descending order (defaults to ascending).</param>
            <param name="sortType">The sorting method (defaults to numeric).</param>
            <param name="by">The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup.</param>
            <param name="get">The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements stored in the new list.</returns>
            <remarks>https://redis.io/commands/sort</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add to the sorted set.</param>
            <param name="score">The score for the member to add to the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the value was added, False if it already existed (the score is still updated)</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add to the sorted set.</param>
            <param name="score">The score for the member to add to the sorted set.</param>
            <param name="when">What conditions to add the element under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the value was added, False if it already existed (the score is still updated)</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and vlues to add to the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements added to the sorted sets, not including elements already existing for which the score was updated.</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and vlues to add to the sorted set.</param>
            <param name="when">What conditions to add the element under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements added to the sorted sets, not including elements already existing for which the score was updated.</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetCombineAndStore(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation over two sorted sets, and stores the result in destination, optionally performing 
            a specific aggregation (defaults to sum).
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key to store the results in.</param>
            <param name="first">The key of the first sorted set.</param>
            <param name="second">The key of the second sorted set.</param>
            <param name="aggregate">The aggregation method (defaults to sum).</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zunionstore</remarks>
            <remarks>https://redis.io/commands/zinterstore</remarks>
            <returns>the number of elements in the resulting sorted set at destination</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetCombineAndStore(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing 
            a specific aggregation (defaults to sum).
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key to store the results in.</param>
            <param name="keys">The keys of the sorted sets.</param>
            <param name="weights">The optional weights per set that correspond to <paramref name="keys"/>.</param>
            <param name="aggregate">The aggregation method (defaults to sum).</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zunionstore</remarks>
            <remarks>https://redis.io/commands/zinterstore</remarks>
            <returns>the number of elements in the resulting sorted set at destination</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetDecrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The new score of member.</returns>
            <remarks>https://redis.io/commands/zincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetIncrement(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The new score of member.</returns>
            <remarks>https://redis.io/commands/zincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetLength(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the sorted set cardinality (number of elements) of the sorted set stored at key.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min score to filter by (defaults to negative infinity).</param>
            <param name="max">The max score to filter by (defaults to positive infinity).</param>
            <param name="exclude">Whether to exclude <paramref name="min"/> and <paramref name="max"/> from the range check (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality (number of elements) of the sorted set, or 0 if key does not exist.</returns>
            <remarks>https://redis.io/commands/zcard</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetLengthByValue(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Whether to exclude <paramref name="min"/> and <paramref name="max"/> from the range check (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zlexcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByRank(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The start index to get.</param>
            <param name="stop">The stop index to get.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/zrange</remarks>
            <remarks>https://redis.io/commands/zrevrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByRankWithScores(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The start index to get.</param>
            <param name="stop">The stop index to get.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/zrange</remarks>
            <remarks>https://redis.io/commands/zrevrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByScore(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to filter by.</param>
            <param name="stop">The maximum score to filter by.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zrangebyscore</remarks>
            <remarks>https://redis.io/commands/zrevrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByScoreWithScores(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to filter by.</param>
            <param name="stop">The maximum score to filter by.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zrangebyscore</remarks>
            <remarks>https://redis.io/commands/zrevrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByValue(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zrangebylex</remarks>
            <returns>list of elements in the specified score range.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeByValue(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="order">Whether to order the data ascending or descending</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zrangebylex</remarks>
            <remarks>https://redis.io/commands/zrevrangebylex</remarks>
            <returns>list of elements in the specified score range.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRank(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to get the rank of.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null</returns>
            <remarks>https://redis.io/commands/zrank</remarks>
            <remarks>https://redis.io/commands/zrevrank</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified member from the sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the member existed in the sorted set and was removed; False otherwise.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRemove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified members from the sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="members">The members to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of members removed from the sorted set, not including non existing members.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRemoveRangeByRank(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum rank to remove.</param>
            <param name="stop">The maximum rank to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebyrank</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRemoveRangeByScore(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to remove.</param>
            <param name="stop">The maximum score to remove.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRemoveRangeByValue(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The minimum value to remove.</param>
            <param name="max">The maximum value to remove.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebylex</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The ZSCAN command is used to incrementally iterate over a sorted set
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all matching elements of the sorted set.</returns>
            <remarks>https://redis.io/commands/zscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetScan(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The ZSCAN command is used to incrementally iterate over a sorted set; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all matching elements of the sorted set.</returns>
            <remarks>https://redis.io/commands/zscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetScore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to get a score for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The score of the member.</returns>
            <remarks>https://redis.io/commands/zscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetPop(StackExchange.Redis.RedisKey,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the first element from the sorted set stored at key, by default with the scores ordered from low to high.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The removed element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/zpopmin</remarks>
            <remarks>https://redis.io/commands/zpopmax</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetPop(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the specified number of first elements from the sorted set stored at key, by default with the scores ordered from low to high.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">The number of elements to return.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist.</returns>
            <remarks>https://redis.io/commands/zpopmin</remarks>
            <remarks>https://redis.io/commands/zpopmax</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAcknowledge(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group that received the message.</param>
            <param name="messageId">The ID of the message to acknowledge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages acknowledged.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAcknowledge(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group that received the message.</param>
            <param name="messageIds">The IDs of the messages to acknowledge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages acknowledged.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="streamField">The field name for the stream entry.</param>
            <param name="streamValue">The value to set in the stream entry.</param>
            <param name="messageId">The ID to assign to the stream entry, defaults to an auto-generated ID ("*").</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The ID of the newly created message.</returns>
            <remarks>https://redis.io/commands/xadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.NameValueEntry[],System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="streamPairs">The fields and their associated values to set in the stream entry.</param>
            <param name="messageId">The ID to assign to the stream entry, defaults to an auto-generated ID ("*").</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The ID of the newly created message.</returns>
            <remarks>https://redis.io/commands/xadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamClaim(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the complete message for the claimed message(s).
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the given message(s).</param>
            <param name="minIdleTimeInMs">The minimum message idle time to allow the reassignment of the message(s).</param>
            <param name="messageIds">The IDs of the messages to claim for the given consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The messages successfully claimed by the given consumer.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamClaimIdsOnly(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the IDs for the claimed message(s).
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the given message(s).</param>
            <param name="minIdleTimeInMs">The minimum message idle time to allow the reassignment of the message(s).</param>
            <param name="messageIds">The IDs of the messages to claim for the given consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The message IDs for the messages successfully claimed by the given consumer.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamConsumerGroupSetPosition(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Set the position from which to read a stream for a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="position">The position from which to read for the consumer group.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if successful, otherwise false.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamConsumerInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the consumers for the given consumer group. This is the equivalent of calling "XINFO GROUPS key group".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The consumer group name.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamConsumerInfo"/> for each of the consumer group's consumers.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamCreateConsumerGroup(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Create a consumer group for the given stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the group to create.</param>
            <param name="position">The position to begin reading the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the group was created.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamCreateConsumerGroup(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Create a consumer group for the given stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the group to create.</param>
            <param name="position">The position to begin reading the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/>.</param>
            <param name="createStream">Create the stream if it does not already exist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the group was created.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamDelete(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Delete messages in the stream. This method does not delete the stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="messageIds">The IDs of the messages to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns the number of messages successfully deleted from the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamDeleteConsumer(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete a consumer from a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The name of the consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages that were pending for the deleted consumer.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamDeleteConsumerGroup(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if deleted, otherwise false.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamGroupInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the groups created for the given stream. This is the equivalent of calling "XINFO GROUPS key".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamGroupInfo"/> for each of the stream's groups.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the given stream. This is the equivalent of calling "XINFO STREAM key".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A <see cref="T:StackExchange.Redis.StreamInfo"/> instance with information about the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the number of entries in a stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of entries inside the given stream.</returns>
            <remarks>https://redis.io/commands/xlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamPending(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            View information about pending messages for a stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamPendingInfo"/>. <see cref="T:StackExchange.Redis.StreamPendingInfo"/> contains the number of pending messages, the highest and lowest ID of the pending messages, and the consumers with their pending message count.</returns>
            <remarks>The equivalent of calling XPENDING key group.</remarks>
            <remarks>https://redis.io/commands/xpending</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamPendingMessages(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            View information about each pending message.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="count">The maximum number of pending messages to return.</param>
            <param name="consumerName">The consumer name for the pending messages. Pass RedisValue.Null to include pending messages for all consumers.</param>
            <param name="minId">The minimum ID from which to read the stream of pending messages. The method will default to reading from the beginning of the stream.</param>
            <param name="maxId">The maximum ID to read to within the stream of pending messages. The method will default to reading to the end of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamPendingMessageInfo"/> for each pending message.</returns>
            <remarks>Equivalent of calling XPENDING key group start-id end-id count consumer-name.</remarks>
            <remarks>https://redis.io/commands/xpending</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamRange(StackExchange.Redis.RedisKey,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Read a stream using the given range of IDs.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="minId">The minimum ID from which to read the stream. The method will default to reading from the beginning of the stream.</param>
            <param name="maxId">The maximum ID to read to within the stream. The method will default to reading to the end of the stream.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="messageOrder">The order of the messages. <see cref="F:StackExchange.Redis.Order.Ascending"/> will execute XRANGE and <see cref="F:StackExchange.Redis.Order.Descending"/> wil execute XREVRANGE.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns an instance of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamRead(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from a single stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="position">The position from which to read the stream.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns a value of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>Equivalent of calling XREAD COUNT num STREAMS key id.</remarks>
            <remarks>https://redis.io/commands/xread</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamRead(StackExchange.Redis.StreamPosition[],System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREAD COUNT num STREAMS key1 key2 id1 id2.</remarks>
            <remarks>https://redis.io/commands/xread</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamReadGroup(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read messages from a stream into an associated consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The consumer name.</param>
            <param name="position">The position from which to read the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/> when null.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns a value of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamReadGroup(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Read messages from a stream into an associated consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The consumer name.</param>
            <param name="position">The position from which to read the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/> when null.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="noAck">When true, the message will not be added to the pending message list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns a value of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamReadGroup(StackExchange.Redis.StreamPosition[],StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams into the given consumer group. The consumer group with the given <paramref name="groupName"/>
            will need to have been created for each stream prior to calling this method.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName"></param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</remarks>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamReadGroup(StackExchange.Redis.StreamPosition[],StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams into the given consumer group. The consumer group with the given <paramref name="groupName"/>
            will need to have been created for each stream prior to calling this method.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName"></param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="noAck">When true, the message will not be added to the pending message list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</remarks>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamTrim(StackExchange.Redis.RedisKey,System.Int32,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Trim the stream to a specified maximum length.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages removed from the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringAppend(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string,
            so APPEND will be similar to SET in this special case.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to append to the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the string after the append operation.</returns>
            <remarks>https://redis.io/commands/append</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitCount(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Count the number of set bits (population counting) in a string.
            By default all the bytes contained in the string are examined. It is possible to specify the counting operation only in an interval passing the additional arguments start and end.
            Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="start">The start byte to count at.</param>
            <param name="end">The end byte to count at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of bits set to 1.</returns>
            <remarks>https://redis.io/commands/bitcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitOperation(StackExchange.Redis.Bitwise,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key.
            The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case
            and only the first key will be considered.
            The result of the operation is always stored at destkey.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The destination key to store the result in.</param>
            <param name="first">The first key to get the bit value from.</param>
            <param name="second">The second key to get the bit value from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The size of the string stored in the destination key, that is equal to the size of the longest input string.</returns>
            <remarks>https://redis.io/commands/bitop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitOperation(StackExchange.Redis.Bitwise,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key.
            The BITOP command supports four bitwise operations; note that NOT is a unary operator.
            The result of the operation is always stored at destkey.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The destination key to store the result in.</param>
            <param name="keys">The keys to get the bit values from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The size of the string stored in the destination key, that is equal to the size of the longest input string.</returns>
            <remarks>https://redis.io/commands/bitop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitPosition(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the position of the first bit set to 1 or 0 in a string.
            The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant bit is at position 8 and so forth.
            An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="bit">True to check for the first 1 bit, false to check for the first 0 bit.</param>
            <param name="start">The position to start looking (defaults to 0).</param>
            <param name="end">The position to stop looking (defaults to -1, unlimited).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns the position of the first bit set to 1 or 0 according to the request.
            If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned.</returns>
            <remarks>https://redis.io/commands/bitpos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringDecrement(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation.
            An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to decrement by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the decrement.</returns>
            <remarks>https://redis.io/commands/decrby</remarks>
            <remarks>https://redis.io/commands/decr</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringDecrement(StackExchange.Redis.RedisKey,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the string representing a floating point number stored at key by the specified decrement. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to decrement by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the decrement.</returns>
            <remarks>https://redis.io/commands/incrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGet(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGet(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned.
            </summary>
            <param name="keys">The keys of the strings.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The values of the strings with nil for keys do not exist.</returns>
            <remarks>https://redis.io/commands/mget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetLease(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetBit(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the bit value at offset in the string value stored at key.
            When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to get a bit at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The bit value stored at offset.</returns>
            <remarks>https://redis.io/commands/getbit</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetRange(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="start">The start index of the substring to get.</param>
            <param name="end">The end index of the substring to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The substring of the string value stored at key.</returns>
            <remarks>https://redis.io/commands/getrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the old value stored at key.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to replace the existing value with.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The old value stored at key, or nil when key did not exist.</returns>
            <remarks>https://redis.io/commands/getset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetWithExpiry(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key and its expiry, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringIncrement(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to increment by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the increment.</returns>
            <remarks>https://redis.io/commands/incrby</remarks>
            <remarks>https://redis.io/commands/incr</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringIncrement(StackExchange.Redis.RedisKey,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to increment by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the increment.</returns>
            <remarks>https://redis.io/commands/incrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringLength(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the length of the string value stored at key.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the length of the string at key, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/strlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to set.</param>
            <param name="expiry">The expiry to set.</param>
            <param name="when">Which condition to set the value under (detaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the string was set, false otherwise.</returns>
            <remarks>https://redis.io/commands/set</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSet(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue}[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists.
            </summary>
            <param name="values">The keys and values to set.</param>
            <param name="when">Which condition to set the value under (detaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the keys were set, else False</returns>
            <remarks>https://redis.io/commands/mset</remarks>
            <remarks>https://redis.io/commands/msetnx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSetBit(StackExchange.Redis.RedisKey,System.Int64,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets or clears the bit at offset in the string value stored at key.
            The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to set <paramref name="bit"/>.</param>
            <param name="bit">The bit value to set, true for 1, false for 0.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The original bit value stored at offset.</returns>
            <remarks>https://redis.io/commands/setbit</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSetRange(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to overwrite.</param>
            <param name="value">The value to overwrite with.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the string after it was modified by the command.</returns>
            <remarks>https://redis.io/commands/setrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyTouch(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Alters the last access time of a key.
            </summary>
            <param name="key">The key to touch.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was touched.</returns>
            <remarks>https://redis.io/commands/touch</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyTouch(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Alters the last access time of a keys. A key is ignored if it does not exist.
            </summary>
            <param name="keys">The keys to touch.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that were touched.</returns>
            <remarks>https://redis.io/commands/touch</remarks>
        </member>
        <member name="T:StackExchange.Redis.IDatabaseAsync">
            <summary>
            Describes functionality that is common to both standalone redis servers and redis clusters
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.IsConnected(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicates whether the instance can communicate with the server (resolved
            using the supplied key and optional flags)
            </summary>
            <param name="key">The key to check for.</param>
            <param name="flags">The flags to use for this operation.</param>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyMigrateAsync(StackExchange.Redis.RedisKey,System.Net.EndPoint,System.Int32,System.Int32,StackExchange.Redis.MigrateOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance.
            </summary>
            <param name="key">The key to migrate.</param>
            <param name="toServer">The server to migrate the key to.</param>
            <param name="toDatabase">The database to migrate the key to.</param>
            <param name="timeoutMilliseconds">The timeout to use for the transfer.</param>
            <param name="migrateOptions">The options to use for this migration.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/MIGRATE</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.DebugObjectAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway.
            </summary>
            <param name="key">The key to debug.</param>
            <param name="flags">The flags to use for this migration.</param>
            <returns>The raw output from DEBUG OBJECT.</returns>
            <remarks>https://redis.io/commands/debug-object</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoAddAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of geo entry.</param>
            <param name="latitude">The latitude of the geo entry.</param>
            <param name="member">The value to set at this entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False.</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.GeoEntry,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The geo value to store.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.GeoEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The geo values add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements that were added to the set, not including all the elements already present into the set.</returns>
            <remarks>https://redis.io/commands/geoadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified member from the geo sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The geo value to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the member existed in the sorted set and was removed; False otherwise.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoDistanceAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoUnit,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the distance between two members in the geospatial index represented by the sorted set.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member1">The first member to check.</param>
            <param name="member2">The second member to check.</param>
            <param name="unit">The unit of distance to return (defaults to meters).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing.</returns>
            <remarks>https://redis.io/commands/geodist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoHashAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="members">The members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command.</returns>
            <remarks>https://redis.io/commands/geohash</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoHashAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command.</returns>
            <remarks>https://redis.io/commands/geohash</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoPositionAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="members">The members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array.</returns>
            <remarks>https://redis.io/commands/geopos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoPositionAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array.</returns>
            <remarks>https://redis.io/commands/geopos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoRadiusAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.GeoUnit,System.Int32,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The member to get a radius of results from.</param>
            <param name="radius">The radius to check.</param>
            <param name="unit">The unit of <paramref name="radius"/> (defaults to meters).</param>
            <param name="count">The count of results to get, -1 for unlimited.</param>
            <param name="order">The order of the results.</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The results found within the radius, if any.</returns>
            <remarks>https://redis.io/commands/georadius</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoRadiusAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,System.Double,StackExchange.Redis.GeoUnit,System.Int32,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius).
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of the point to get a radius of results from.</param>
            <param name="latitude">The latitude of the point to get a radius of results from.</param>
            <param name="radius">The radius to check.</param>
            <param name="unit">The unit of <paramref name="radius"/> (defaults to meters).</param>
            <param name="count">The count of results to get, -1 for unlimited.</param>
            <param name="order">The order of the results.</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The results found within the radius, if any.</returns>
            <remarks>https://redis.io/commands/georadius</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashDecrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the number stored at field in the hash stored at key by decrement. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the decrement operation.</returns>
            <remarks>The range of values supported by HINCRBY is limited to 64 bit signed integers.</remarks>
            <remarks>https://redis.io/commands/hincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashDecrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the decrement operation.</returns>
            <remarks>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</remarks>
            <remarks>https://redis.io/commands/hincrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashDeleteAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields that were removed.</returns>
            <remarks>https://redis.io/commands/hdel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashDeleteAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The fields in the hash to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields that were removed.</returns>
            <remarks>https://redis.io/commands/hdel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashExistsAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if field is an existing field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the hash contains field. 0 if the hash does not contain field, or key does not exist.</returns>
            <remarks>https://redis.io/commands/hexists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashGetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value associated with field, or nil when field is not present in the hash or key does not exist.</returns>
            <remarks>https://redis.io/commands/hget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashGetLeaseAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value associated with field, or nil when field is not present in the hash or key does not exist.</returns>
            <remarks>https://redis.io/commands/hget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashGetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the values associated with the specified fields in the hash stored at key.
            For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The fields in the hash to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of values associated with the given fields, in the same order as they are requested.</returns>
            <remarks>https://redis.io/commands/hmget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashGetAllAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all fields and values of the hash stored at key. 
            </summary>
            <param name="key">The key of the hash to get all entries from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of fields and their values stored in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hgetall</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashIncrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the increment operation.</returns>
            <remarks>The range of values supported by HINCRBY is limited to 64 bit signed integers.</remarks>
            <remarks>https://redis.io/commands/hincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashIncrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field in the hash to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value at field after the increment operation.</returns>
            <remarks>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</remarks>
            <remarks>https://redis.io/commands/hincrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashKeysAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all field names in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of fields in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hkeys</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of fields contained in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of fields in the hash, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/hlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashScanAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The HSCAN command is used to incrementally iterate over a hash; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="pattern">The pattern of keys to get entries for.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all elements of the hash matching the pattern.</returns>
            <remarks>https://redis.io/commands/hscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.HashEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the specified fields to their respective values in the hash stored at key. This command overwrites any specified fields that already exist in the hash, leaving other unspecified fields untouched. If key does not exist, a new key holding a hash is created.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashFields">The entries to set in the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/hmset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field to set in the hash.</param>
            <param name="value">The value to set.</param>
            <param name="when">Which conditions under which to set the field value (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated.</returns>
            <remarks>https://redis.io/commands/hset</remarks>
            <remarks>https://redis.io/commands/hsetnx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashStringLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the string length of the value associated with field in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="hashField">The field containing the string</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the length of the string at field, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/hstrlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashValuesAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all values in the hash stored at key.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of values in the hash, or an empty list when key does not exist.</returns>
            <remarks>https://redis.io/commands/hvals</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="value">The value to add.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if at least 1 HyperLogLog internal register was altered, false otherwise.</returns>
            <remarks>https://redis.io/commands/pfadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="values">The values to add.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if at least 1 HyperLogLog internal register was altered, false otherwise.</returns>
            <remarks>https://redis.io/commands/pfadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist.
            </summary>
            <param name="key">The key of the hyperloglog.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The approximated number of unique elements observed via HyperLogLogAdd.</returns>
            <remarks>https://redis.io/commands/pfcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogLengthAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist.
            </summary>
            <param name="keys">The keys of the hyperloglogs.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The approximated number of unique elements observed via HyperLogLogAdd.</returns>
            <remarks>https://redis.io/commands/pfcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogMergeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures.
            </summary>
            <param name="destination">The key of the merged hyperloglog.</param>
            <param name="first">The key of the first hyperloglog to merge.</param>
            <param name="second">The key of the first hyperloglog to merge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/pfmerge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HyperLogLogMergeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures.
            </summary>
            <param name="destination">The key of the merged hyperloglog.</param>
            <param name="sourceKeys">The keys of the hyperloglogs to merge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/pfmerge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.IdentifyEndpointAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicate exactly which redis server we are talking to.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The endpoint serving the key.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyDeleteAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified key. A key is ignored if it does not exist.
            If UNLINK is available (Redis 4.0+), it will be used.
            </summary>
            <param name="key">The key to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was removed.</returns>
            <remarks>https://redis.io/commands/del</remarks>
            <remarks>https://redis.io/commands/unlink</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyDeleteAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified keys. A key is ignored if it does not exist.
            If UNLINK is available (Redis 4.0+), it will be used.
            </summary>
            <param name="keys">The keys to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that were removed.</returns>
            <remarks>https://redis.io/commands/del</remarks>
            <remarks>https://redis.io/commands/unlink</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyDumpAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command.
            </summary>
            <param name="key">The key to dump.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the serialized value.</returns>
            <remarks>https://redis.io/commands/dump</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExistsAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if key exists.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the key exists. 0 if the key does not exist.</returns>
            <remarks>https://redis.io/commands/exists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExistsAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Indicates how many of the supplied keys exists.
            </summary>
            <param name="keys">The keys to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that existed.</returns>
            <remarks>https://redis.io/commands/exists</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireAsync(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology.
            </summary>
            <param name="key">The key to set the expiration for.</param>
            <param name="expiry">The timeout to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was set. 0 if key does not exist or the timeout could not be set.</returns>
            <remarks>If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key.
            For Redis versions &lt; 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information.</remarks>
            <remarks>https://redis.io/commands/expire</remarks>
            <remarks>https://redis.io/commands/pexpire</remarks>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireAsync(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology.
            </summary>
            <param name="key">The key to set the expiration for.</param>
            <param name="expiry">The exact date to expiry to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was set. 0 if key does not exist or the timeout could not be set.</returns>
            <remarks>If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key.
            For Redis versions &lt; 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information.</remarks>
            <remarks>https://redis.io/commands/expireat</remarks>
            <remarks>https://redis.io/commands/pexpireat</remarks>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyIdleTimeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the time since the object stored at the specified key is idle (not requested by read or write operations)
            </summary>
            <param name="key">The key to get the time of.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The time since the object stored at the specified key is idle</returns>
            <remarks>https://redis.io/commands/object</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyMoveAsync(StackExchange.Redis.RedisKey,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this.
            </summary>
            <param name="key">The key to move.</param>
            <param name="database">The database to move the key to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if key was moved; 0 if key was not moved.</returns>
            <remarks>https://redis.io/commands/move</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyPersistAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated).
            </summary>
            <param name="key">The key to presist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout.</returns>
            <remarks>https://redis.io/commands/persist</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyRandomAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Return a random key from the currently selected database.
            </summary>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The random key, or nil when the database is empty.</returns>
            <remarks>https://redis.io/commands/randomkey</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyRenameAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. 
            </summary>
            <param name="key">The key to rename.</param>
            <param name="newKey">The key to rename to.</param>
            <param name="when">What conditions to rename under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was renamed, false otherwise.</returns>
            <remarks>https://redis.io/commands/rename</remarks>
            <remarks>https://redis.io/commands/renamenx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyRestoreAsync(StackExchange.Redis.RedisKey,System.Byte[],System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP).
            If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set.
            </summary>
            <param name="key">The key to restore.</param>
            <param name="value">The value of the key.</param>
            <param name="expiry">The expiry to set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/restore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTimeToLiveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the remaining time to live of a key that has a timeout.  This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset.
            </summary>
            <param name="key">The key to check.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>TTL, or nil when key does not exist or does not have a timeout.</returns>
            <remarks>https://redis.io/commands/ttl</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTypeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash.
            </summary>
            <param name="key">The key to get the type of.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Type of key, or none when key does not exist.</returns>
            <remarks>https://redis.io/commands/type</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListGetByIndexAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="index">The index position to ge the value at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The requested element, or nil when index is out of range.</returns>
            <remarks>https://redis.io/commands/lindex</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListInsertAfterAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Inserts value in the list stored at key either before or after the reference value pivot.
            When key does not exist, it is considered an empty list and no operation is performed.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="pivot">The value to insert after.</param>
            <param name="value">The value to insert.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the insert operation, or -1 when the value pivot was not found.</returns>
            <remarks>https://redis.io/commands/linsert</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListInsertBeforeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Inserts value in the list stored at key either before or after the reference value pivot.
            When key does not exist, it is considered an empty list and no operation is performed.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="pivot">The value to insert before.</param>
            <param name="value">The value to insert.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the insert operation, or -1 when the value pivot was not found.</returns>
            <remarks>https://redis.io/commands/linsert</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPopAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the first element of the list stored at key.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of the first element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/lpop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to add to the head of the list.</param>
            <param name="when">Which conditions to add to the list under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
            <remarks>https://redis.io/commands/lpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The value to add to the head of the list.</param>
            <param name="when">Which conditions to add to the list under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
            <remarks>https://redis.io/commands/lpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations.
            Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the head of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operations.</returns>
            <remarks>https://redis.io/commands/lpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. 
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list at key.</returns>
            <remarks>https://redis.io/commands/llen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRangeAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on.
            These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on.
            Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. 
            </summary>
            <param name="key">The key of the list.</param>
            <param name="start">The start index of the list.</param>
            <param name="stop">The stop index of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/lrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways:
            count &gt; 0: Remove elements equal to value moving from head to tail.
            count &lt; 0: Remove elements equal to value moving from tail to head.
            count = 0: Remove all elements equal to value.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to remove from the list.</param>
            <param name="count">The count behavior (see method summary).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of removed elements.</returns>
            <remarks>https://redis.io/commands/lrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPopAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the last element of the list stored at key.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped.</returns>
            <remarks>https://redis.io/commands/rpop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPopLeftPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination.
            </summary>
            <param name="source">The key of the source list.</param>
            <param name="destination">The key of the destination list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped and pushed.</returns>
            <remarks>https://redis.io/commands/rpoplpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="value">The value to add to the tail of the list.</param>
            <param name="when">Which conditions to add to the list under.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
            <remarks>https://redis.io/commands/rpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the tail of the list.</param>
            <param name="when">Which conditions to add to the list under.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
            <remarks>https://redis.io/commands/rpushx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPushAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. 
            Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="values">The values to add to the tail of the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the list after the push operation.</returns>
            <remarks>https://redis.io/commands/rpush</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListSetByIndexAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="index">The index to set the value at.</param>
            <param name="value">The values to add to the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/lset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListTrimAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on.
            For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain.
            start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="start">The start index of the list to trim to.</param>
            <param name="stop">The end index of the list to trim to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/ltrim</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.LockExtendAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.TimeSpan,StackExchange.Redis.CommandFlags)">
            <summary>
            Extends a lock, if the token value is correct.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value to set at the key.</param>
            <param name="expiry">The expiration of the lock key.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully extended.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.LockQueryAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Queries the token held against a lock.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The current value of the lock, if any.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.LockReleaseAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Releases a lock, if the token value is correct.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value at the key tht must match.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully released, false otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.LockTakeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.TimeSpan,StackExchange.Redis.CommandFlags)">
            <summary>
            Takes a lock (specifying a token value) if it is not already taken.
            </summary>
            <param name="key">The key of the lock.</param>
            <param name="value">The value to set at the key.</param>
            <param name="expiry">The expiration of the lock key.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the lock was successfully taken, false otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.PublishAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Posts a message to the given channel.
            </summary>
            <param name="channel">The channel to publish to.</param>
            <param name="message">The message to send.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of clients that received the message.</returns>
            <remarks>https://redis.io/commands/publish</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ExecuteAsync(System.String,System.Object[])">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ExecuteAsync(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateAsync(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a Lua script against the server.
            </summary>
            <param name="script">The script to execute.</param>
            <param name="keys">The keys to execute against.</param>
            <param name="values">The values to execute against.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
            <remarks>https://redis.io/commands/evalsha</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateAsync(System.Byte[],StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a Lua script against the server using just the SHA1 hash
            </summary>
            <param name="hash">The hash of the script to execute.</param>
            <param name="keys">The keys to execute against.</param>
            <param name="values">The values to execute against.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/evalsha</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateAsync(StackExchange.Redis.LuaScript,System.Object,StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a lua script against the server, using previously prepared script.
            Named parameters, if any, are provided by the `parameters` object.
            </summary>
            <param name="script">The script to execute.</param>
            <param name="parameters">The parameters to pass to the script.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateAsync(StackExchange.Redis.LoadedLuaScript,System.Object,StackExchange.Redis.CommandFlags)">
            <summary>
            Execute a lua script against the server, using previously prepared and loaded script.
            This method sends only the SHA1 hash of the lua script to Redis.
            Named parameters, if any, are provided by the `parameters` object.
            </summary>
            <param name="script">The already-loaded script to execute.</param>
            <param name="parameters">The parameters to pass to the script.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A dynamic representation of the script's result</returns>
            <remarks>https://redis.io/commands/eval</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified member to the set stored at key.
            Specified members that are already a member of this set are ignored.
            If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was not already present in the set, else False</returns>
            <remarks>https://redis.io/commands/sadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Add the specified members to the set stored at key.
            Specified members that are already a member of this set are ignored.
            If key does not exist, a new set is created before adding the specified members.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The values to add to the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements that were added to the set, not including all the elements already present into the set.</returns>
            <remarks>https://redis.io/commands/sadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetCombineAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the members of the set resulting from the specified operation against the given sets.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="first">The key of the first set.</param>
            <param name="second">The key of the second set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List with members of the resulting set.</returns>
            <remarks>https://redis.io/commands/sunion</remarks>
            <remarks>https://redis.io/commands/sinter</remarks>
            <remarks>https://redis.io/commands/sdiff</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetCombineAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the members of the set resulting from the specified operation against the given sets.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="keys">The keys of the sets to operate on.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List with members of the resulting set.</returns>
            <remarks>https://redis.io/commands/sunion</remarks>
            <remarks>https://redis.io/commands/sinter</remarks>
            <remarks>https://redis.io/commands/sdiff</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetCombineAndStoreAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="first">The key of the first set.</param>
            <param name="second">The key of the second set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting set.</returns>
            <remarks>https://redis.io/commands/sunionstore</remarks>
            <remarks>https://redis.io/commands/sinterstore</remarks>
            <remarks>https://redis.io/commands/sdiffstore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetCombineAndStoreAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="keys">The keys of the sets to operate on.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting set.</returns>
            <remarks>https://redis.io/commands/sunionstore</remarks>
            <remarks>https://redis.io/commands/sinterstore</remarks>
            <remarks>https://redis.io/commands/sdiffstore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetContainsAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns if member is a member of the set stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to check for .</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist.</returns>
            <remarks>https://redis.io/commands/sismember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the set cardinality (number of elements) of the set stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality (number of elements) of the set, or 0 if key does not exist.</returns>
            <remarks>https://redis.io/commands/scard</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetMembersAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all the members of the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>All elements of the set.</returns>
            <remarks>https://redis.io/commands/smembers</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetMoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients.
            When the specified element already exists in the destination set, it is only removed from the source set.
            </summary>
            <param name="source">The key of the source set.</param>
            <param name="destination">The key of the destination set.</param>
            <param name="value">The value to move.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>1 if the element is moved. 0 if the element is not a member of source and no operation was performed.</returns>
            <remarks>https://redis.io/commands/smove</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetPopAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns a random element from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The removed element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/spop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetPopAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the specified number of random elements from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="count">The number of elements to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist.</returns>
            <remarks>https://redis.io/commands/spop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetRandomMemberAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Return a random element from the set value stored at key.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected element, or nil when key does not exist</returns>
            <remarks>https://redis.io/commands/srandmember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetRandomMembersAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times.
            In this case the numer of returned elements is the absolute value of the specified count.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="count">The count of members to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist</returns>
            <remarks>https://redis.io/commands/srandmember</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the specified member from the set stored at key.  Specified members that are not a member of this set are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="value">The value to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the specified member was already present in the set, else False</returns>
            <remarks>https://redis.io/commands/srem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The values to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of members that were removed from the set, not including non existing members.</returns>
            <remarks>https://redis.io/commands/srem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.SortType,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be
            used to perform external key-lookups using the <c>by</c> parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can
            be performed instead by specifying the <c>get</c> parameter (note that <c>#</c> specifies the element itself, when used in <c>get</c>).
            Referring to the <a href="https://redis.io/commands/sort">redis SORT documentation </a> for examples is recommended. When used in hashes, <c>by</c> and <c>get</c>
            can be used to specify fields using <c>-&gt;</c> notation (again, refer to redis documentation).
            </summary>
            <param name="key">The key of the list, set, or sorted set.</param>
            <param name="skip">How many entries to skip on the return.</param>
            <param name="take">How many entries to take on the return.</param>
            <param name="order">The ascending or descending order (defaults to ascending).</param>
            <param name="sortType">The sorting method (defaults to numeric).</param>
            <param name="by">The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup.</param>
            <param name="get">The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The sorted elements, or the external values if <c>get</c> is specified.</returns>
            <remarks>https://redis.io/commands/sort</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortAndStoreAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.SortType,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be
            used to perform external key-lookups using the <c>by</c> parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can
            be performed instead by specifying the <c>get</c> parameter (note that <c>#</c> specifies the element itself, when used in <c>get</c>).
            Referring to the <a href="https://redis.io/commands/sort">redis SORT documentation </a> for examples is recommended. When used in hashes, <c>by</c> and <c>get</c>
            can be used to specify fields using <c>-&gt;</c> notation (again, refer to redis documentation).
            </summary>
            <param name="destination">The destination key to store results in.</param>
            <param name="key">The key of the list, set, or sorted set.</param>
            <param name="skip">How many entries to skip on the return.</param>
            <param name="take">How many entries to take on the return.</param>
            <param name="order">The ascending or descending order (defaults to ascending).</param>
            <param name="sortType">The sorting method (defaults to numeric).</param>
            <param name="by">The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup.</param>
            <param name="get">The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements stored in the new list.</returns>
            <remarks>https://redis.io/commands/sort</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add to the sorted set.</param>
            <param name="score">The score for the member to add to the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the value was added, False if it already existed (the score is still updated)</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add to the sorted set.</param>
            <param name="score">The score for the member to add to the sorted set.</param>
            <param name="when">What conditions to add the element under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the value was added, False if it already existed (the score is still updated)</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and values to add to the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements added to the sorted sets, not including elements already existing for which the score was updated.</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and values to add to the sorted set.</param>
            <param name="when">What conditions to add the element under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements added to the sorted sets, not including elements already existing for which the score was updated.</returns>
            <remarks>https://redis.io/commands/zadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetCombineAndStoreAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation over two sorted sets, and stores the result in destination, optionally performing 
            a specific aggregation (defaults to sum).
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key to store the results in.</param>
            <param name="first">The key of the first sorted set.</param>
            <param name="second">The key of the second sorted set.</param>
            <param name="aggregate">The aggregation method (defaults to sum).</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zunionstore</remarks>
            <remarks>https://redis.io/commands/zinterstore</remarks>
            <returns>the number of elements in the resulting sorted set at destination</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetCombineAndStoreAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing 
            a specific aggregation (defaults to sum).
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The key to store the results in.</param>
            <param name="keys">The keys of the sorted sets.</param>
            <param name="weights">The optional weights per set that correspond to <paramref name="keys"/>.</param>
            <param name="aggregate">The aggregation method (defaults to sum).</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zunionstore</remarks>
            <remarks>https://redis.io/commands/zinterstore</remarks>
            <returns>the number of elements in the resulting sorted set at destination</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetDecrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to decrement.</param>
            <param name="value">The amount to decrement by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The new score of member.</returns>
            <remarks>https://redis.io/commands/zincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetIncrementAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to increment.</param>
            <param name="value">The amount to increment by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The new score of member.</returns>
            <remarks>https://redis.io/commands/zincrby</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetLengthAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the sorted set cardinality (number of elements) of the sorted set stored at key.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min score to filter by (defaults to negative infinity).</param>
            <param name="max">The max score to filter by (defaults to positive infinity).</param>
            <param name="exclude">Whether to exclude <paramref name="min"/> and <paramref name="max"/> from the range check (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality (number of elements) of the sorted set, or 0 if key does not exist.</returns>
            <remarks>https://redis.io/commands/zcard</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetLengthByValueAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Whether to exclude <paramref name="min"/> and <paramref name="max"/> from the range check (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zlexcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByRankAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The start index to get.</param>
            <param name="stop">The stop index to get.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/zrange</remarks>
            <remarks>https://redis.io/commands/zrevrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByRankWithScoresAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The start index to get.</param>
            <param name="stop">The stop index to get.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified range.</returns>
            <remarks>https://redis.io/commands/zrange</remarks>
            <remarks>https://redis.io/commands/zrevrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByScoreAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to filter by.</param>
            <param name="stop">The maximum score to filter by.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zrangebyscore</remarks>
            <remarks>https://redis.io/commands/zrevrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByScoreWithScoresAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.
            Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to filter by.</param>
            <param name="stop">The maximum score to filter by.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>List of elements in the specified score range.</returns>
            <remarks>https://redis.io/commands/zrangebyscore</remarks>
            <remarks>https://redis.io/commands/zrevrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByValueAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zrangebylex</remarks>
            <returns>list of elements in the specified score range.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeByValueAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The min value to filter by.</param>
            <param name="max">The max value to filter by.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="order">Whether to order the data ascending or descending</param>
            <param name="skip">How many items to skip.</param>
            <param name="take">How many items to take.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>https://redis.io/commands/zrangebylex</remarks>
            <remarks>https://redis.io/commands/zrevrangebylex</remarks>
            <returns>list of elements in the specified score range.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRankAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to get the rank of.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null</returns>
            <remarks>https://redis.io/commands/zrank</remarks>
            <remarks>https://redis.io/commands/zrevrank</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified member from the sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the member existed in the sorted set and was removed; False otherwise.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRemoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Removes the specified members from the sorted set stored at key. Non existing members are ignored.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="members">The members to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of members removed from the sorted set, not including non existing members.</returns>
            <remarks>https://redis.io/commands/zrem</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRemoveRangeByRankAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum rank to remove.</param>
            <param name="stop">The maximum rank to remove.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebyrank</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRemoveRangeByScoreAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default).
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="start">The minimum score to remove.</param>
            <param name="stop">The maximum score to remove.</param>
            <param name="exclude">Which of <paramref name="start"/> and <paramref name="stop"/> to exclude (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebyscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRemoveRangeByValueAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.Exclude,StackExchange.Redis.CommandFlags)">
            <summary>
            When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="min">The minimum value to remove.</param>
            <param name="max">The maximum value to remove.</param>
            <param name="exclude">Which of <paramref name="min"/> and <paramref name="max"/> to exclude (defaults to both inclusive).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the number of elements removed.</returns>
            <remarks>https://redis.io/commands/zremrangebylex</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetScanAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The SSCAN command is used to incrementally iterate over set; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Yields all matching elements of the set.</returns>
            <remarks>https://redis.io/commands/sscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetScanAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            The ZSCAN command is used to incrementally iterate over a sorted set
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="pattern">The pattern to match.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="flags">The flags to use for this operation.</param>
            <param name="cursor">The cursor position to start at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <returns>Yields all matching elements of the sorted set.</returns>
            <remarks>https://redis.io/commands/zscan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetScoreAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to get a score for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The score of the member.</returns>
            <remarks>https://redis.io/commands/zscore</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetPopAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the first element from the sorted set stored at key, by default with the scores ordered from low to high.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The removed element, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/zpopmin</remarks>
            <remarks>https://redis.io/commands/zpopmax</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetPopAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns the specified number of first elements from the sorted set stored at key, by default with the scores ordered from low to high.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">The number of elements to return.</param>
            <param name="order">The order to sort by (defaults to ascending).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of elements, or an empty array when key does not exist.</returns>
            <remarks>https://redis.io/commands/zpopmin</remarks>
            <remarks>https://redis.io/commands/zpopmax</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAcknowledgeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group that received the message.</param>
            <param name="messageId">The ID of the message to acknowledge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages acknowledged.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAcknowledgeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group that received the message.</param>
            <param name="messageIds">The IDs of the messages to acknowledge.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages acknowledged.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="streamField">The field name for the stream entry.</param>
            <param name="streamValue">The value to set in the stream entry.</param>
            <param name="messageId">The ID to assign to the stream entry, defaults to an auto-generated ID ("*").</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The ID of the newly created message.</returns>
            <remarks>https://redis.io/commands/xadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.NameValueEntry[],System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="streamPairs">The fields and their associated values to set in the stream entry.</param>
            <param name="messageId">The ID to assign to the stream entry, defaults to an auto-generated ID ("*").</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The ID of the newly created message.</returns>
            <remarks>https://redis.io/commands/xadd</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamClaimAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the complete message for the claimed message(s).
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the given messages.</param>
            <param name="minIdleTimeInMs">The minimum message idle time to allow the reassignment of the message(s).</param>
            <param name="messageIds">The IDs of the messages to claim for the given consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The messages successfully claimed by the given consumer.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamClaimIdsOnlyAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the IDs for the claimed message(s).
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the given message(s).</param>
            <param name="minIdleTimeInMs">The minimum message idle time to allow the reassignment of the message(s).</param>
            <param name="messageIds">The IDs of the messages to claim for the given consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The message IDs for the messages successfully claimed by the given consumer.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamConsumerGroupSetPositionAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Set the position from which to read a stream for a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="position">The position from which to read for the consumer group.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if successful, otherwise false.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamConsumerInfoAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the consumers for the given consumer group. This is the equivalent of calling "XINFO GROUPS key group".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The consumer group name.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamConsumerInfo"/> for each of the consumer group's consumers.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamCreateConsumerGroupAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Create a consumer group for the given stream. 
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the group to create.</param>
            <param name="position">The position to begin reading the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the group was created.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamCreateConsumerGroupAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Create a consumer group for the given stream. 
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the group to create.</param>
            <param name="position">The position to begin reading the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/>.</param>
            <param name="createStream">Create the stream if it does not already exist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the group was created.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamDeleteAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Delete messages in the stream. This method does not delete the stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="messageIds">The IDs of the messages to delete.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns the number of messages successfully deleted from the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamDeleteConsumerAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete a consumer from a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The name of the consumer.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages that were pending for the deleted consumer.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamDeleteConsumerGroupAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete a consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if deleted, otherwise false.</returns>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamGroupInfoAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the groups created for the given stream. This is the equivalent of calling "XINFO GROUPS key".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamGroupInfo"/> for each of the stream's groups.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamInfoAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Retrieve information about the given stream. This is the equivalent of calling "XINFO STREAM key".
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A <see cref="T:StackExchange.Redis.StreamInfo"/> instance with information about the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the number of entries in a stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of entries inside the given stream.</returns>
            <remarks>https://redis.io/commands/xlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamPendingAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            View information about pending messages for a stream. A pending message is a message read using StreamReadGroup (XREADGROUP) but not yet acknowledged.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamPendingInfo"/>. <see cref="T:StackExchange.Redis.StreamPendingInfo"/> contains the number of pending messages, the highest and lowest ID of the pending messages, and the consumers with their pending message count.</returns>
            <remarks>The equivalent of calling XPENDING key group.</remarks>
            <remarks>https://redis.io/commands/xpending</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamPendingMessagesAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            View information about each pending message.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="count">The maximum number of pending messages to return.</param>
            <param name="consumerName">The consumer name for the pending messages. Pass RedisValue.Null to include pending messages for all consumers.</param>
            <param name="minId">The minimum ID from which to read the stream of pending messages. The method will default to reading from the beginning of the stream.</param>
            <param name="maxId">The maximum ID to read to within the stream of pending messages. The method will default to reading to the end of the stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamPendingMessageInfo"/> for each pending message.</returns>
            <remarks>Equivalent of calling XPENDING key group start-id end-id count consumer-name.</remarks>
            <remarks>https://redis.io/commands/xpending</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamRangeAsync(StackExchange.Redis.RedisKey,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},StackExchange.Redis.Order,StackExchange.Redis.CommandFlags)">
            <summary>
            Read a stream using the given range of IDs.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="minId">The minimum ID from which to read the stream. The method will default to reading from the beginning of the stream.</param>
            <param name="maxId">The maximum ID to read to within the stream. The method will default to reading to the end of the stream.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="messageOrder">The order of the messages. <see cref="F:StackExchange.Redis.Order.Ascending"/> will execute XRANGE and <see cref="F:StackExchange.Redis.Order.Descending"/> wil execute XREVRANGE.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns an instance of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from a single stream.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="position">The position from which to read the stream.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns an instance of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>Equivalent of calling XREAD COUNT num STREAMS key id.</remarks>
            <remarks>https://redis.io/commands/xread</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadAsync(StackExchange.Redis.StreamPosition[],System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREAD COUNT num STREAMS key1 key2 id1 id2.</remarks>
            <remarks>https://redis.io/commands/xread</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadGroupAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read messages from a stream into an associated consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The consumer name.</param>
            <param name="position">The position from which to read the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/> when null.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns a value of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadGroupAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Read messages from a stream into an associated consumer group.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName">The consumer name.</param>
            <param name="position">The position from which to read the stream. Defaults to <see cref="P:StackExchange.Redis.StreamPosition.NewMessages"/> when null.</param>
            <param name="count">The maximum number of messages to return.</param>
            <param name="noAck">When true, the message will not be added to the pending message list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Returns a value of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadGroupAsync(StackExchange.Redis.StreamPosition[],StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams into the given consumer group. The consumer group with the given <paramref name="groupName"/>
            will need to have been created for each stream prior to calling this method.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName"></param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</remarks>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamReadGroupAsync(StackExchange.Redis.StreamPosition[],StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Read from multiple streams into the given consumer group. The consumer group with the given <paramref name="groupName"/>
            will need to have been created for each stream prior to calling this method.
            </summary>
            <param name="streamPositions">Array of streams and the positions from which to begin reading for each stream.</param>
            <param name="groupName">The name of the consumer group.</param>
            <param name="consumerName"></param>
            <param name="countPerStream">The maximum number of messages to return from each stream.</param>
            <param name="noAck">When true, the message will not be added to the pending message list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A value of <see cref="T:StackExchange.Redis.RedisStream"/> for each stream.</returns>
            <remarks>Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</remarks>
            <remarks>https://redis.io/commands/xreadgroup</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamTrimAsync(StackExchange.Redis.RedisKey,System.Int32,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Trim the stream to a specified maximum length.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="maxLength">The maximum length of the stream.</param>
            <param name="useApproximateMaxLength">If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of messages removed from the stream.</returns>
            <remarks>https://redis.io/topics/streams-intro</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringAppendAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string,
            so APPEND will be similar to SET in this special case.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to append to the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the string after the append operation.</returns>
            <remarks>https://redis.io/commands/append</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitCountAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Count the number of set bits (population counting) in a string.
            By default all the bytes contained in the string are examined. It is possible to specify the counting operation only in an interval passing the additional arguments start and end.
            Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="start">The start byte to count at.</param>
            <param name="end">The end byte to count at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of bits set to 1.</returns>
            <remarks>https://redis.io/commands/bitcount</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitOperationAsync(StackExchange.Redis.Bitwise,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key.
            The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case
            and only the first key will be considered.
            The result of the operation is always stored at destkey.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The destination key to store the result in.</param>
            <param name="first">The first key to get the bit value from.</param>
            <param name="second">The second key to get the bit value from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The size of the string stored in the destination key, that is equal to the size of the longest input string.</returns>
            <remarks>https://redis.io/commands/bitop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitOperationAsync(StackExchange.Redis.Bitwise,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key.
            The BITOP command supports four bitwise operations; note that NOT is a unary operator.
            The result of the operation is always stored at destkey.
            </summary>
            <param name="operation">The operation to perform.</param>
            <param name="destination">The destination key to store the result in.</param>
            <param name="keys">The keys to get the bit values from.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The size of the string stored in the destination key, that is equal to the size of the longest input string.</returns>
            <remarks>https://redis.io/commands/bitop</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitPositionAsync(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the position of the first bit set to 1 or 0 in a string.
            The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant bit is at position 8 and so forth.
            An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="bit">True to check for the first 1 bit, false to check for the first 0 bit.</param>
            <param name="start">The position to start looking (defaults to 0).</param>
            <param name="end">The position to stop looking (defaults to -1, unlimited).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The command returns the position of the first bit set to 1 or 0 according to the request.
            If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned.</returns>
            <remarks>https://redis.io/commands/bitpos</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringDecrementAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation.
            An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to decrement by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the decrement.</returns>
            <remarks>https://redis.io/commands/decrby</remarks>
            <remarks>https://redis.io/commands/decr</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringDecrementAsync(StackExchange.Redis.RedisKey,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Decrements the string representing a floating point number stored at key by the specified decrement. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to decrement by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the decrement.</returns>
            <remarks>https://redis.io/commands/incrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned.
            </summary>
            <param name="keys">The keys of the strings.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The values of the strings with nil for keys do not exist.</returns>
            <remarks>https://redis.io/commands/mget</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetLeaseAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetBitAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the bit value at offset in the string value stored at key.
            When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to get a bit at.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The bit value stored at offset.</returns>
            <remarks>https://redis.io/commands/getbit</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetRangeAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="start">The start index of the substring to get.</param>
            <param name="end">The end index of the substring to get.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The substring of the string value stored at key.</returns>
            <remarks>https://redis.io/commands/getrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the old value stored at key.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to replace the existing value with.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The old value stored at key, or nil when key did not exist.</returns>
            <remarks>https://redis.io/commands/getset</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetWithExpiryAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key and its expiry, or nil when key does not exist.</returns>
            <remarks>https://redis.io/commands/get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringIncrementAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to increment by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the increment.</returns>
            <remarks>https://redis.io/commands/incrby</remarks>
            <remarks>https://redis.io/commands/incr</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringIncrementAsync(StackExchange.Redis.RedisKey,System.Double,StackExchange.Redis.CommandFlags)">
            <summary>
            Increments the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The amount to increment by (defaults to 1).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The value of key after the increment.</returns>
            <remarks>https://redis.io/commands/incrbyfloat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the length of the string value stored at key.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>the length of the string at key, or 0 when key does not exist.</returns>
            <remarks>https://redis.io/commands/strlen</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="value">The value to set.</param>
            <param name="expiry">The expiry to set.</param>
            <param name="when">Which condition to set the value under (detaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the string was set, false otherwise.</returns>
            <remarks>https://redis.io/commands/set</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue}[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists.
            </summary>
            <param name="values">The keys and values to set.</param>
            <param name="when">Which condition to set the value under (detaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the keys were set, else False</returns>
            <remarks>https://redis.io/commands/mset</remarks>
            <remarks>https://redis.io/commands/msetnx</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetBitAsync(StackExchange.Redis.RedisKey,System.Int64,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Sets or clears the bit at offset in the string value stored at key.
            The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to set <paramref name="bit"/>.</param>
            <param name="bit">The bit value to set, true for 1, false for 0.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The original bit value stored at offset.</returns>
            <remarks>https://redis.io/commands/setbit</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetRangeAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="offset">The offset in the string to overwrite.</param>
            <param name="value">The value to overwrite with.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the string after it was modified by the command.</returns>
            <remarks>https://redis.io/commands/setrange</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTouchAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Touch the specified key. 
            </summary>
            <param name="key">The key to touch.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>True if the key was touched.</returns>
            <remarks>https://redis.io/commands/touch</remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTouchAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Youch the specified keys. A key is ignored if it does not exist.
            </summary>
            <param name="keys">The keys to touch.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of keys that were touched.</returns>
            <remarks>https://redis.io/commands/touch</remarks>
        </member>
        <member name="T:StackExchange.Redis.IReconnectRetryPolicy">
            <summary>
            Describes retry policy functionality that can be provided to the multiplexer to be used for connection reconnects
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IReconnectRetryPolicy.ShouldRetry(System.Int64,System.Int32)">
            <summary>
            This method is called by the multiplexer to determine if a reconnect operation can be retried now.
            </summary>
            <param name="currentRetryCount">The number of times reconnect retries have already been made by the multiplexer while it was in connecting state</param>
            <param name="timeElapsedMillisecondsSinceLastRetry">Total time elapsed in milliseconds since the last reconnect retry was made</param>
        </member>
        <member name="T:StackExchange.Redis.IRedis">
            <summary>
            Common operations available to all redis connections
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IRedis.Ping(StackExchange.Redis.CommandFlags)">
            <summary>
            This command is often used to test if a connection is still alive, or to measure latency.
            </summary>
            <param name="flags">The command flags to use when pinging.</param>
            <returns>The observed latency.</returns>
            <remarks>https://redis.io/commands/ping</remarks>
        </member>
        <member name="T:StackExchange.Redis.IRedisAsync">
            <summary>
            Common operations available to all redis connections
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IRedisAsync.Multiplexer">
            <summary>
            Gets the multiplexer that created this instance
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IRedisAsync.PingAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            This command is often used to test if a connection is still alive, or to measure latency.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The observed latency.</returns>
            <remarks>https://redis.io/commands/ping</remarks>
        </member>
        <member name="M:StackExchange.Redis.IRedisAsync.TryWait(System.Threading.Tasks.Task)">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout), reporting which
            </summary>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.IRedisAsync.Wait(System.Threading.Tasks.Task)">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.IRedisAsync.Wait``1(System.Threading.Tasks.Task{``0})">
            <summary>
            Wait for a given asynchronous operation to complete (or timeout)
            </summary>
            <typeparam name="T">The type of task to wait on.</typeparam>
            <param name="task">The task to wait on.</param>
        </member>
        <member name="M:StackExchange.Redis.IRedisAsync.WaitAll(System.Threading.Tasks.Task[])">
            <summary>
            Wait for the given asynchronous operations to complete (or timeout)
            </summary>
            <param name="tasks">The tasks to wait on.</param>
        </member>
        <member name="T:StackExchange.Redis.IScanningCursor">
            <summary>
            Represents a resumable, cursor-based scanning operation
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IScanningCursor.Cursor">
            <summary>
            Returns the cursor that represents the *active* page of results (not the pending/next page of results as returned by SCAN/HSCAN/ZSCAN/SSCAN)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IScanningCursor.PageSize">
            <summary>
            The page size of the current operation
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IScanningCursor.PageOffset">
            <summary>
            The offset into the current page
            </summary>
        </member>
        <member name="T:StackExchange.Redis.IServer">
            <summary>
            Provides configuration controls of a redis server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.ClusterConfiguration">
            <summary>
            Gets the cluster configuration associated with this server, if known
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.EndPoint">
            <summary>
            Gets the address of the connected server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.Features">
            <summary>
            Gets the features available to the connected server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.IsConnected">
            <summary>
            Gets whether the connection to the server is active and usable
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.IsSlave">
            <summary>
            Gets whether the connected server is a replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.IsReplica">
            <summary>
            Gets whether the connected server is a replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.AllowSlaveWrites">
            <summary>
            Explicitly opt in for replica writes on writable replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.AllowReplicaWrites">
            <summary>
            Explicitly opt in for replica writes on writable replica
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.ServerType">
            <summary>
            Gets the operating mode of the connected server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.Version">
            <summary>
            Gets the version of the connected server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IServer.DatabaseCount">
            <summary>
            The number of databases supported on this server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientKill(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT KILL command closes a given client connection identified by ip:port.
            The ip:port should match a line returned by the CLIENT LIST command.
            Due to the single-treaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error).
            </summary>
            <param name="endpoint">The endpoint of the client to kill.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/client-kill</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientKillAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT KILL command closes a given client connection identified by ip:port.
            The ip:port should match a line returned by the CLIENT LIST command.
            Due to the single-treaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error).
            </summary>
            <param name="endpoint">The endpoint of the client to kill.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/client-kill</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientKill(System.Nullable{System.Int64},System.Nullable{StackExchange.Redis.ClientType},System.Net.EndPoint,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT KILL command closes multiple connections that match the specified filters
            </summary>
            <param name="id">The ID of the client to kill.</param>
            <param name="clientType">The type of client.</param>
            <param name="endpoint">The endpoint to kill.</param>
            <param name="skipMe">Whether to kskip the current connection.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the number of clients killed.</returns>
            <remarks>https://redis.io/commands/client-kill</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientKillAsync(System.Nullable{System.Int64},System.Nullable{StackExchange.Redis.ClientType},System.Net.EndPoint,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT KILL command closes multiple connections that match the specified filters
            </summary>
            <param name="id">The ID of the client to kill.</param>
            <param name="clientType">The type of client.</param>
            <param name="endpoint">The endpoint to kill.</param>
            <param name="skipMe">Whether to kskip the current connection.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the number of clients killed.</returns>
            <remarks>https://redis.io/commands/client-kill</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientList(StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/client-list</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientListAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/client-list</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodes(StackExchange.Redis.CommandFlags)">
            <summary>
            Obtains the current CLUSTER NODES output from a cluster server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodesAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Obtains the current CLUSTER NODES output from a cluster server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodesRaw(StackExchange.Redis.CommandFlags)">
            <summary>
            Obtains the current raw CLUSTER NODES output from a cluster server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodesRawAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Obtains the current raw CLUSTER NODES output from a cluster server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigGet(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Get all configuration parameters matching the specified pattern.
            </summary>
            <param name="pattern">The pattern of config values to get.</param>
            <param name="flags">The command flags to use.</param>
            <returns>All matching configuration parameters.</returns>
            <remarks>https://redis.io/commands/config-get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigGetAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Get all configuration parameters matching the specified pattern.
            </summary>
            <param name="pattern">The pattern of config values to get.</param>
            <param name="flags">The command flags to use.</param>
            <returns>All matching configuration parameters.</returns>
            <remarks>https://redis.io/commands/config-get</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigResetStatistics(StackExchange.Redis.CommandFlags)">
            <summary>
            Resets the statistics reported by Redis using the INFO command.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-resetstat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigResetStatisticsAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Resets the statistics reported by Redis using the INFO command.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-resetstat</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigRewrite(StackExchange.Redis.CommandFlags)">
            <summary>
            The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-rewrite</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigRewriteAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-rewrite</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigSet(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command.
            </summary>
            <param name="setting">The setting name.</param>
            <param name="value">The new setting value.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-set</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigSetAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command.
            </summary>
            <param name="setting">The setting name.</param>
            <param name="value">The new setting value.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/config-set</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.DatabaseSize(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the number of keys in the database.
            </summary>
            <param name="database">The database ID.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/dbsize</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.DatabaseSizeAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the number of keys in the database.
            </summary>
            <param name="database">The database ID.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/dbsize</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Echo(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the same message passed in.
            </summary>
            <param name="message">The message to echo.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/echo</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.EchoAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the same message passed in.
            </summary>
            <param name="message">The message to echo.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/echo</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Execute(System.String,System.Object[])">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.Execute(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.ExecuteAsync(System.String,System.Object[])">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.ExecuteAsync(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)">
            <summary>
            Execute an arbitrary command against the server; this is primarily intended for
            executing modules, but may also be used to provide access to new features that lack
            a direct API.
            </summary>
            <param name="command">The command to run.</param>
            <param name="args">The arguments to pass for the command.</param>
            <param name="flags">The flags to use for this operation.</param>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful</remarks>
            <returns>A dynamic representation of the command's result</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushAllDatabases(StackExchange.Redis.CommandFlags)">
            <summary>
            Delete all the keys of all databases on the server.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/flushall</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushAllDatabasesAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Delete all the keys of all databases on the server.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/flushall</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushDatabase(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete all the keys of the database.
            </summary>
            <param name="database">The database ID.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/flushdb</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushDatabaseAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Delete all the keys of the database.
            </summary>
            <param name="database">The database ID.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/flushdb</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.GetCounters">
            <summary>
            Get summary statistics associates with this server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IServer.Info(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans.
            </summary>
            <param name="section">The info section to get, if getting a specific one.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/info</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.InfoAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans.
            </summary>
            <param name="section">The info section to get, if getting a specific one.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/info</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.InfoRaw(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans.
            </summary>
            <param name="section">The info section to get, if getting a specific one.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/info</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.InfoRawAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans.
            </summary>
            <param name="section">The info section to get, if getting a specific one.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/info</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Keys(System.Int32,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities.
            </summary>
            <param name="database">The database ID.</param>
            <param name="pattern">The pattern to use.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>Warning: consider KEYS as a command that should only be used in production environments with extreme care.</remarks>
            <remarks>https://redis.io/commands/keys</remarks>
            <remarks>https://redis.io/commands/scan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Keys(System.Int32,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="database">The database ID.</param>
            <param name="pattern">The pattern to use.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to resume at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>Warning: consider KEYS as a command that should only be used in production environments with extreme care.</remarks>
            <remarks>https://redis.io/commands/keys</remarks>
            <remarks>https://redis.io/commands/scan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.KeysAsync(System.Int32,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities; note: to resume an iteration via <i>cursor</i>, cast the original enumerable or enumerator to <i>IScanningCursor</i>.
            </summary>
            <param name="database">The database ID.</param>
            <param name="pattern">The pattern to use.</param>
            <param name="pageSize">The page size to iterate by.</param>
            <param name="cursor">The cursor position to resume at.</param>
            <param name="pageOffset">The page offset to start at.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>Warning: consider KEYS as a command that should only be used in production environments with extreme care.</remarks>
            <remarks>https://redis.io/commands/keys</remarks>
            <remarks>https://redis.io/commands/scan</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LastSave(StackExchange.Redis.CommandFlags)">
            <summary>
            Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/lastsave</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LastSaveAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/lastsave</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MakeMaster(StackExchange.Redis.ReplicationChangeOptions,System.IO.TextWriter)">
            <summary>
            Promote the selected node to be master
            </summary>
            <param name="options">The options to use for this topology change.</param>
            <param name="log">The log to write output to.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.Role(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the role info for the current server.
            </summary>
            <remarks>https://redis.io/commands/role</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.RoleAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the role info for the current server.
            </summary>
            <remarks>https://redis.io/commands/role</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Save(StackExchange.Redis.SaveType,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly request the database to persist the current state to disk
            </summary>
            <param name="type">The method of the save (e.g. background or foreground).</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/bgrewriteaof</remarks>
            <remarks>https://redis.io/commands/bgsave</remarks>
            <remarks>https://redis.io/commands/save</remarks>
            <remarks>https://redis.io/topics/persistence</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SaveAsync(StackExchange.Redis.SaveType,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly request the database to persist the current state to disk
            </summary>
            <param name="type">The method of the save (e.g. background or foreground).</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/bgrewriteaof</remarks>
            <remarks>https://redis.io/commands/bgsave</remarks>
            <remarks>https://redis.io/commands/save</remarks>
            <remarks>https://redis.io/topics/persistence</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExists(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicates whether the specified script is defined on the server
            </summary>
            <param name="script">The text of the script to check for on the server.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExists(System.Byte[],StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicates whether the specified script hash is defined on the server
            </summary>
            <param name="sha1">The SHA1 of the script to check for on the server.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExistsAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicates whether the specified script is defined on the server
            </summary>
            <param name="script">The text of the script to check for on the server.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExistsAsync(System.Byte[],StackExchange.Redis.CommandFlags)">
            <summary>
            Inidicates whether the specified script hash is defined on the server
            </summary>
            <param name="sha1">The SHA1 of the script to check for on the server.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptFlush(StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all cached scripts on this server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptFlushAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Removes all cached scripts on this server
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoad(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly defines a script on the server
            </summary>
            <param name="script">The script to load.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoad(StackExchange.Redis.LuaScript,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly defines a script on the server
            </summary>
            <param name="script">The script to load.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoadAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly defines a script on the server
            </summary>
            <param name="script">The script to load.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoadAsync(StackExchange.Redis.LuaScript,StackExchange.Redis.CommandFlags)">
            <summary>
            Explicitly defines a script on the server
            </summary>
            <param name="script">The script to load.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.IServer.Shutdown(StackExchange.Redis.ShutdownMode,StackExchange.Redis.CommandFlags)">
            <summary>
            Asks the redis server to shutdown, killing all connections. Please FULLY read the notes on the SHUTDOWN command.
            </summary>
            <param name="shutdownMode">The mode of the shutdown.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/shutdown</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlaveOf(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port.
            </summary>
            <param name="master">Endpoint of the new master to replicate from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/replicaof</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ReplicaOf(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port.
            </summary>
            <param name="master">Endpoint of the new master to replicate from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/replicaof</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlaveOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port.
            </summary>
            <param name="master">Endpoint of the new master to replicate from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/replicaof</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ReplicaOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <summary>
            The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port.
            </summary>
            <param name="master">Endpoint of the new master to replicate from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/replicaof</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogGet(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10).
            </summary>
            <param name="count">The count of items to get.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/slowlog</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogGetAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10).
            </summary>
            <param name="count">The count of items to get.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/slowlog</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogReset(StackExchange.Redis.CommandFlags)">
            <summary>
            You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/slowlog</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogResetAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/slowlog</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionChannels(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns).
            </summary>
            <param name="pattern">The channel name pattern to get channels for.</param>
            <param name="flags">The command flags to use.</param>
            <returns> a list of active channels, optionally matching the specified pattern.</returns>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionChannelsAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns).
            </summary>
            <param name="pattern">The channel name pattern to get channels for.</param>
            <param name="flags">The command flags to use.</param>
            <returns> a list of active channels, optionally matching the specified pattern.</returns>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionPatternCount(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>the number of patterns all the clients are subscribed to.</returns>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionPatternCountAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>the number of patterns all the clients are subscribed to.</returns>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionSubscriberCount(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel.
            </summary>
            <param name="channel">The channel to get a subcriber count for.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionSubscriberCountAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel.
            </summary>
            <param name="channel">The channel to get a subcriber count for.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/pubsub</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SwapDatabases(System.Int32,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Swaps two Redis databases, so that immediately all the clients connected to a given database will see the data of the other database, and the other way around
            </summary>
            <param name="first">The ID of the first database.</param>
            <param name="second">The ID of the second database.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/swapdb</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SwapDatabasesAsync(System.Int32,System.Int32,StackExchange.Redis.CommandFlags)">
            <summary>
            Swaps two Redis databases, so that immediately all the clients connected to a given database will see the data of the other database, and the other way around
            </summary>
            <param name="first">The ID of the first database.</param>
            <param name="second">The ID of the second database.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/swapdb</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Time(StackExchange.Redis.CommandFlags)">
            <summary>
            The TIME command returns the current server time in UTC format.
            Use the DateTime.ToLocalTime() method to get local time.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The server's current time.</returns>
            <remarks>https://redis.io/commands/time</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.TimeAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            The TIME command returns the current server time in UTC format.
            Use the DateTime.ToLocalTime() method to get local time.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The server's current time.</returns>
            <remarks>https://redis.io/commands/time</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyDoctorAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a text-based latency diagnostic
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyDoctor(StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a text-based latency diagnostic
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyResetAsync(System.String[],StackExchange.Redis.CommandFlags)">
            <summary>
            Resets the given events (or all if none are specified), discarding the currently logged latency spike events, and resetting the maximum event time register.
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyReset(System.String[],StackExchange.Redis.CommandFlags)">
            <summary>
            Resets the given events (or all if none are specified), discarding the currently logged latency spike events, and resetting the maximum event time register.
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyHistoryAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Fetch raw latency data from the event time series, as timestamp-latency pairs
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyHistory(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Fetch raw latency data from the event time series, as timestamp-latency pairs
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyLatestAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Fetch raw latency data from the event time series, as timestamp-latency pairs
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyLatest(StackExchange.Redis.CommandFlags)">
            <summary>
            Fetch raw latency data from the event time series, as timestamp-latency pairs
            </summary>
            <remarks>https://redis.io/topics/latency-monitor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryDoctorAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Reports about different memory-related issues that the Redis server experiences, and advises about possible remedies.
            </summary>
            <remarks>https://redis.io/commands/memory-doctor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryDoctor(StackExchange.Redis.CommandFlags)">
            <summary>
            Reports about different memory-related issues that the Redis server experiences, and advises about possible remedies.
            </summary>
            <remarks>https://redis.io/commands/memory-doctor</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryPurgeAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Attempts to purge dirty pages so these can be reclaimed by the allocator.
            </summary>
            <remarks>https://redis.io/commands/memory-purge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryPurge(StackExchange.Redis.CommandFlags)">
            <summary>
            Attempts to purge dirty pages so these can be reclaimed by the allocator.
            </summary>
            <remarks>https://redis.io/commands/memory-purge</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryStatsAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array reply about the memory usage of the server.
            </summary>
            <remarks>https://redis.io/commands/memory-stats</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryStats(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array reply about the memory usage of the server.
            </summary>
            <remarks>https://redis.io/commands/memory-stats</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryAllocatorStatsAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Provides an internal statistics report from the memory allocator.
            </summary>
            <remarks>https://redis.io/commands/memory-malloc-stats</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryAllocatorStats(StackExchange.Redis.CommandFlags)">
            <summary>
            Provides an internal statistics report from the memory allocator.
            </summary>
            <remarks>https://redis.io/commands/memory-malloc-stats</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetMasterAddressByName(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port number of the master with that name. 
            If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted replica.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the master ip and port</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetMasterAddressByNameAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port number of the master with that name. 
            If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted replica.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the master ip and port</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetSentinelAddresses(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port numbers of all known Sentinels
            for the given service name.
            </summary>
            <param name="serviceName">the sentinel service name</param>
            <param name="flags">The command flags to use.</param>
            <returns>a list of the sentinel ips and ports</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetSentinelAddressesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port numbers of all known Sentinels
            for the given service name.
            </summary>
            <param name="serviceName">the sentinel service name</param>
            <param name="flags">The command flags to use.</param>
            <returns>a list of the sentinel ips and ports</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetReplicaAddresses(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port numbers of all known Sentinel replicas
            for the given service name.
            </summary>
            <param name="serviceName">the sentinel service name</param>
            <param name="flags">The command flags to use.</param>
            <returns>a list of the replica ips and ports</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetReplicaAddressesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the ip and port numbers of all known Sentinel replicas
            for the given service name.
            </summary>
            <param name="serviceName">the sentinel service name</param>
            <param name="flags">The command flags to use.</param>
            <returns>a list of the replica ips and ports</returns>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMaster(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show the state and info of the specified master.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the master state as KeyValuePairs</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMasterAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show the state and info of the specified master.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the master state as KeyValuePairs</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMasters(StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of monitored masters and their state.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>an array of master state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMastersAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of monitored masters and their state.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>an array of master state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSlaves(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of replicas for this master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>an array of replica state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelReplicas(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of replicas for this master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>an array of replica state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSlavesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of replicas for this master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>an array of replica state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelReplicasAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of replicas for this master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>an array of replica state KeyValuePair arrays</returns>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelFailover(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels 
            (however a new version of the configuration will be published so that the other Sentinels will update their configurations).
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelFailoverAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels 
            (however a new version of the configuration will be published so that the other Sentinels will update their configurations).
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSentinels(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of sentinels for a master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSentinelsAsync(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of sentinels for a master, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/topics/sentinel</remarks>
        </member>
        <member name="T:StackExchange.Redis.LatencyHistoryEntry">
            <summary>
            A latency entry as reported by the built-in LATENCY HISTORY command
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyHistoryEntry.Timestamp">
            <summary>
            The time at which this entry was recorded
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyHistoryEntry.DurationMilliseconds">
            <summary>
            The latency recorded for this event
            </summary>
        </member>
        <member name="T:StackExchange.Redis.LatencyLatestEntry">
            <summary>
            A latency entry as reported by the built-in LATENCY LATEST command
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyLatestEntry.EventName">
            <summary>
            The name of this event
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyLatestEntry.Timestamp">
            <summary>
            The time at which this entry was recorded
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyLatestEntry.DurationMilliseconds">
            <summary>
            The latency recorded for this event
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LatencyLatestEntry.MaxDurationMilliseconds">
            <summary>
            The max latency recorded for all events
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IServerExtensions.SimulateConnectionFailure(StackExchange.Redis.IServer)">
            <summary>
            For testing only: Break the connection without mercy or thought
            </summary>
            <param name="server">The server to simulate failure on.</param>
        </member>
        <member name="T:StackExchange.Redis.ISubscriber">
            <summary>
            A redis connection used as the subscriber in a pub/sub scenario
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.IdentifyEndpoint(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicate exactly which redis server we are talking to
            </summary>
            <param name="channel">The channel to identify the server endpoint by.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.IdentifyEndpointAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicate exactly which redis server we are talking to
            </summary>
            <param name="channel">The channel to identify the server endpoint by.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.IsConnected(StackExchange.Redis.RedisChannel)">
            <summary>
            Indicates whether the instance can communicate with the server;
            if a channel is specified, the existing subscription map is queried to
            resolve the server responsible for that subscription - otherwise the
            server is chosen aribtraily from the masters.
            </summary>
            <param name="channel">The channel to identify the server endpoint by.</param>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.Publish(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Posts a message to the given channel.
            </summary>
            <param name="channel">The channel to publish to.</param>
            <param name="message">The message to publish.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the number of clients that received the message.</returns>
            <remarks>https://redis.io/commands/publish</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.PublishAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Posts a message to the given channel.
            </summary>
            <param name="channel">The channel to publish to.</param>
            <param name="message">The message to publish.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the number of clients that received the message.</returns>
            <remarks>https://redis.io/commands/publish</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.Subscribe(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Subscribe to perform some operation when a message to the preferred/active node is broadcast, without any guarantee of ordered handling.
            </summary>
            <param name="channel">The channel to subscribe to.</param>
            <param name="handler">The handler to invoke when a message is received on <paramref name="channel"/>.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/subscribe</remarks>
            <remarks>https://redis.io/commands/psubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.Subscribe(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Subscribe to perform some operation when a message to the preferred/active node is broadcast, as a queue that guarantees ordered handling.
            </summary>
            <param name="channel">The redis channel to subscribe to.</param>
            <param name="flags">The command flags to use.</param>
            <returns>A channel that represents this source</returns>
            <remarks>https://redis.io/commands/subscribe</remarks>
            <remarks>https://redis.io/commands/psubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.SubscribeAsync(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Subscribe to perform some operation when a change to the preferred/active node is broadcast.
            </summary>
            <param name="channel">The channel to subscribe to.</param>
            <param name="handler">The handler to invoke when a message is received on <paramref name="channel"/>.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/subscribe</remarks>
            <remarks>https://redis.io/commands/psubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.SubscribeAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <summary>
            Subscribe to perform some operation when a change to the preferred/active node is broadcast, as a channel.
            </summary>
            <param name="channel">The redis channel to subscribe to.</param>
            <param name="flags">The command flags to use.</param>
            <returns>A channel that represents this source</returns>
            <remarks>https://redis.io/commands/subscribe</remarks>
            <remarks>https://redis.io/commands/psubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.SubscribedEndpoint(StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate to which redis server we are actively subscribed for a given channel; returns null if
            the channel is not actively subscribed
            </summary>
            <param name="channel">The channel to check which server endpoint was subscribed on.</param>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.Unsubscribe(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless
            of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the 
            last handler remaining against the channel
            </summary>
            <param name="channel">The channel that was subscribed to.</param>
            <param name="handler">The handler to no longer invoke when a message is received on <paramref name="channel"/>.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/unsubscribe</remarks>
            <remarks>https://redis.io/commands/punsubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.UnsubscribeAll(StackExchange.Redis.CommandFlags)">
            <summary>
            Unsubscribe all subscriptions on this instance
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/unsubscribe</remarks>
            <remarks>https://redis.io/commands/punsubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.UnsubscribeAllAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Unsubscribe all subscriptions on this instance
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/unsubscribe</remarks>
            <remarks>https://redis.io/commands/punsubscribe</remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.UnsubscribeAsync(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless
            of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the 
            last handler remaining against the channel
            </summary>
            <param name="channel">The channel that was subscribed to.</param>
            <param name="handler">The handler to no longer invoke when a message is received on <paramref name="channel"/>.</param>
            <param name="flags">The command flags to use.</param>
            <remarks>https://redis.io/commands/unsubscribe</remarks>
            <remarks>https://redis.io/commands/punsubscribe</remarks>
        </member>
        <member name="T:StackExchange.Redis.ITransaction">
            <summary>
            Represents a group of operations that will be sent to the server as a single unit,
            and processed on the server as a single unit. Transactions can also include constraints
            (implemented via WATCH), but note that constraint checking involves will (very briefly)
            block the connection, since the transaction cannot be correctly committed (EXEC),
            aborted (DISCARD) or not applied in the first place (UNWATCH) until the responses from
            the constraint checks have arrived.
            </summary>
            <remarks>https://redis.io/topics/transactions</remarks>
            <remarks>Note that on a cluster, it may be required that all keys involved in the transaction
            (including constraints) are in the same hash-slot</remarks>
        </member>
        <member name="M:StackExchange.Redis.ITransaction.AddCondition(StackExchange.Redis.Condition)">
            <summary>
            Adds a precondition for this transaction
            </summary>
            <param name="condition">The condition to add to the transaction.</param>
        </member>
        <member name="M:StackExchange.Redis.ITransaction.Execute(StackExchange.Redis.CommandFlags)">
            <summary>
            Execute the batch operation, sending all queued commands to the server.
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.ITransaction.ExecuteAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Execute the batch operation, sending all queued commands to the server.
            </summary>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="T:StackExchange.Redis.InternalErrorEventArgs">
            <summary>
            Describes internal errors (mainly intended for debugging)
            </summary>
        </member>
        <member name="M:StackExchange.Redis.InternalErrorEventArgs.#ctor(System.Object,System.Net.EndPoint,StackExchange.Redis.ConnectionType,System.Exception,System.String)">
            <summary>
            This constructor is only for testing purposes.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="endpoint"></param>
            <param name="connectionType">Redis connection type.</param>
            <param name="exception">The exception occured.</param>
            <param name="origin">Origin.</param>
        </member>
        <member name="P:StackExchange.Redis.InternalErrorEventArgs.ConnectionType">
            <summary>
            Gets the connection-type of the failing connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.InternalErrorEventArgs.EndPoint">
            <summary>
            Gets the failing server-endpoint (this can be null)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.InternalErrorEventArgs.Exception">
            <summary>
            Gets the exception if available (this can be null)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.InternalErrorEventArgs.Origin">
            <summary>
            The underlying origin of the error
            </summary>
        </member>
        <member name="T:StackExchange.Redis.KeyspaceIsolation.DatabaseExtensions">
            <summary>
                Provides the <see cref="M:StackExchange.Redis.KeyspaceIsolation.DatabaseExtensions.WithKeyPrefix(StackExchange.Redis.IDatabase,StackExchange.Redis.RedisKey)"/> extension method to <see cref="T:StackExchange.Redis.IDatabase"/>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.KeyspaceIsolation.DatabaseExtensions.WithKeyPrefix(StackExchange.Redis.IDatabase,StackExchange.Redis.RedisKey)">
            <summary>
                Creates a new <see cref="T:StackExchange.Redis.IDatabase"/> instance that provides an isolated key space
                of the specified underyling database instance.
            </summary>
            <param name="database">
                The underlying database instance that the returned instance shall use.
            </param>
            <param name="keyPrefix">
                The prefix that defines a key space isolation for the returned database instance.
            </param>
            <returns>
                A new <see cref="T:StackExchange.Redis.IDatabase"/> instance that invokes the specified underlying
                <paramref name="database"/> but prepends the specified <paramref name="keyPrefix"/>
                to all key paramters and thus forms a logical key space isolation.
            </returns>
            <remarks>
            <para>
                The following methods are not supported in a key space isolated database and
                will throw an <see cref="T:System.NotSupportedException"/> when invoked:
            </para>    
            <list type="bullet">
                <item><see cref="M:StackExchange.Redis.IDatabaseAsync.KeyRandomAsync(StackExchange.Redis.CommandFlags)"/></item>
                <item><see cref="M:StackExchange.Redis.IDatabase.KeyRandom(StackExchange.Redis.CommandFlags)"/></item>
            </list>
            <para>
                Please notice that keys passed to a script are prefixed (as normal) but care must
                be taken when a script returns the name of a key as that will (currently) not be
                "unprefixed".
            </para>
            </remarks>
        </member>
        <member name="T:StackExchange.Redis.Lease`1">
            <summary>
            A sized region of contiguous memory backed by a memory pool; disposing the lease returns the memory to the pool
            </summary>
            <typeparam name="T">The type of data being leased</typeparam>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.Empty">
            <summary>
            A lease of length zero
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.Length">
            <summary>
            The length of the lease
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Lease`1.Create(System.Int32,System.Boolean)">
            <summary>
            Create a new lease
            </summary>
            <param name="length">The size required</param>
            <param name="clear">Whether to erase the memory</param>
        </member>
        <member name="M:StackExchange.Redis.Lease`1.Dispose">
            <summary>
            Release all resources owned by the lease
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.Memory">
            <summary>
            The data as a Memory
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.Span">
            <summary>
            The data as a Span
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.ArraySegment">
            <summary>
            The data as an ArraySegment
            </summary>
        </member>
        <member name="T:StackExchange.Redis.LinearRetry">
            <summary>
            Represents a retry policy that performs retries at a fixed interval. The retries are performed upto a maximum allowed time.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LinearRetry.#ctor(System.Int32)">
            <summary>
            Initializes a new instance using the specified maximum retry elapsed time allowed.
            </summary>
            <param name="maxRetryElapsedTimeAllowedMilliseconds">maximum elapsed time in milliseconds to be allowed for it to perform retries</param>
        </member>
        <member name="M:StackExchange.Redis.LinearRetry.ShouldRetry(System.Int64,System.Int32)">
            <summary>
            This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now.
            </summary>
            <param name="currentRetryCount">The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state</param>
            <param name="timeElapsedMillisecondsSinceLastRetry">Total elapsed time in milliseconds since the last reconnect retry was made</param>
        </member>
        <member name="T:StackExchange.Redis.LuaScript">
            <summary>
            <para>Represents a Lua script that can be executed on Redis.</para>
            <para>
            Unlike normal Redis Lua scripts, LuaScript can have named parameters (prefixed by a @).
            Public fields and properties of the passed in object are treated as parameters.
            </para>
            <para>
            Parameters of type RedisKey are sent to Redis as KEY (https://redis.io/commands/eval) in addition to arguments, 
            so as to play nicely with Redis Cluster.
            </para>
            <para>All members of this class are thread safe.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LuaScript.OriginalScript">
            <summary>
            The original Lua script that was used to create this.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LuaScript.ExecutableScript">
            <summary>
            <para>The Lua script that will actually be sent to Redis for execution.</para>
            <para>All @-prefixed parameter names have been replaced at this point.</para>
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.Finalize">
            <summary>
            Finalizer, used to prompt cleanups of the script cache when
            a LuaScript reference goes out of scope.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.PurgeCache">
            <summary>
            Invalidates the internal cache of LuaScript objects.
            Existing LuaScripts will continue to work, but future calls to LuaScript.Prepare
            return a new LuaScript instance.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.GetCachedScriptCount">
            <summary>
            Returns the number of cached LuaScripts.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.Prepare(System.String)">
            <summary>
            Prepares a Lua script with named parameters to be run against any Redis instance.
            </summary>
            <param name="script">The script to prepare.</param>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.Evaluate(StackExchange.Redis.IDatabase,System.Object,System.Nullable{StackExchange.Redis.RedisKey},StackExchange.Redis.CommandFlags)">
            <summary>
            Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any.
            </summary>
            <param name="db">The redis database to evaluate against.</param>
            <param name="ps">The parameter object to use.</param>
            <param name="withKeyPrefix">The key prefix to use, if any.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.EvaluateAsync(StackExchange.Redis.IDatabaseAsync,System.Object,System.Nullable{StackExchange.Redis.RedisKey},StackExchange.Redis.CommandFlags)">
            <summary>
            Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any.
            </summary>
            <param name="db">The redis database to evaluate against.</param>
            <param name="ps">The parameter object to use.</param>
            <param name="withKeyPrefix">The key prefix to use, if any.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.Load(StackExchange.Redis.IServer,StackExchange.Redis.CommandFlags)">
            <summary>
            <para>
            Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of
            passing the full script on each Evaluate or EvaluateAsync call.
            </para>
            <para>Note: the FireAndForget command flag cannot be set</para>
            </summary>
            <param name="server">The server to load the script on.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.LuaScript.LoadAsync(StackExchange.Redis.IServer,StackExchange.Redis.CommandFlags)">
            <summary>
            <para>
            Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of
            passing the full script on each Evaluate or EvaluateAsync call.
            </para>
            <para>Note: the FireAndForget command flag cannot be set</para>
            </summary>
            <param name="server">The server to load the script on.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="T:StackExchange.Redis.LoadedLuaScript">
            <summary>
            <para>Represents a Lua script that can be executed on Redis.</para>
            <para>
            Unlike LuaScript, LoadedLuaScript sends the hash of it's ExecutableScript to Redis rather than pass
            the whole script on each call.  This requires that the script be loaded into Redis before it is used.
            </para>
            <para>
            To create a LoadedLuaScript first create a LuaScript via LuaScript.Prepare(string), then
            call Load(IServer, CommandFlags) on the returned LuaScript.
            </para>
            <para>
            Unlike normal Redis Lua scripts, LoadedLuaScript can have named parameters (prefixed by a @).
            Public fields and properties of the passed in object are treated as parameters.
            </para>
            <para>
            Parameters of type RedisKey are sent to Redis as KEY (https://redis.io/commands/eval) in addition to arguments, 
            so as to play nicely with Redis Cluster.
            </para>
            <para>All members of this class are thread safe.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LoadedLuaScript.OriginalScript">
            <summary>
            The original script that was used to create this LoadedLuaScript.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LoadedLuaScript.ExecutableScript">
            <summary>
            The script that will actually be sent to Redis for execution.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LoadedLuaScript.Hash">
            <summary>
            <para>The SHA1 hash of ExecutableScript.</para>
            <para>This is sent to Redis instead of ExecutableScript during Evaluate and EvaluateAsync calls.</para>
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LoadedLuaScript.Evaluate(StackExchange.Redis.IDatabase,System.Object,System.Nullable{StackExchange.Redis.RedisKey},StackExchange.Redis.CommandFlags)">
            <summary>
            <para>Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any.</para>
            <para>
            This method sends the SHA1 hash of the ExecutableScript instead of the script itself.  If the script has not
            been loaded into the passed Redis instance it will fail.
            </para>
            </summary>
            <param name="db">The redis database to evaluate against.</param>
            <param name="ps">The parameter object to use.</param>
            <param name="withKeyPrefix">The key prefix to use, if any.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="M:StackExchange.Redis.LoadedLuaScript.EvaluateAsync(StackExchange.Redis.IDatabaseAsync,System.Object,System.Nullable{StackExchange.Redis.RedisKey},StackExchange.Redis.CommandFlags)">
            <summary>
            <para>Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any.</para>
            <para>
            This method sends the SHA1 hash of the ExecutableScript instead of the script itself.  If the script has not
            been loaded into the passed Redis instance it will fail.
            </para>
            </summary>
            <param name="db">The redis database to evaluate against.</param>
            <param name="ps">The parameter object to use.</param>
            <param name="withKeyPrefix">The key prefix to use, if any.</param>
            <param name="flags">The command flags to use.</param>
        </member>
        <member name="P:StackExchange.Redis.Message.IsAdmin">
            <summary>
            Things with the potential to cause harm, or to reveal configuration information
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Message.SetInternalCall">
            <summary>
            This does a few important things:
            1: it suppresses error events for commands that the user isn't interested in
               (i.e. "why does my standalone server keep saying ERR unknown command 'cluster' ?")
            2: it allows the initial PING and GET (during connect) to get queued rather
               than be rejected as no-server-available (note that this doesn't apply to
               handshake messages, as they bypass the queue completely)
            3: it disables non-pref logging, as it is usually server-targeted
            </summary>
        </member>
        <member name="T:StackExchange.Redis.NameValueEntry">
            <summary>
            Describes a value contained in a stream (a name/value pair).
            </summary>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.#ctor(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Initializes a <see cref="T:StackExchange.Redis.NameValueEntry"/> value.
            </summary>
            <param name="name">The name for this entry.</param>
            <param name="value">The value for this entry.</param>
        </member>
        <member name="P:StackExchange.Redis.NameValueEntry.Name">
            <summary>
            The name of the field.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.NameValueEntry.Value">
            <summary>
            The value of the field.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.op_Implicit(StackExchange.Redis.NameValueEntry)~System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue}">
            <summary>
            Converts to a key/value pair
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.NameValueEntry"/> to create a <see cref="T:System.Collections.Generic.KeyValuePair`2"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.op_Implicit(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue})~StackExchange.Redis.NameValueEntry">
            <summary>
            Converts from a key/value pair
            </summary>
            <param name="value">The <see cref="T:System.Collections.Generic.KeyValuePair`2"/> to get a <see cref="T:StackExchange.Redis.NameValueEntry"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.Equals(System.Object)">
            <summary>
            Compares two values for equality.
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.Equals(StackExchange.Redis.NameValueEntry)">
            <summary>
            Compares two values for equality.
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.op_Equality(StackExchange.Redis.NameValueEntry,StackExchange.Redis.NameValueEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.op_Inequality(StackExchange.Redis.NameValueEntry,StackExchange.Redis.NameValueEntry)">
            <summary>
            Compares two values for non-equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.NameValueEntry"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.WriteMessageTakingWriteLockAsync(StackExchange.Redis.PhysicalConnection,StackExchange.Redis.Message)">
            <summary>
            This writes a message to the output stream
            </summary>
            <param name="physical">The phsyical connection to write to.</param>
            <param name="message">The message to be written.</param>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.SimulateConnectionFailure">
            <summary>
            For testing only
            </summary>
        </member>
        <member name="M:StackExchange.Redis.PhysicalConnection.ToString">
            <summary>Returns a string that represents the current object.</summary>
            <returns>A string that represents the current object.</returns>
        </member>
        <member name="T:StackExchange.Redis.Profiling.IProfiledCommand">
            <summary>
            <para>A profiled command against a redis instance.</para>
            <para>
            TimeSpans returned by this interface use a high precision timer if possible.
            DateTimes returned by this interface are no more precise than DateTime.UtcNow.
            </para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.EndPoint">
            <summary>
            The endpoint this command was sent to.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.Db">
            <summary>
            The Db this command was sent to.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.Command">
            <summary>
            The name of this command.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.Flags">
            <summary>
            The CommandFlags the command was submitted with.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.CommandCreated">
            <summary>
            <para>
            When this command was *created*, will be approximately
            when the paired method of StackExchange.Redis was called but
            before that method returned.
            </para>
            <para>Note that the resolution of the returned DateTime is limited by DateTime.UtcNow.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.CreationToEnqueued">
            <summary>
            How long this command waited to be added to the queue of pending
            redis commands.  A large TimeSpan indicates serious contention for
            the pending queue.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.EnqueuedToSending">
            <summary>
            How long this command spent in the pending queue before being sent to redis.
            A large TimeSpan can indicate a large number of pending events, large pending events,
            or network issues.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.SentToResponse">
            <summary>
            How long before Redis responded to this command and it's response could be handled after it was sent.
            A large TimeSpan can indicate a large response body, an overtaxed redis instance, or network issues.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.ResponseToCompletion">
            <summary>
            How long between Redis responding to this command and awaiting consumers being notified.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.ElapsedTime">
            <summary>
            <para>How long it took this redis command to be processed, from creation to deserializing the final response.</para>
            <para>Note that this TimeSpan *does not* include time spent awaiting a Task in consumer code.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.RetransmissionOf">
            <summary>
            <para>
            If a command has to be resent due to an ASK or MOVED response from redis (in a cluster configuration),
            the second sending of the command will have this property set to the original IProfiledCommand.
            </para>
            <para>This can only be set if redis is configured as a cluster.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.IProfiledCommand.RetransmissionReason">
            <summary>
            If RetransmissionOf is not null, this property will be set to either Ask or Moved to indicate
            what sort of response triggered the retransmission.
            
            This can be useful for determining the root cause of extra commands.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Profiling.ProfiledCommandEnumerable">
            <summary>
            <para>A collection of IProfiledCommands.</para>
            <para>This is a very light weight data structure, only supporting enumeration.</para>
            <para>
            While it implements IEnumerable, it there are fewer allocations if one uses
            it's explicit GetEnumerator() method.  Using `foreach` does this automatically.
            </para>
            <para>This type is not threadsafe.</para>
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Enumerator">
            <summary>
            <para>
            Implements IEnumerator for ProfiledCommandEnumerable.
            This implementation is comparable to List.Enumerator and Dictionary.Enumerator,
            and is provided to reduce allocations in the common (ie. foreach) case.
            </para>
            <para>This type is not threadsafe.</para>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Enumerator.Current">
            <summary>
            The current element.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Enumerator.MoveNext">
            <summary>
            Advances the enumeration, returning true if there is a new element to consume and false
            if enumeration is complete.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Enumerator.Reset">
            <summary>
            Resets the enumeration.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Enumerator.Dispose">
            <summary>
            Disposes the enumeration.
            subsequent attempts to enumerate results in undefined behavior.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Count">
            <summary>
            Returns the number of commands captured in this snapshot
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.Count(System.Func{StackExchange.Redis.Profiling.IProfiledCommand,System.Boolean})">
            <summary>
            Returns the number of commands captured in this snapshot that match a condition
            </summary>
            <param name="predicate">The predicate to match.</param>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.ToArray">
            <summary>
            Returns the captured commands as an array
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.ToList">
            <summary>
            Returns the captured commands as a list
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfiledCommandEnumerable.GetEnumerator">
            <summary>
            <para>
            Returns an implementor of IEnumerator that, provided it isn't accessed
            though an interface, avoids allocations.
            </para>
            <para>`foreach` will automatically use this method.</para>
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Profiling.ProfilingSession">
            <summary>
            Lightweight profiling session that can be optionally registered (via ConnectionMultiplexer.RegisterProfiler) to track messages.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Profiling.ProfilingSession.UserToken">
            <summary>
            Caller-defined state object.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfilingSession.#ctor(System.Object)">
            <summary>
            Create a new profiling session, optionally including a caller-defined state object.
            </summary>
            <param name="userToken">The state object to use for this session.</param>
        </member>
        <member name="M:StackExchange.Redis.Profiling.ProfilingSession.FinishProfiling">
            <summary>
            Reset the session and yield the commands that were captured for enumeration; if additional commands
            are added, they can be retrieved via additional calls to FinishProfiling.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisChannel">
            <summary>
            Represents a pub/sub channel name
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisChannel.IsNullOrEmpty">
            <summary>
            Indicates whether the channel-name is either null or a zero-length value
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.#ctor(System.Byte[],StackExchange.Redis.RedisChannel.PatternMode)">
            <summary>
            Create a new redis channel from a buffer, explicitly controlling the pattern mode
            </summary>
            <param name="value">The name of the channel to create.</param>
            <param name="mode">The mode for name matching.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.#ctor(System.String,StackExchange.Redis.RedisChannel.PatternMode)">
            <summary>
            Create a new redis channel from a string, explicitly controlling the pattern mode
            </summary>
            <param name="value">The string name of the channel to create.</param>
            <param name="mode">The mode for name matching.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Inequality(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Inequality(System.String,StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Inequality(System.Byte[],StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Inequality(StackExchange.Redis.RedisChannel,System.String)">
            <summary>
            Indicate whether two channel names are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Inequality(StackExchange.Redis.RedisChannel,System.Byte[])">
            <summary>
            Indicate whether two channel names are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Equality(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Equality(System.String,StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Equality(System.Byte[],StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Equality(StackExchange.Redis.RedisChannel,System.String)">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Equality(StackExchange.Redis.RedisChannel,System.Byte[])">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Equals(System.Object)">
            <summary>
            See Object.Equals
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.RedisChannel"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Equals(StackExchange.Redis.RedisChannel)">
            <summary>
            Indicate whether two channel names are equal
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.RedisChannel"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.GetHashCode">
            <summary>
            See Object.GetHashCode
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.ToString">
            <summary>
            Obtains a string representation of the channel name
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisChannel.PatternMode">
            <summary>
            The matching pattern for this channel
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisChannel.PatternMode.Auto">
            <summary>
            Will be treated as a pattern if it includes *
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisChannel.PatternMode.Literal">
            <summary>
            Never a pattern
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisChannel.PatternMode.Pattern">
            <summary>
            Always a pattern
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Implicit(System.String)~StackExchange.Redis.RedisChannel">
            <summary>
            Create a channel name from a <see cref="T:System.String"/>.
            </summary>
            <param name="key">The string to get a channel from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Implicit(System.Byte[])~StackExchange.Redis.RedisChannel">
            <summary>
            Create a channel name from a <see cref="T:byte[]"/>.
            </summary>
            <param name="key">The byte array to get a channel from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Implicit(StackExchange.Redis.RedisChannel)~System.Byte[]">
            <summary>
            Obtain the channel name as a <see cref="T:byte[]"/>.
            </summary>
            <param name="key">The channel to get a byte[] from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.op_Implicit(StackExchange.Redis.RedisChannel)~System.String">
            <summary>
            Obtain the channel name as a <see cref="T:System.String"/>.
            </summary>
            <param name="key">The channel to get a string from.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisErrorEventArgs">
            <summary>
            Notification of errors from the redis server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisErrorEventArgs.#ctor(System.Object,System.Net.EndPoint,System.String)">
            <summary>
            This constructor is only for testing purposes.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="endpoint">Redis endpoint.</param>
            <param name="message">Error message.</param>
        </member>
        <member name="P:StackExchange.Redis.RedisErrorEventArgs.EndPoint">
            <summary>
            The origin of the message
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisErrorEventArgs.Message">
            <summary>
            The message from the server
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisFeatures">
            <summary>
            Provides basic information about the features available on a particular version of Redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.#ctor(System.Version)">
            <summary>
            Create a new RedisFeatures instance for the given version
            </summary>
            <param name="version">The version of redis to base the feature set on.</param>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.BitwiseOperations">
            <summary>
            Does BITOP / BITCOUNT exist?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ClientName">
            <summary>
            Is CLIENT SETNAME available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ExecAbort">
            <summary>
            Does EXEC support EXECABORT if there are errors?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ExpireOverwrite">
            <summary>
            Can EXPIRE be used to set expiration on a key that is already volatile (i.e. has an expiration)?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HashStringLength">
            <summary>
            Is HSTRLEN available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HashVaradicDelete">
            <summary>
            Does HDEL support varadic usage?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.IncrementFloat">
            <summary>
            Does INCRBYFLOAT / HINCRBYFLOAT exist?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.InfoSections">
            <summary>
            Does INFO support sections?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ListInsert">
            <summary>
            Is LINSERT available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Memory">
            <summary>
            Is MEMORY available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.MillisecondExpiry">
            <summary>
            Indicates whether PEXPIRE and PTTL are supported
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Module">
            <summary>
            Is MODULE available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.MultipleRandom">
            <summary>
            Does SRANDMEMBER support "count"?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Persist">
            <summary>
            Is the PERSIST operation supported?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PushIfNotExists">
            <summary>
            Is RPUSHX and LPUSHX available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Scan">
            <summary>
            Are cursor-based scans available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Scripting">
            <summary>
            Does EVAL / EVALSHA / etc exist?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetConditional">
            <summary>
            Does SET have the EX|PX|NX|XX extensions?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetVaradicAddRemove">
            <summary>
            Does SADD support varadic usage?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SortedSetPop">
            <summary>
            Is ZPOPMAX and ZPOPMIN available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Streams">
            <summary>
            Are Redis Streams available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.StringLength">
            <summary>
            Is STRLEN available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.StringSetRange">
            <summary>
            Is SETRANGE available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SwapDB">
            <summary>
            Is SWAPDB available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Time">
            <summary>
            Does TIME exist?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Unlink">
            <summary>
            Does UNLINK exist?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ScriptingDatabaseSafe">
            <summary>
            Are Lua changes to the calling database transparent to the calling client?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HyperLogLogCountSlaveSafe">
            <summary>
            Is PFCOUNT supported on replicas?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HyperLogLogCountReplicaSafe">
            <summary>
            Is PFCOUNT supported on replicas?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Geo">
            <summary>
            Are the GEO commands available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PingOnSubscriber">
            <summary>
            Can PING be used on a subscription connection?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetPopMultiple">
            <summary>
            Does SetPop support popping multiple items?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Version">
            <summary>
            The Redis version of the server
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.KeyTouch">
            <summary>
            Are the Touch command available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ReplicaCommands">
            <summary>
            Does the server prefer 'replica' terminology - 'REPLICAOF', etc?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PushMultiple">
            <summary>
            Do list-push commands support multiple arguments?
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.ToString">
            <summary>
            Create a string representation of the available features
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.GetHashCode">
            <summary>Returns the hash code for this instance.</summary>
            <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.Equals(System.Object)">
            <summary>Indicates whether this instance and a specified object are equal.</summary>
            <returns>true if <paramref name="obj" /> and this instance are the same type and represent the same value; otherwise, false. </returns>
            <param name="obj">The object to compare with the current instance. </param>
        </member>
        <member name="T:StackExchange.Redis.RedisKey">
            <summary>
            Represents a key that can be stored in redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.#ctor(System.String)">
            <summary>
            Creates a <see cref="T:StackExchange.Redis.RedisKey"/> from a string.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Inequality(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Inequality(System.String,StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Inequality(System.Byte[],StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Inequality(StackExchange.Redis.RedisKey,System.String)">
            <summary>
            Indicate whether two keys are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Inequality(StackExchange.Redis.RedisKey,System.Byte[])">
            <summary>
            Indicate whether two keys are not equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Equality(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Equality(System.String,StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Equality(System.Byte[],StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Equality(StackExchange.Redis.RedisKey,System.String)">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Equality(StackExchange.Redis.RedisKey,System.Byte[])">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisChannel"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.Equals(System.Object)">
            <summary>
            See Object.Equals
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.RedisKey"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.Equals(StackExchange.Redis.RedisKey)">
            <summary>
            Indicate whether two keys are equal
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.RedisKey"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.GetHashCode">
            <summary>
            See Object.GetHashCode
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.ToString">
            <summary>
            Obtains a string representation of the key
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Implicit(System.String)~StackExchange.Redis.RedisKey">
            <summary>
            Create a <see cref="T:StackExchange.Redis.RedisKey"/> from a <see cref="T:System.String"/>.
            </summary>
            <param name="key">The string to get a key from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Implicit(System.Byte[])~StackExchange.Redis.RedisKey">
            <summary>
            Create a <see cref="T:StackExchange.Redis.RedisKey"/> from a <see cref="T:byte[]"/>.
            </summary>
            <param name="key">The byte array to get a key from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Implicit(StackExchange.Redis.RedisKey)~System.Byte[]">
            <summary>
            Obtain the <see cref="T:StackExchange.Redis.RedisKey"/> as a <see cref="T:byte[]"/>.
            </summary>
            <param name="key">The key to get a byte array for.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Implicit(StackExchange.Redis.RedisKey)~System.String">
            <summary>
            Obtain the key as a <see cref="T:System.String"/>.
            </summary>
            <param name="key">The key to get a string for.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.op_Addition(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey)">
            <summary>
            Concatenate two keys
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisKey"/> to add.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisKey"/> to add.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.Prepend(StackExchange.Redis.RedisKey)">
            <summary>
            <para>Prepends p to this RedisKey, returning a new RedisKey.</para>
            <para>
            Avoids some allocations if possible, repeated Prepend/Appends make
            it less possible.
            </para>
            </summary>
            <param name="prefix">The prefix to prepend.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisKey.Append(StackExchange.Redis.RedisKey)">
            <summary>
            <para>Appends p to this RedisKey, returning a new RedisKey.</para>
            <para>
            Avoids some allocations if possible, repeated Prepend/Appends make
            it less possible.
            </para>
            </summary>
            <param name="suffix">The suffix to append.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisResult">
            <summary>
            Represents a general-purpose result from redis, that may be cast into various anticipated types
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.ResultType})">
            <summary>
            Create a new RedisResult representing a single value.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to create a result from.</param>
            <param name="resultType">The type of result being represented</param>
            <returns> new <see cref="T:StackExchange.Redis.RedisResult"/>.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisValue[])">
            <summary>
            Create a new RedisResult representing an array of values.
            </summary>
            <param name="values">The <see cref="T:StackExchange.Redis.RedisValue"/>s to create a result from.</param>
            <returns> new <see cref="T:StackExchange.Redis.RedisResult"/>.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisResult[])">
            <summary>
            Create a new RedisResult representing an array of values.
            </summary>
            <param name="values">The <see cref="T:StackExchange.Redis.RedisResult"/>s to create a result from.</param>
            <returns> new <see cref="T:StackExchange.Redis.RedisResult"/>.</returns>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.EmptyArray">
            <summary>
            An empty array result
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.NullArray">
            <summary>
            A null array result
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.Type">
            <summary>
            Indicate the type of result that was received from redis
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.IsNull">
            <summary>
            Indicates whether this result was a null result
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.String">
            <summary>
            Interprets the result as a <see cref="T:System.String"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.String"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Byte[]">
            <summary>
            Interprets the result as a <see cref="T:byte[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:byte[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Double">
            <summary>
            Interprets the result as a <see cref="T:System.Double"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.Double"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Int64">
            <summary>
            Interprets the result as an <see cref="T:System.Int64"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.Int64"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.UInt64">
            <summary>
            Interprets the result as an <see cref="T:System.UInt64"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.UInt64"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Int32">
            <summary>
            Interprets the result as an <see cref="T:System.Int32"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.Int32"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Boolean">
            <summary>
            Interprets the result as a <see cref="T:System.Boolean"/>
            </summary>
            <param name="result">The result to convert to a <see cref="T:System.Boolean"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~StackExchange.Redis.RedisValue">
            <summary>
            Interprets the result as a <see cref="T:StackExchange.Redis.RedisValue"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~StackExchange.Redis.RedisKey">
            <summary>
            Interprets the result as a <see cref="T:StackExchange.Redis.RedisKey"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:StackExchange.Redis.RedisKey"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Nullable{System.Double}">
            <summary>
            Interprets the result as a <see cref="T:Nullable{double}"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:Nullable{double}"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Nullable{System.Int64}">
            <summary>
            Interprets the result as a <see cref="T:Nullable{long}"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:Nullable{long}"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Nullable{System.UInt64}">
            <summary>
            Interprets the result as a <see cref="T:Nullable{ulong}"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:Nullable{ulong}"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Nullable{System.Int32}">
            <summary>
            Interprets the result as a <see cref="T:Nullable{int}"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:Nullable{int}"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Nullable{System.Boolean}">
            <summary>
            Interprets the result as a <see cref="T:Nullable{bool}"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:Nullable{bool}"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.String[]">
            <summary>
            Interprets the result as a <see cref="T:string[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:string[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Byte[][]">
            <summary>
            Interprets the result as a <see cref="T:byte[][]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:byte[][]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Double[]">
            <summary>
            Interprets the result as a <see cref="T:double[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:double[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Int64[]">
            <summary>
            Interprets the result as a <see cref="T:long[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:long[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.UInt64[]">
            <summary>
            Interprets the result as a <see cref="T:ulong[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:ulong[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Int32[]">
            <summary>
            Interprets the result as a <see cref="T:int[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:int[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~System.Boolean[]">
            <summary>
            Interprets the result as a <see cref="T:bool[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:bool[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~StackExchange.Redis.RedisValue[]">
            <summary>
            Interprets the result as a <see cref="T:RedisValue[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:RedisValue[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~StackExchange.Redis.RedisKey[]">
            <summary>
            Interprets the result as a <see cref="T:RedisKey[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:RedisKey[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.op_Explicit(StackExchange.Redis.RedisResult)~StackExchange.Redis.RedisResult[]">
            <summary>
            Interprets the result as a <see cref="T:RedisResult[]"/>.
            </summary>
            <param name="result">The result to convert to a <see cref="T:RedisResult[]"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.ToDictionary(System.Collections.Generic.IEqualityComparer{System.String})">
            <summary>
            Interprets a multi-bulk result with successive key/name values as a dictionary keyed by name
            </summary>
            <param name="comparer">The key comparator to use, or <see cref="P:System.StringComparer.InvariantCultureIgnoreCase"/> by default</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisKey)">
            <summary>
            Create a <see cref="T:StackExchange.Redis.RedisResult"/> from a key.
            </summary>
            <param name="key">The <see cref="T:StackExchange.Redis.RedisKey"/> to create a <see cref="T:StackExchange.Redis.RedisResult"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisChannel)">
            <summary>
            Create a <see cref="T:StackExchange.Redis.RedisResult"/> from a channel.
            </summary>
            <param name="channel">The <see cref="T:StackExchange.Redis.RedisChannel"/> to create a <see cref="T:StackExchange.Redis.RedisResult"/> from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisServer.SimulateConnectionFailure">
            <summary>
            For testing only
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisStream">
            <summary>
            Describes a Redis Stream with an associated array of entries.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisStream.Key">
            <summary>
            The key for the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisStream.Entries">
            <summary>
            An arry of entries contained within the stream.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisValue">
            <summary>
            Represents values that can be stored in redis
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.#ctor(System.String)">
            <summary>
            Creates a <see cref="T:StackExchange.Redis.RedisValue"/> from a string.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Box">
            <summary>
            Obtain this value as an object - to be used alongside Unbox
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Unbox(System.Object)">
            <summary>
            Parse this object as a value - to be used alongside Box.
            </summary>
            <param name="value">The value to unbox.</param>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.EmptyString">
            <summary>
            Represents the string <c>""</c>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.Null">
            <summary>
            A null value
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.IsInteger">
            <summary>
            Indicates whether the value is a primitive integer (signed or unsigned)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.IsNull">
            <summary>
            Indicates whether the value should be considered a null value
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.IsNullOrEmpty">
            <summary>
            Indicates whether the value is either null or a zero-length value
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValue.HasValue">
            <summary>
            Indicates whether the value is greater than zero-length or has an integer value
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Inequality(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Indicates whether two RedisValue values are equivalent
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Equality(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue)">
            <summary>
            Indicates whether two RedisValue values are equivalent
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Equals(System.Object)">
            <summary>
            See Object.Equals()
            </summary>
            <param name="obj">The other <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Equals(StackExchange.Redis.RedisValue)">
            <summary>
            Indicates whether two RedisValue values are equivalent
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.RedisValue"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.ToString">
            <summary>
            Returns a string representation of the value
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Length">
            <summary>
            Get the size of this value in bytes
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.CompareTo(StackExchange.Redis.RedisValue)">
            <summary>
            Compare against a RedisValue for relative order
            </summary>
            <param name="other">The other <see cref="T:StackExchange.Redis.RedisValue"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Int32)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.Int32"/>.
            </summary>
            <param name="value">The <see cref="T:System.Int32"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.Int32})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{int}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{int}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Int64)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.Int64"/>.
            </summary>
            <param name="value">The <see cref="T:System.Int64"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.Int64})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{long}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{long}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.UInt64)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.UInt64"/>.
            </summary>
            <param name="value">The <see cref="T:System.UInt64"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.UInt64})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{ulong}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{ulong}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.UInt32)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.UInt32"/>.
            </summary>
            <param name="value">The <see cref="T:System.UInt32"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.UInt32})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{uint}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{uint}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Double)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.Double"/>.
            </summary>
            <param name="value">The <see cref="T:System.Double"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.Double})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{double}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{double}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.ReadOnlyMemory{System.Byte})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from a <see cref="T:ReadOnlyMemory{byte}"/>.
            </summary>
            <param name="value">The <see cref="T:ReadOnlyMemory{byte}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Memory{System.Byte})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from a <see cref="T:Memory{byte}"/>.
            </summary>
            <param name="value">The <see cref="T:Memory{byte}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.String)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.String"/>.
            </summary>
            <param name="value">The <see cref="T:System.String"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Byte[])~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:byte[]"/>.
            </summary>
            <param name="value">The <see cref="T:byte[]"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Boolean)~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:System.Boolean"/>.
            </summary>
            <param name="value">The <see cref="T:System.Boolean"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(System.Nullable{System.Boolean})~StackExchange.Redis.RedisValue">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisValue"/> from an <see cref="T:Nullable{bool}"/>.
            </summary>
            <param name="value">The <see cref="T:Nullable{bool}"/> to convert to a <see cref="T:StackExchange.Redis.RedisValue"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Boolean">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Boolean"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Int32">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Int32"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Int64">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Int64"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.UInt32">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.UInt32"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.UInt64">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Int64"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Double">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Double"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Decimal">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Decimal"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Single">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.Single"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Double}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{double}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Single}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{float}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Decimal}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{decimal}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Int64}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{long}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.UInt64}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{ulong}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Int32}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{int}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.UInt32}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{uint}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Explicit(StackExchange.Redis.RedisValue)~System.Nullable{System.Boolean}">
            <summary>
            Converts the <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:Nullable{bool}"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(StackExchange.Redis.RedisValue)~System.String">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:System.String"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(StackExchange.Redis.RedisValue)~System.Byte[]">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a <see cref="T:byte[]"/>.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.op_Implicit(StackExchange.Redis.RedisValue)~System.ReadOnlyMemory{System.Byte}">
            <summary>
            Converts a <see cref="T:StackExchange.Redis.RedisValue"/> to a ReadOnlyMemory
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to convert.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.Simplify">
            <summary>
            Attempt to reduce to canonical terms ahead of time; parses integers, floats, etc
            Note: we don't use this aggressively ahead of time, a: because of extra CPU,
            but more importantly b: because it can change values - for example, if they start
            with "123.000", it should **stay** as "123.000", not become 123L; this could be
            a hash key or similar - we don't want to break it; RedisConnection uses
            the storage type, not the "does it look like a long?" - for this reason
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.TryParse(System.Int64@)">
            <summary>
            <para>Convert to a signed long if possible, returning true.</para>
            <para>Returns false otherwise.</para>
            </summary>
            <param name="val">The <see cref="T:System.Int64"/> value, if conversion was possible.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.TryParse(System.Int32@)">
            <summary>
            <para>Convert to a int if possible, returning true.</para>
            <para>Returns false otherwise.</para>
            </summary>
            <param name="val">The <see cref="T:System.Int32"/> value, if conversion was possible.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.TryParse(System.Double@)">
            <summary>
            <para>Convert to a double if possible, returning true.</para>
            <para>Returns false otherwise.</para>
            </summary>
            <param name="val">The <see cref="T:System.Double"/> value, if conversion was possible.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.CreateFrom(System.IO.MemoryStream)">
            <summary>
            Create a RedisValue from a MemoryStream; it will *attempt* to use the internal buffer
            directly, but if this isn't possibly it will fallback to ToArray
            </summary>
            <param name="stream">The <see cref="T:System.IO.MemoryStream"/> to create a value from.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.StartsWith(StackExchange.Redis.RedisValue)">
            <summary>
            Indicates whether the current value has the supplied value as a prefix.
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.RedisValue"/> to check.</param>
        </member>
        <member name="T:StackExchange.Redis.RedisValueWithExpiry">
            <summary>
            Describes a value/expiry pair
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValueWithExpiry.Expiry">
            <summary>
            The expiry of this record
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisValueWithExpiry.Value">
            <summary>
            The value of this record
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Role">
            <summary>
            Result of the ROLE command. Values depend on the role: master, replica, or sentinel.
            </summary>
            <remarks>https://redis.io/commands/role</remarks>
        </member>
        <member name="P:StackExchange.Redis.Role.Value">
            <summary>
            One of "master", "slave" (aka replica), or "sentinel".
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Role.ToString">
            <inheritdoc/>
        </member>
        <member name="T:StackExchange.Redis.Role.Master">
            <summary>
            Result of the ROLE command for a master node.
            </summary>
            <remarks>https://redis.io/commands/role#master-output</remarks>
        </member>
        <member name="P:StackExchange.Redis.Role.Master.ReplicationOffset">
            <summary>
            The replication offset. To be consumed by replica nodes.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Master.Replicas">
            <summary>
            Connected replica nodes.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Role.Master.Replica">
            <summary>
            A connected replica node.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Master.Replica.Ip">
            <summary>
            The IP address of this replica node.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Master.Replica.Port">
            <summary>
            The port number of this replica node.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Master.Replica.ReplicationOffset">
            <summary>
            The last replication offset acked by this replica node.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Role.Replica">
            <summary>
            Result of the ROLE command for a replica node.
            </summary>
            <remarks>https://redis.io/commands/role#output-of-the-command-on-replicas</remarks>
        </member>
        <member name="P:StackExchange.Redis.Role.Replica.MasterIp">
            <summary>
            The IP address of the master node for this replica.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Replica.MasterPort">
            <summary>
            The port number of the master node for this replica.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Replica.State">
            <summary>
            This replica's replication state.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Replica.ReplicationOffset">
            <summary>
            The last replication offset received by this replica.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Role.Sentinel">
            <summary>
            Result of the ROLE command for a sentinel node.
            </summary>
            <remarks>https://redis.io/commands/role#sentinel-output</remarks>
        </member>
        <member name="P:StackExchange.Redis.Role.Sentinel.MonitoredMasters">
            <summary>
            Master names monitored by this sentinel node.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Role.Unknown">
            <summary>
            An unexpected result of the ROLE command.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ScriptParameterMapper.PrepareScript(System.String)">
            <summary>
            Turns a script with @namedParameters into a LuaScript that can be executed
            against a given IDatabase(Async) object
            </summary>
            <param name="script">The script to prepare.</param>
        </member>
        <member name="M:StackExchange.Redis.ScriptParameterMapper.IsValidParameterHash(System.Type,StackExchange.Redis.LuaScript,System.String@,System.String@)">
            <summary>
            Determines whether or not the given type can be used to provide parameters for the given LuaScript.
            </summary>
            <param name="t">The type of the parameter.</param>
            <param name="script">The script to match against.</param>
            <param name="missingMember">The first missing member, if any.</param>
            <param name="badTypeMember">The first type mismatched member, if any.</param>
        </member>
        <member name="M:StackExchange.Redis.ScriptParameterMapper.GetParameterExtractor(System.Type,StackExchange.Redis.LuaScript)">
            <summary>
            <para>Creates a Func that extracts parameters from the given type for use by a LuaScript.</para>
            <para>
            Members that are RedisKey's get extracted to be passed in as keys to redis; all members that
            appear in the script get extracted as RedisValue arguments to be sent up as args.
            </para>
            <para>
            We send all values as arguments so we don't have to prepare the same script for different parameter
            types.
            </para>
            <para>
            The created Func takes a RedisKey, which will be prefixed to all keys (and arguments of type RedisKey) for 
            keyspace isolation.
            </para>
            </summary>
            <param name="t">The type to extract for.</param>
            <param name="script">The script to extract for.</param>
        </member>
        <member name="T:StackExchange.Redis.ServerCounters">
            <summary>
            Illustrates the queues associates with this server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerCounters.#ctor(System.Net.EndPoint)">
            <summary>
            Creates a <see cref="T:StackExchange.Redis.ServerCounters"/> instance for an <see cref="P:StackExchange.Redis.ServerCounters.EndPoint"/>.
            </summary>
            <param name="endpoint">The <see cref="P:StackExchange.Redis.ServerCounters.EndPoint"/> to create counters for.</param>
        </member>
        <member name="P:StackExchange.Redis.ServerCounters.EndPoint">
            <summary>
            The endpoint to which this data relates (this can be null if the data represents all servers)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerCounters.Interactive">
            <summary>
            Counters associated with the interactive (non pub-sub) connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerCounters.Other">
            <summary>
            Counters associated with other ambient activity
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerCounters.Subscription">
            <summary>
            Counters associated with the subscription (pub-sub) connection
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerCounters.TotalOutstanding">
            <summary>
            Indicates the total number of outstanding items against this server
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerCounters.ToString">
            <summary>
            See Object.ToString();
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.SimulateConnectionFailure">
            <summary>
            For testing only
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerSelectionStrategy.HashSlot(StackExchange.Redis.RedisKey@)">
            <summary>
            Computes the hash-slot that would be used by the given key
            </summary>
            <param name="key">The <see cref="T:StackExchange.Redis.RedisKey"/> to determine a slot ID for.</param>
        </member>
        <member name="T:StackExchange.Redis.SocketManager">
            <summary>
            A SocketManager monitors multiple sockets for availability of data; this is done using
            the Socket.Select API and a dedicated reader-thread, which allows for fast responses
            even when the system is under ambient load.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SocketManager.Name">
            <summary>
            Gets the name of this SocketManager instance
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.SocketManager"/> instance
            </summary>
            <param name="name">The name for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.#ctor(System.String,System.Boolean)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.SocketManager"/> instance
            </summary>
            <param name="name">The name for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
            <param name="useHighPrioritySocketThreads">Whether this <see cref="T:StackExchange.Redis.SocketManager"/> should use high priority sockets.</param>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.#ctor(System.String,System.Int32,System.Boolean)">
            <summary>
            Creates a new (optionally named) <see cref="T:StackExchange.Redis.SocketManager"/> instance
            </summary>
            <param name="name">The name for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
            <param name="workerCount">the number of dedicated workers for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
            <param name="useHighPrioritySocketThreads">Whether this <see cref="T:StackExchange.Redis.SocketManager"/> should use high priority sockets.</param>
        </member>
        <member name="T:StackExchange.Redis.SocketManager.SocketManagerOptions">
            <summary>
            Additional options for configuring the socket manager
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SocketManager.SocketManagerOptions.None">
            <summary>
            No additional options
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SocketManager.SocketManagerOptions.UseHighPrioritySocketThreads">
            <summary>
            Whether the <see cref="T:StackExchange.Redis.SocketManager"/> should use high priority sockets.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SocketManager.SocketManagerOptions.UseThreadPool">
            <summary>
            Use the regular thread-pool for all scheduling
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.#ctor(System.String,System.Int32,StackExchange.Redis.SocketManager.SocketManagerOptions)">
            <summary>
            Creates a new (optionally named) <see cref="T:StackExchange.Redis.SocketManager"/> instance
            </summary>
            <param name="name">The name for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
            <param name="workerCount">the number of dedicated workers for this <see cref="T:StackExchange.Redis.SocketManager"/>.</param>
            <param name="options"></param>
        </member>
        <member name="P:StackExchange.Redis.SocketManager.Shared">
            <summary>
            Default / shared socket manager using a dedicated thread-pool
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SocketManager.ThreadPool">
            <summary>
            Shared socket manager using the main thread-pool
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.ToString">
            <summary>Returns a string that represents the current object.</summary>
            <returns>A string that represents the current object.</returns>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.Dispose">
            <summary>
            Releases all resources associated with this instance
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SocketManager.Finalize">
            <summary>
            Releases *appropriate* resources associated with this instance
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SortedSetEntry">
            <summary>
            Describes a sorted-set element with the corresponding value
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.#ctor(StackExchange.Redis.RedisValue,System.Double)">
            <summary>
            Initializes a <see cref="T:StackExchange.Redis.SortedSetEntry"/> value.
            </summary>
            <param name="element">The <see cref="T:StackExchange.Redis.RedisValue"/> to get an entry for.</param>
            <param name="score">The redis score for <paramref name="element"/>.</param>
        </member>
        <member name="P:StackExchange.Redis.SortedSetEntry.Element">
            <summary>
            The unique element stored in the sorted set
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetEntry.Score">
            <summary>
            The score against the element
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetEntry.Value">
            <summary>
            The score against the element
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetEntry.Key">
            <summary>
            The unique element stored in the sorted set
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.op_Implicit(StackExchange.Redis.SortedSetEntry)~System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,System.Double}">
            <summary>
            Converts to a key/value pair
            </summary>
            <param name="value">The <see cref="T:StackExchange.Redis.SortedSetEntry"/> to get a <see cref="T:System.Collections.Generic.KeyValuePair`2"/> for.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.op_Implicit(System.Collections.Generic.KeyValuePair{StackExchange.Redis.RedisValue,System.Double})~StackExchange.Redis.SortedSetEntry">
            <summary>
            Converts from a key/value pair
            </summary>
            <param name="value">The  <see cref="T:System.Collections.Generic.KeyValuePair`2"/> to get a <see cref="T:StackExchange.Redis.SortedSetEntry"/> for.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.ToString">
            <summary>
            See Object.ToString()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.GetHashCode">
            <summary>
            See Object.GetHashCode()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.Equals(System.Object)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.Equals(StackExchange.Redis.SortedSetEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.CompareTo(StackExchange.Redis.SortedSetEntry)">
            <summary>
            Compares two values by score
            </summary>
            <param name="other">The <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.CompareTo(System.Object)">
            <summary>
            Compares two values by score
            </summary>
            <param name="obj">The <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare to.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.op_Equality(StackExchange.Redis.SortedSetEntry,StackExchange.Redis.SortedSetEntry)">
            <summary>
            Compares two values for equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare.</param>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.op_Inequality(StackExchange.Redis.SortedSetEntry,StackExchange.Redis.SortedSetEntry)">
            <summary>
            Compares two values for non-equality
            </summary>
            <param name="x">The first <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare.</param>
            <param name="y">The second <see cref="T:StackExchange.Redis.SortedSetEntry"/> to compare.</param>
        </member>
        <member name="T:StackExchange.Redis.StreamConstants">
            <summary>
            Constants representing values used in Redis Stream commands.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.ApproximateMaxLen">
            <summary>
            The "~" value used with the MAXLEN option.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.AutoGeneratedId">
            <summary>
            The "*" value used with the XADD command.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.NewMessages">
            <summary>
            The "$" value used in the XGROUP command. Indicates reading only new messages from the stream.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.AllMessages">
            <summary>
            The "0" value used in the XGROUP command. Indicates reading all messages from the stream.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.ReadMinValue">
            <summary>
            The "-" value used in the XRANGE, XREAD, and XREADGROUP commands. Indicates the minimum message ID from the stream.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.ReadMaxValue">
            <summary>
            The "+" value used in the XRANGE, XREAD, and XREADGROUP commands. Indicates the maximum message ID from the stream.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StreamConstants.UndeliveredMessages">
            <summary>
            The ">" value used in the XREADGROUP command. Use this to read messages that have not been delivered to a consumer group.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamConsumer">
            <summary>
            Describes a consumer off a Redis Stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamConsumer.Name">
            <summary>
            The name of the consumer.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamConsumer.PendingMessageCount">
            <summary>
            The number of messages that have been delivered by not yet acknowledged by the consumer.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamConsumerInfo">
            <summary>
            Describes a consumer within a consumer group, retrieved using the XINFO CONSUMERS command. <see cref="M:StackExchange.Redis.IDatabase.StreamConsumerInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamConsumerInfo.Name">
            <summary>
            The name of the consumer.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamConsumerInfo.PendingMessageCount">
            <summary>
            The number of pending messages for the consumer. A pending message is one that has been
            received by the consumer but not yet acknowledged.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamConsumerInfo.IdleTimeInMilliseconds">
            <summary>
            The idle time, if any, for the consumer.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamEntry">
            <summary>
            Describes an entry contained in a Redis Stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamEntry.Null">
            <summary>
            A null stream entry.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamEntry.Id">
            <summary>
            The ID assigned to the message.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamEntry.Values">
            <summary>
            The values contained within the message.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamEntry.Item(StackExchange.Redis.RedisValue)">
            <summary>
            Search for a specific field by name, returning the value
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamEntry.IsNull">
            <summary>
            Indicates that the Redis Stream Entry is null.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamGroupInfo">
            <summary>
            Describes a consumer group retrieved using the XINFO GROUPS command. <see cref="M:StackExchange.Redis.IDatabase.StreamGroupInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)"/>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamGroupInfo.Name">
            <summary>
            The name of the consumer group.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamGroupInfo.ConsumerCount">
            <summary>
            The number of consumers within the consumer group.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamGroupInfo.PendingMessageCount">
            <summary>
            The total number of pending messages for the consumer group. A pending message is one that has been
            received by a consumer but not yet acknowledged.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamGroupInfo.LastDeliveredId">
            <summary>
            The Id of the last message delivered to the group
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamInfo">
            <summary>
            Describes stream information retrieved using the XINFO STREAM command. <see cref="M:StackExchange.Redis.IDatabase.StreamInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)"/>
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.Length">
            <summary>
            The number of entries in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.RadixTreeKeys">
            <summary>
            The number of radix tree keys in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.RadixTreeNodes">
            <summary>
            The number of radix tree nodes in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.ConsumerGroupCount">
            <summary>
            The number of consumers groups in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.FirstEntry">
            <summary>
            The first entry in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.LastEntry">
            <summary>
            The last entry in the stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamInfo.LastGeneratedId">
            <summary>
            The last generated id
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamPendingInfo">
            <summary>
            Describes basic information about pending messages for a consumer group.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingInfo.PendingMessageCount">
            <summary>
            The number of pending messages. A pending message is a message that has been consumed but not yet acknowledged.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingInfo.LowestPendingMessageId">
            <summary>
            The lowest message ID in the set of pending messages.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingInfo.HighestPendingMessageId">
            <summary>
            The highest message ID in the set of pending messages.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingInfo.Consumers">
            <summary>
            An array of consumers within the consumer group that have pending messages.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamPendingMessageInfo">
            <summary>
            Describes properties of a pending message. A pending message is one that has 
            been received by a consumer but has not yet been acknowledged.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingMessageInfo.MessageId">
            <summary>
            The ID of the pending message.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingMessageInfo.ConsumerName">
            <summary>
            The consumer that received the pending message.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingMessageInfo.IdleTimeInMilliseconds">
            <summary>
            The time that has passed since the message was last delivered to a consumer.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPendingMessageInfo.DeliveryCount">
            <summary>
            The number of times the message has been delivered to a consumer.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamPosition">
            <summary>
            Describes a pair consisting of the Stream Key and the <see cref="P:StackExchange.Redis.StreamPosition.Position"/> from which to begin reading a stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPosition.Beginning">
            <summary>
            Read from the beginning of a stream.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPosition.NewMessages">
            <summary>
            Read new messages.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.StreamPosition.#ctor(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue)">
            <summary>
            Initializes a <see cref="T:StackExchange.Redis.StreamPosition"/> value.
            </summary>
            <param name="key">The key for the stream.</param>
            <param name="position">The position from which to begin reading the stream.</param>
        </member>
        <member name="P:StackExchange.Redis.StreamPosition.Key">
            <summary>
            The stream key.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamPosition.Position">
            <summary>
            The offset at which to begin reading the stream.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.TaskSource.Create``1(System.Object,System.Threading.Tasks.TaskCreationOptions)">
            <summary>
            Create a new TaskCompletion source
            </summary>
            <typeparam name="T">The type for the created <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.</typeparam>
            <param name="asyncState">The state for the created <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.</param>
            <param name="options">The options to apply to the task</param>
        </member>
    </members>
</doc>
