StackExchange.Redis.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>StackExchange.Redis</name>
    </assembly>
    <members>
        <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 GeoEntry.
            </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 GeoEntry.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoEntry.Latitude">
            <summary>
            The latitude of the GeoEntry.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.ToString">
            <summary>
            A "({Longitude},{Latitude})={Member}" string representation of this entry.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoEntry.GetHashCode">
            <inheritdoc/>
        </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.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 Longitude of the GeoPosition.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.#ctor(System.Double,System.Double)">
            <summary>
            Creates a new GeoPosition.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.ToString">
            <summary>
            A "{long} {lat}" string representation of this position.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoPosition.GetHashCode">
            <summary>
            See <see cref="M:System.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.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">The distance from the result.</param>
            <param name="hash">The hash of the result.</param>
            <param name="position">The GeoPosition of the result.</param>
        </member>
        <member name="T:StackExchange.Redis.GeoSearchShape">
            <summary>
            A Shape that you can use for a GeoSearch
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoSearchShape.Unit">
            <summary>
            The unit to use for creating the shape.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.GeoSearchShape.ArgCount">
            <summary>
            The number of shape arguments.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoSearchShape.#ctor(StackExchange.Redis.GeoUnit)">
            <summary>
            constructs a <see cref="T:StackExchange.Redis.GeoSearchShape"/>
            </summary>
            <param name="unit"></param>
        </member>
        <member name="T:StackExchange.Redis.GeoSearchCircle">
            <summary>
            A circle drawn on a map bounding
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoSearchCircle.#ctor(System.Double,StackExchange.Redis.GeoUnit)">
            <summary>
            Creates a <see cref="T:StackExchange.Redis.GeoSearchCircle"/> Shape.
            </summary>
            <param name="radius">The radius of the circle.</param>
            <param name="unit">The distance unit the circle will use, defaults to Meters.</param>
        </member>
        <member name="M:StackExchange.Redis.GeoSearchCircle.AddArgs(System.Collections.Generic.List{StackExchange.Redis.RedisValue})">
            <summary>
            Gets the <exception cref="T:StackExchange.Redis.RedisValue"/>s for this shape
            </summary>
            <returns></returns>
        </member>
        <member name="T:StackExchange.Redis.GeoSearchBox">
            <summary>
            A box drawn on a map
            </summary>
        </member>
        <member name="M:StackExchange.Redis.GeoSearchBox.#ctor(System.Double,System.Double,StackExchange.Redis.GeoUnit)">
            <summary>
            Initializes a GeoBox.
            </summary>
            <param name="height">The height of the box.</param>
            <param name="width">The width of the box.</param>
            <param name="unit">The distance unit the box will use, defaults to Meters.</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>
            A "{name}: {value}" string representation of this entry.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.HashEntry.GetHashCode">
            <inheritdoc/>
        </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.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="T:StackExchange.Redis.LCSMatchResult">
            <summary>
            The result of a LongestCommonSubsequence command with IDX feature.
            Returns a list of the positions of each sub-match.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.IsEmpty">
            <summary>
            Whether this match result contains any matches.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.Matches">
            <summary>
            The matched positions of all the sub-matched strings.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.LongestMatchLength">
            <summary>
            The length of the longest match.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LCSMatchResult.#ctor(StackExchange.Redis.LCSMatchResult.LCSMatch[],System.Int64)">
            <summary>
            Returns a new <see cref="T:StackExchange.Redis.LCSMatchResult"/>.
            </summary>
            <param name="matches">The matched positions in each string.</param>
            <param name="matchLength">The length of the match.</param>
        </member>
        <member name="T:StackExchange.Redis.LCSMatchResult.LCSMatch">
            <summary>
            Represents a sub-match of the longest match. i.e first indexes the matched substring in each string.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.LCSMatch.FirstStringIndex">
            <summary>
            The first index of the matched substring in the first string.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.LCSMatch.SecondStringIndex">
            <summary>
            The first index of the matched substring in the second string.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.LCSMatchResult.LCSMatch.Length">
            <summary>
            The length of the match.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.LCSMatchResult.LCSMatch.#ctor(System.Int64,System.Int64,System.Int64)">
            <summary>
            Returns a new Match.
            </summary>
            <param name="firstStringIndex">The first index of the matched substring in the first string.</param>
            <param name="secondStringIndex">The first index of the matched substring in the second string.</param>
            <param name="length">The length of the match.</param>
        </member>
        <member name="T:StackExchange.Redis.ListPopResult">
            <summary>
            A contiguous portion of a redis list.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ListPopResult.Null">
            <summary>
            A null ListPopResult, indicating no results.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ListPopResult.IsNull">
            <summary>
            Whether this object is null/empty.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ListPopResult.Key">
            <summary>
            The key of the list that this set of entries came form.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ListPopResult.Values">
            <summary>
            The values from the list.
            </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>
            The "{name}: {value}" string representation.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.NameValueEntry.GetHashCode">
            <inheritdoc />
        </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="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 array of entries contained within the stream.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisValueWithExpiry">
            <summary>
            Describes a value/expiry pair.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisValueWithExpiry.#ctor(StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan})">
            <summary>
            Creates a <see cref="T:StackExchange.Redis.RedisValueWithExpiry"/> from a <see cref="T:StackExchange.Redis.RedisValue"/> and a <see cref="T:System.Nullable`1"/>.
            </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.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>
            A "{element}: {score}" string representation of the entry.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.SortedSetEntry.GetHashCode">
            <inheritdoc/>
        </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.SortedSetPopResult">
            <summary>
            A contiguous portion of a redis sorted set.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetPopResult.Null">
            <summary>
            A null SortedSetPopResult, indicating no results.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetPopResult.IsNull">
            <summary>
            Whether this object is null/empty.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetPopResult.Key">
            <summary>
            The key of the sorted set these entries came form.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.SortedSetPopResult.Entries">
            <summary>
            The provided entries of the sorted set.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamAutoClaimIdsOnlyResult">
            <summary>
            Result of the <see href="https://redis.io/commands/xautoclaim/">XAUTOCLAIM</see> command with the <c>JUSTID</c> option.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimIdsOnlyResult.Null">
            <summary>
            A null <see cref="T:StackExchange.Redis.StreamAutoClaimIdsOnlyResult"/>, indicating no results.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimIdsOnlyResult.IsNull">
            <summary>
            Whether this object is null/empty.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimIdsOnlyResult.NextStartId">
            <summary>
            The stream ID to be used in the next call to StreamAutoClaim.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimIdsOnlyResult.ClaimedIds">
            <summary>
            Array of IDs claimed by the command.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimIdsOnlyResult.DeletedIds">
            <summary>
            Array of message IDs deleted from the stream.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.StreamAutoClaimResult">
            <summary>
            Result of the <see href="https://redis.io/commands/xautoclaim/">XAUTOCLAIM</see> command.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimResult.Null">
            <summary>
            A null <see cref="T:StackExchange.Redis.StreamAutoClaimResult"/>, indicating no results.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimResult.IsNull">
            <summary>
            Whether this object is null/empty.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimResult.NextStartId">
            <summary>
            The stream ID to be used in the next call to StreamAutoClaim.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimResult.ClaimedEntries">
            <summary>
            An array of <see cref="T:StackExchange.Redis.StreamEntry"/> for the successfully claimed entries.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamAutoClaimResult.DeletedIds">
            <summary>
            An array of message IDs deleted from the stream.
            </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="M:StackExchange.Redis.StreamEntry.#ctor(StackExchange.Redis.RedisValue,StackExchange.Redis.NameValueEntry[])">
            <summary>
            Creates an stream entry.
            </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="P:StackExchange.Redis.StreamGroupInfo.EntriesRead">
            <summary>
            Total number of entries the group had read.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.StreamGroupInfo.Lag">
            <summary>
            The number of entries in the range between the group's read entries and the stream's entries.
            </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="T:StackExchange.Redis.BacklogPolicy">
            <summary>
            The backlog policy to use for commands. This policy comes into effect when a connection is unhealthy or unavailable.
            The policy can choose to backlog commands and wait to try them (within their timeout) against a connection when it comes up,
            or it could choose to fail fast and throw ASAP. Different apps desire different behaviors with backpressure and how to handle
            large amounts of load, so this is configurable to optimize the happy path but avoid spiral-of-death queue scenarios for others.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.BacklogPolicy.FailFast">
            <summary>
            Backlog behavior matching StackExchange.Redis's 2.x line, failing fast and not attempting to queue
            and retry when a connection is available again.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.BacklogPolicy.Default">
            <summary>
            Default backlog policy which will allow commands to be issues against an endpoint and queue up.
            Commands are still subject to their async timeout (which serves as a queue size check).
            </summary>
        </member>
        <member name="P:StackExchange.Redis.BacklogPolicy.QueueWhileDisconnected">
            <summary>
            Whether to queue commands while disconnected.
            True means queue for attempts up until their timeout.
            <see langword="false"/> means to fail ASAP and queue nothing.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.BacklogPolicy.AbortPendingOnConnectionFailure">
            <summary>
            Whether to immediately abandon (with an exception) all pending commands when a connection goes unhealthy.
            </summary>
        </member>
        <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 publish/subscribe.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.ToString">
            <summary>
            The Channel:Message string representation.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.GetHashCode">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.Equals(System.Object)">
            <inheritdoc/>
        </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="M:StackExchange.Redis.ChannelMessage.op_Equality(StackExchange.Redis.ChannelMessage,StackExchange.Redis.ChannelMessage)">
            <summary>
            Checks if 2 messages are .Equal()
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ChannelMessage.op_Inequality(StackExchange.Redis.ChannelMessage,StackExchange.Redis.ChannelMessage)">
            <summary>
            Checks if 2 messages are not .Equal()
            </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 <see cref="M:StackExchange.Redis.ISubscriber.Subscribe(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>
            or <see cref="M:StackExchange.Redis.ISubscriber.SubscribeAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>.
            </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>
            The string representation of this channel.
            </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="M:StackExchange.Redis.ChannelMessageQueue.GetAsyncEnumerator(System.Threading.CancellationToken)">
            <inheritdoc cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)"/>
        </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:
            <list type="table">
                <item>
                    <term>A</term>
                    <description>Connection to be closed ASAP.</description>
                </item>
                <item>
                    <term>b</term>
                    <description>The client is waiting in a blocking operation.</description>
                </item>
                <item>
                    <term>c</term>
                    <description>Connection to be closed after writing entire reply.</description>
                </item>
                <item>
                    <term>d</term>
                    <description>A watched keys has been modified - EXEC will fail.</description>
                </item>
                <item>
                    <term>i</term>
                    <description>The client is waiting for a VM I/O (deprecated).</description>
                </item>
                <item>
                    <term>M</term>
                    <description>The client is a primary.</description>
                </item>
                <item>
                    <term>N</term>
                    <description>No specific flag set.</description>
                </item>
                <item>
                    <term>O</term>
                    <description>The client is a replica in MONITOR mode.</description>
                </item>
                <item>
                    <term>P</term>
                    <description>The client is a Pub/Sub subscriber.</description>
                </item>
                <item>
                    <term>r</term>
                    <description>The client is in readonly mode against a cluster node.</description>
                </item>
                <item>
                    <term>S</term>
                    <description>The client is a normal replica server.</description>
                </item>
                <item>
                    <term>u</term>
                    <description>The client is unblocked.</description>
                </item>
                <item>
                    <term>U</term>
                    <description>The client is unblocked.</description>
                </item>
                <item>
                    <term>x</term>
                    <description>The client is in a MULTI/EXEC context.</description>
                </item>
                <item>
                    <term>t</term>
                    <description>The client enabled keys tracking in order to perform client side caching.</description>
                </item>
                <item>
                    <term>R</term>
                    <description>The client tracking target client is invalid.</description>
                </item>
                <item>
                    <term>B</term>
                    <description>The client enabled broadcast tracking mode.</description>
                </item>
            </list>
            </summary>
            <remarks><seealso href="https://redis.io/commands/client-list"/></remarks>
        </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>
            A 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="P:StackExchange.Redis.ClientInfo.ProtocolVersion">
            <summary>
            Client RESP protocol version. Added in Redis 7.0.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.Protocol">
            <summary>
            Client RESP protocol version. Added in Redis 7.0.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.LibraryName">
            <summary>
            Client library name. Added in Redis 7.2.
            </summary>
            <remarks><seealso href="https://redis.io/commands/client-setinfo"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.ClientInfo.LibraryVersion">
            <summary>
            Client library version. Added in Redis 7.2.
            </summary>
            <remarks><seealso href="https://redis.io/commands/client-setinfo"/></remarks>
        </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 <see cref="M:System.Object.Equals(System.Object)"/>.
            </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">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.SlotRange.ToString">
            <summary>
            String representation ("{from}-{to}") of the range.
            </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>
        </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>
            <remarks><seealso href="https://redis.io/commands/cluster-nodes"/></remarks>
        </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.IsFail">
            <summary>
            Gets whether this node is in a failed state.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ClusterNode.IsPossiblyFail">
            <summary>
            Gets whether this node is possibly in a failed state.
            Possibly here means the node we're getting status from can't communicate with it, but doesn't mean it's down for sure.
            </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 <see cref="M:System.Object.Equals(System.Object)"/>.
            </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 <see cref="T:StackExchange.Redis.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">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.ClusterNode.ToString">
            <summary>
            A string summary of this cluster configuration.
            </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="https://github.com/twitter/twemproxy">twemproxy</a>.
            </summary>
            <remarks><seealso href="https://github.com/twitter/twemproxy/blob/master/notes/redis.md"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.Envoyproxy">
            <summary>
            The commands available to <a href="https://github.com/envoyproxy/envoy">envoyproxy</a>.
            </summary>
            <remarks><seealso href="https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/other_protocols/redis.html?highlight=redis"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.SSDB">
            <summary>
            The commands available to <a href="https://ssdb.io/">SSDB</a>.
            </summary>
            <remarks><seealso href="https://ssdb.io/docs/redis-to-ssdb.html"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.CommandMap.Sentinel">
            <summary>
            The commands available to <a href="https://redis.io/topics/sentinel">Sentinel</a>.
            </summary>
            <remarks><seealso href="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 <see cref="T:StackExchange.Redis.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 <see cref="T:StackExchange.Redis.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 <see cref="M:System.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 precondition 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="M:StackExchange.Redis.Condition.StreamLengthEqual(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given stream length is a certain value.
            </summary>
            <param name="key">The key of the stream to check.</param>
            <param name="length">The length the stream must have.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StreamLengthLessThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given stream length is less than a certain value.
            </summary>
            <param name="key">The key of the stream to check.</param>
            <param name="length">The length the stream must be less than.</param>
        </member>
        <member name="M:StackExchange.Redis.Condition.StreamLengthGreaterThan(StackExchange.Redis.RedisKey,System.Int64)">
            <summary>
            Enforces that the given stream length is greater than a certain value.
            </summary>
            <param name="key">The key of the stream to check.</param>
            <param name="length">The length the stream must be greater than.</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>
            <remarks>
            Some options are not observed by a <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> after initial creation:
            <list type="bullet">
                <item><see cref="P:StackExchange.Redis.ConfigurationOptions.CommandMap"/></item>
                <item><see cref="P:StackExchange.Redis.ConfigurationOptions.ConfigurationChannel"/></item>
                <item><see cref="P:StackExchange.Redis.ConfigurationOptions.EndPoints"/></item>
                <item><see cref="P:StackExchange.Redis.ConfigurationOptions.SocketManager"/></item>
            </list>
            </remarks>
        </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.Defaults">
            <summary>
            The default (not explicitly configured) options for this connection, fetched based on our parsed endpoints.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.BeforeSocketConnect">
            <summary>
            Allows modification of a <see cref="T:System.Net.Sockets.Socket"/> between creation and connection.
            Passed in is the endpoint we're connecting to, which type of connection it is, and the socket itself.
            For example, a specific local IP endpoint could be bound, linger time altered, etc.
            </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.SetClientLibrary">
            <summary>
            Gets or sets whether the library should identify itself by library-name/version when possible.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.LibraryName">
            <summary>
            Gets or sets the library name to use for CLIENT SETINFO lib-name calls to Redis during handshake.
            Defaults to "SE.Redis".
            </summary>
            <remarks>If the value is null, empty or whitespace, then the value from the options-provider is used;
            to disable the library name feature, use <see cref="P:StackExchange.Redis.ConfigurationOptions.SetClientLibrary"/> instead.</remarks>
        </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 when 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 when 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>
            <remarks>
            This is memoized when a <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> connects.
            Modifying it afterwards will have no effect on already-created multiplexers.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ConfigurationOptions.GetCommandMap(System.Nullable{StackExchange.Redis.ServerType})">
            <summary>
            Gets the command map for a given server type, since some supersede settings when connecting.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.ConfigurationChannel">
            <summary>
            Channel to use for broadcasting and listening for configuration change notification.
            </summary>
            <remarks>
            This is memoized when a <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> connects.
            Modifying it afterwards will have no effect on already-created multiplexers.
            </remarks>
        </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 <see cref="M:StackExchange.Redis.ConnectionMultiplexer.GetDatabase(System.Int32,System.Object)"/> 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>
            <remarks>
            This is memoized when a <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> connects.
            Modifying it afterwards will have no effect on already-created multiplexers.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.HeartbeatConsistencyChecks">
            <summary>
            Whether to enable ECHO checks on every heartbeat to ensure network stream consistency.
            This is a rare measure to react to any potential network traffic drops ASAP, terminating the connection.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.HeartbeatInterval">
            <summary>
            Controls how often the connection heartbeats. A heartbeat includes:
            - Evaluating if any messages have timed out
            - Evaluating connection status (checking for failures)
            - Sending a server message to keep the connection alive if needed
            </summary>
            <remarks>
            This defaults to 1000 milliseconds and should not be changed for most use cases.
            If for example you want to evaluate whether commands have violated the <see cref="P:StackExchange.Redis.ConfigurationOptions.AsyncTimeout"/> at a lower fidelity
            than 1000 milliseconds, you could lower this value.
            Be aware setting this very low incurs additional overhead of evaluating the above more often.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.HighPrioritySocketThreads">
            <summary>
            Use ThreadPriority.AboveNormal for SocketManager reader and writer threads (true by default).
            If <see langword="false"/>, <see cref="F:System.Threading.ThreadPriority.Normal"/> will be used.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.IncludeDetailInExceptions">
            <summary>
            Should exceptions include identifiable details? (key names, additional .Data annotations)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.IncludePerformanceCountersInExceptions">
            <summary>
            Should exceptions include performance counter details?
            </summary>
            <remarks>
            CPU usage, etc - note that this can be problematic on some platforms.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.KeepAlive">
            <summary>
            Specifies the time in seconds at which connections should be pinged to ensure validity.
            -1 Defaults to 60 Seconds
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.LoggerFactory">
            <summary>
            The <see cref="T:Microsoft.Extensions.Logging.ILoggerFactory"/> to get loggers for connection events.
            Note: changes here only affect <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/>s created after.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.User">
            <summary>
            The username 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 <see cref="F:StackExchange.Redis.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.BacklogPolicy">
            <summary>
            The backlog policy to be used for commands when a connection is unhealthy.
            </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.
            </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 <see cref="P:StackExchange.Redis.ConfigurationOptions.SocketManager"/> is used.
            </summary>
            <remarks>
            This is only used when a <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> is created.
            Modifying it afterwards will have no effect on already-created multiplexers.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.SslClientAuthenticationOptions">
            <summary>
            A <see cref="P:StackExchange.Redis.ConfigurationOptions.SslClientAuthenticationOptions"/> provider for a given host, for custom TLS connection options.
            Note: this overrides *all* other TLS and certificate settings, only for advanced use cases.
            </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 primaries (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 <see langword="null"/>.</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 <see langword="null"/>.</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.Apply(System.Action{StackExchange.Redis.ConfigurationOptions})">
            <summary>
            Apply settings to configure this instance of <see cref="T:StackExchange.Redis.ConfigurationOptions"/>, e.g. for a specific scenario.
            </summary>
            <param name="configure">An action that will update the properties of this <see cref="T:StackExchange.Redis.ConfigurationOptions"/> instance.</param>
            <returns>This <see cref="T:StackExchange.Redis.ConfigurationOptions"/> instance, with any changes <paramref name="configure"/> made.</returns>
        </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.TryGetTieBreaker(StackExchange.Redis.RedisKey@)">
            <summary>
            Gets a tie breaker if we both have one set, and should be using one.
            </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="P:StackExchange.Redis.ConfigurationOptions.Tunnel">
            <summary>
            Allows custom transport implementations, such as http-tunneling via a proxy.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConfigurationOptions.Protocol">
            <summary>
            Specify the redis protocol type
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Configuration.AzureOptionsProvider">
            <summary>
            Options provider for Azure environments.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.AzureOptionsProvider.AbortOnConnectFail">
            <summary>
            Allow connecting after startup, in the cases where remote cache isn't ready or is overloaded.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.AzureOptionsProvider.DefaultVersion">
            <summary>
            The minimum version of Redis in Azure is 4, so use the widest set of available commands when connecting.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Configuration.AzureOptionsProvider.azureRedisDomains">
            <summary>
            List of domains known to be Azure Redis, so we can light up some helpful functionality
            for minimizing downtime during maintenance events and such.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.AzureOptionsProvider.IsMatch(System.Net.EndPoint)">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.Configuration.AzureOptionsProvider.AfterConnectAsync(StackExchange.Redis.ConnectionMultiplexer,System.Action{System.String})">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.Configuration.AzureOptionsProvider.GetDefaultSsl(StackExchange.Redis.EndPointCollection)">
            <inheritdoc/>
        </member>
        <member name="T:StackExchange.Redis.Configuration.DefaultOptionsProvider">
            <summary>
            A defaults providers for <see cref="T:StackExchange.Redis.ConfigurationOptions"/>.
            This providers defaults not explicitly specified and is present to be inherited by environments that want to provide
            better defaults for their use case, e.g. in a single wrapper library used many places.
            </summary>
            <remarks>
            Why not just have a default <see cref="T:StackExchange.Redis.ConfigurationOptions"/> instance? Good question!
            Since we null coalesce down to the defaults, there's an inherent pit-of-failure with that approach of <see cref="T:System.StackOverflowException"/>.
            If you forget anything or if someone creates a provider nulling these out...kaboom.
            </remarks>
        </member>
        <member name="F:StackExchange.Redis.Configuration.DefaultOptionsProvider.BuiltInProviders">
            <summary>
            The known providers to match against (built into the library) - the default set.
            If none of these match, <see cref="T:StackExchange.Redis.Configuration.DefaultOptionsProvider"/> is used.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.KnownProviders">
            <summary>
            The current list of providers to match (potentially modified from defaults via <see cref="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.AddProvider(StackExchange.Redis.Configuration.DefaultOptionsProvider)"/>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.AddProvider(StackExchange.Redis.Configuration.DefaultOptionsProvider)">
            <summary>
            Adds a provider to match endpoints against. The last provider added has the highest priority.
            If you want your provider to match everything, implement <see cref="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.IsMatch(System.Net.EndPoint)"/> as <c>return true;</c>.
            </summary>
            <param name="provider">The provider to add.</param>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.IsMatch(System.Net.EndPoint)">
            <summary>
            Whether this options provider matches a given endpoint, for automatically selecting a provider based on what's being connected to.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.GetProvider(StackExchange.Redis.EndPointCollection)">
            <summary>
            Gets a provider for the given endpoints, falling back to <see cref="T:StackExchange.Redis.Configuration.DefaultOptionsProvider"/> if nothing more specific is found.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.GetProvider(System.Net.EndPoint)">
            <summary>
            Gets a provider for a given endpoints, falling back to <see cref="T:StackExchange.Redis.Configuration.DefaultOptionsProvider"/> if nothing more specific is found.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.AbortOnConnectFail">
            <summary>
            Gets or sets whether connect/configuration timeouts should be explicitly notified via a TimeoutException.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.AllowAdmin">
            <summary>
            Indicates whether admin operations should be allowed.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.BacklogPolicy">
            <summary>
            The backlog policy to be used for commands when a connection is unhealthy.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.CheckCertificateRevocation">
            <summary>
            A Boolean value that specifies whether the certificate revocation list is checked during authentication.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ConnectRetry">
            <summary>
            The number of times to repeat the initial connect cycle if no servers respond promptly.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ConnectTimeout">
            <summary>
            Specifies the time that should be allowed for connection.
            Falls back to Max(5000, SyncTimeout) if null.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.CommandMap">
            <summary>
            The command-map associated with this configuration.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ConfigurationChannel">
            <summary>
            Channel to use for broadcasting and listening for configuration change notification.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.DefaultVersion">
            <summary>
            The server version to assume.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.HeartbeatInterval">
            <summary>
            Controls how often the connection heartbeats. A heartbeat includes:
            - Evaluating if any messages have timed out
            - Evaluating connection status (checking for failures)
            - Sending a server message to keep the connection alive if needed
            </summary>
            <remarks>Be aware setting this very low incurs additional overhead of evaluating the above more often.</remarks>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.HeartbeatConsistencyChecks">
            <summary>
            Whether to enable ECHO checks on every heartbeat to ensure network stream consistency.
            This is a rare measure to react to any potential network traffic drops ASAP, terminating the connection.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.IncludeDetailInExceptions">
            <summary>
            Should exceptions include identifiable details? (key names, additional .Data annotations)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.IncludePerformanceCountersInExceptions">
            <summary>
            Should exceptions include performance counter details?
            </summary>
            <remarks>
            CPU usage, etc - note that this can be problematic on some platforms.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.KeepAliveInterval">
            <summary>
            Specifies the time interval at which connections should be pinged to ensure validity.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.LoggerFactory">
            <summary>
            The <see cref="T:Microsoft.Extensions.Logging.ILoggerFactory"/> to get loggers for connection events.
            Note: changes here only affect <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/>s created after.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.Proxy">
            <summary>
            Type of proxy to use (if any); for example <see cref="F:StackExchange.Redis.Proxy.Twemproxy"/>.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ReconnectRetryPolicy">
            <summary>
            The retry policy to be used for connection reconnects.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.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.Configuration.DefaultOptionsProvider.SyncTimeout">
            <summary>
            Specifies the time that the system should allow for synchronous operations.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.TieBreaker">
            <summary>
            Tie-breaker used to choose between primaries (must match the endpoint exactly).
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ConfigCheckInterval">
            <summary>
            Check configuration every n interval.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.User">
            <summary>
            The username to use to authenticate with the server.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.Password">
            <summary>
            The password to use to authenticate with the server.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ClientName">
            <summary>
            The default client name for a connection, with the library version appended.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.GetDefaultClientName">
            <summary>
            Gets the default client name for a connection.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.LibraryName">
            <summary>
            Gets the library name to use for CLIENT SETINFO lib-name calls to Redis during handshake.
            Defaults to "SE.Redis".
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.LibraryVersion">
            <summary>
            String version of the StackExchange.Redis library, for use in any options.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.ComputerName">
            <summary>
            Name of the machine we're running on, for use in any options.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Configuration.DefaultOptionsProvider.SetClientLibrary">
            <summary>
            Whether to identify the client by library name/version when possible
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.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>
            <remarks>
            Azure, in the default provider? Yes, to maintain existing compatibility/convenience.
            Source != destination here.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.AfterConnectAsync(StackExchange.Redis.ConnectionMultiplexer,System.Action{System.String})">
            <summary>
            The action to perform, if any, immediately after an initial connection completes.
            </summary>
            <param name="multiplexer">The multiplexer that just connected.</param>
            <param name="log">The logger for the connection, to emit to the connection output log.</param>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.GetDefaultSsl(StackExchange.Redis.EndPointCollection)">
            <summary>
            Gets the default SSL "enabled or not" based on a set of endpoints.
            Note: this setting then applies for *all* endpoints.
            </summary>
            <param name="endPoints">The configured endpoints to determine SSL usage from (e.g. from the port).</param>
            <returns>Whether to enable SSL for connections (unless explicitly overridden in a direct <see cref="P:StackExchange.Redis.ConfigurationOptions.Ssl"/> set).</returns>
        </member>
        <member name="M:StackExchange.Redis.Configuration.DefaultOptionsProvider.GetSslHostFromEndpoints(StackExchange.Redis.EndPointCollection)">
            <summary>
            Gets the SSL Host to check for when connecting to endpoints (customizable in case of internal certificate shenanigans.
            </summary>
            <param name="endPoints">The configured endpoints to determine SSL host from (e.g. from the port).</param>
            <returns>The common host, if any, detected from the endpoint collection.</returns>
        </member>
        <member name="T:StackExchange.Redis.Configuration.LoggingTunnel">
            <summary>
            Captures redis traffic; intended for debug use
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.ReplayAsync(System.IO.Stream,System.IO.Stream,System.Action{StackExchange.Redis.RedisResult,StackExchange.Redis.RedisResult})">
            <summary>
            Replay the RESP messages for a pair of streams, invoking a callback per operation
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.ReplayAsync(System.String,System.Action{StackExchange.Redis.RedisResult,StackExchange.Redis.RedisResult})">
            <summary>
            Replay the RESP messages all the streams in a folder, invoking a callback per operation
            </summary>
            <param name="path">The directory of captured files to replay.</param>
            <param name="pair">Operation to perform per replayed message pair.</param>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.ValidateAsync(System.String)">
            <summary>
            Validate a RESP stream and return the number of top-level RESP fragments.
            </summary>
            <param name="path">The path of a single file to validate, or a directory of captured files to validate.</param>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.ValidateAsync(System.IO.Stream)">
            <summary>
            Validate a RESP stream and return the number of top-level RESP fragments.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.#ctor(StackExchange.Redis.ConfigurationOptions,StackExchange.Redis.Configuration.Tunnel)">
            <summary>
            Create a new instance of a <see cref="T:StackExchange.Redis.Configuration.LoggingTunnel"/>
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.LogToDirectory(StackExchange.Redis.ConfigurationOptions,System.String)">
            <summary>
            Configures the provided options to perform file-based logging to a directory;
            files will be sequential per stream starting from zero, and will blindly overwrite existing files.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.BeforeAuthenticateAsync(System.Net.EndPoint,StackExchange.Redis.ConnectionType,System.Net.Sockets.Socket,System.Threading.CancellationToken)">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.Log(System.IO.Stream,System.Net.EndPoint,StackExchange.Redis.ConnectionType)">
            <summary>
            Perform logging on the provided stream
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.BeforeSocketConnectAsync(System.Net.EndPoint,StackExchange.Redis.ConnectionType,System.Net.Sockets.Socket,System.Threading.CancellationToken)">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.GetSocketConnectEndpointAsync(System.Net.EndPoint,System.Threading.CancellationToken)">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.DefaultFormatCommand(StackExchange.Redis.RedisResult)">
            <summary>
            Get a typical text representation of a redis command
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.LoggingTunnel.DefaultFormatResponse(StackExchange.Redis.RedisResult)">
            <summary>
            Get a typical text representation of a redis response
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Configuration.Tunnel">
            <summary>
            Allows interception of the transport used to communicate with Redis.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.Tunnel.GetSocketConnectEndpointAsync(System.Net.EndPoint,System.Threading.CancellationToken)">
            <summary>
            Gets the underlying socket endpoint to use when connecting to a logical endpoint.
            </summary>
            <remarks><c>null</c> should be returned if a socket is not required for this endpoint.</remarks>
        </member>
        <member name="M:StackExchange.Redis.Configuration.Tunnel.BeforeSocketConnectAsync(System.Net.EndPoint,StackExchange.Redis.ConnectionType,System.Net.Sockets.Socket,System.Threading.CancellationToken)">
            <summary>
            Allows modification of a <see cref="T:System.Net.Sockets.Socket"/> between creation and connection.
            Passed in is the endpoint we're connecting to, which type of connection it is, and the socket itself.
            For example, a specific local IP endpoint could be bound, linger time altered, etc.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.Tunnel.BeforeAuthenticateAsync(System.Net.EndPoint,StackExchange.Redis.ConnectionType,System.Net.Sockets.Socket,System.Threading.CancellationToken)">
            <summary>
            Invoked on a connected endpoint before server authentication and other handshakes occur, allowing pre-redis handshakes. By returning a custom <see cref="T:System.IO.Stream"/>,
            the entire data flow can be intercepted, providing entire custom transports.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Configuration.Tunnel.HttpProxy(System.Net.EndPoint)">
            <summary>
            Create a tunnel via an HTTP proxy server.
            </summary>
            <param name="proxy">The endpoint to use as an HTTP proxy server.</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 dispatched to a non-preferred endpoint, for example sent
            to a primary 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 <see cref="M:System.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 that occurred.</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.
            A reference to this should be held and re-used.
            </summary>
            <remarks><seealso href="https://stackexchange.github.io/StackExchange.Redis/PipelinesMultiplexers"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.Factory">
            <summary>
            No longer used.
            </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="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.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?
            </summary>
            <remarks>
            CPU usage, etc - note that this can be problematic on some platforms.
            </remarks>
        </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="P:StackExchange.Redis.ConnectionMultiplexer.ClientName">
            <summary>
            Gets the client-name that will be used on all new connections.
            </summary>
            <remarks>
            We null coalesce here instead of in Options so that we don't populate it everywhere (e.g. .ToString()), given it's a default.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.Configuration">
            <summary>
            Gets the configuration of the connection.
            </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.GetCounters">
            <summary>
            Get summary statistics associated with all servers in this multiplexer.
            </summary>
        </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="M:StackExchange.Redis.ConnectionMultiplexer.ConnectAsync(System.String,System.IO.TextWriter)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.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(System.String,System.Action{StackExchange.Redis.ConfigurationOptions},System.IO.TextWriter)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> instance.
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="configure">Action to further modify the parsed configuration options.</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>
            Creates a new <see cref="T:StackExchange.Redis.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>
            <remarks>Note: For Sentinel, do <b>not</b> specify a <see cref="P:StackExchange.Redis.ConfigurationOptions.CommandMap"/> - this is handled automatically.</remarks>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Connect(System.String,System.IO.TextWriter)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.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(System.String,System.Action{StackExchange.Redis.ConfigurationOptions},System.IO.TextWriter)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> instance.
            </summary>
            <param name="configuration">The string configuration to use for this multiplexer.</param>
            <param name="configure">Action to further modify the parsed configuration options.</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>
            Creates a new <see cref="T:StackExchange.Redis.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>
            <remarks>Note: For Sentinel, do <b>not</b> specify a <see cref="P:StackExchange.Redis.ConfigurationOptions.CommandMap"/> - this is handled automatically.</remarks>
        </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.ApplyDefaultDatabase(System.Int32)">
            <summary>
            Applies common DB number defaults and rules.
            </summary>
        </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.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.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="M:StackExchange.Redis.ConnectionMultiplexer.GetServers">
            <summary>
            Obtain configuration APIs for all servers in this multiplexer.
            </summary>
        </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="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.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.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.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.ReconfigureAsync(System.String)">
            <summary>
            Triggers a reconfigure of this multiplexer.
            This re-assessment of all server endpoints to get the current topology and adjust, the same as if we had first connected.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetEndPoints(System.Boolean)">
            <summary>
            Gets all endpoints defined on the multiplexer.
            </summary>
            <param name="configuredOnly">Whether to get only the endpoints specified explicitly in the config.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.ToString">
            <summary>
            Gets the client name for this multiplexer.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.PublishReconfigure(StackExchange.Redis.CommandFlags)">
            <summary>
            Sends request to 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.ConnectionMultiplexer.PublishReconfigureAsync(StackExchange.Redis.CommandFlags)">
            <summary>
            Sends request to 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.Dispose">
            <summary>
            Release all resources associated with this object.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.DisposeAsync">
            <summary>
            Release all resources associated with this object.
            </summary>
        </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.Finalize">
            <summary>
            Invoked by the garbage collector.
            </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="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 primary/replica changes.
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ServerMaintenanceEvent">
            <summary>
            Raised when server indicates a maintenance event is going to happen.
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.HashSlotMoved">
            <summary>
            Raised when a hash-slot has been relocated.
            </summary>
        </member>
        <member name="E:StackExchange.Redis.ConnectionMultiplexer.ErrorMessage">
            <summary>
            Raised when 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="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="M:StackExchange.Redis.ConnectionMultiplexer.AddLibraryNameSuffix(System.String)">
            <inheritdoc cref="M:StackExchange.Redis.IConnectionMultiplexer.AddLibraryNameSuffix(System.String)" />
        </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="M:StackExchange.Redis.ConnectionMultiplexer.InitializeSentinel(Microsoft.Extensions.Logging.ILogger)">
            <summary>
            Initializes the connection as a Sentinel connection and adds the necessary event handlers to track changes to the managed primaries.
            </summary>
            <param name="log">The <see cref="T:Microsoft.Extensions.Logging.ILogger"/> to log to, if any.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SentinelConnect(System.String,System.IO.TextWriter)">
            <summary>
            Create a new <see cref="T:StackExchange.Redis.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 <see cref="T:StackExchange.Redis.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 <see cref="T:StackExchange.Redis.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 <see cref="T:StackExchange.Redis.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.SentinelPrimaryConnect(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> instance that connects to a sentinel server, discovers the current primary server
            for the specified <see cref="P:StackExchange.Redis.ConfigurationOptions.ServiceName"/> in the config and returns a managed connection to the current primary 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.SentinelPrimaryConnectAsync(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Create a new <see cref="T:StackExchange.Redis.ConnectionMultiplexer"/> instance that connects to a sentinel server, discovers the current primary server
            for the specified <see cref="P:StackExchange.Redis.ConfigurationOptions.ServiceName"/> in the config and returns a managed connection to the current primary server.
            </summary>
            <param name="configuration">The configuration options to use for this multiplexer.</param>
            <param name="writer">The <see cref="T:System.IO.TextWriter"/> to log to.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetSentinelMasterConnection(StackExchange.Redis.ConfigurationOptions,System.IO.TextWriter)">
            <summary>
            Returns a managed connection to the primary server indicated by the <see cref="P:StackExchange.Redis.ConfigurationOptions.ServiceName"/> in the config.
            </summary>
            <param name="config">The configuration to be used when connecting to the primary.</param>
            <param name="log">The writer to log to, if any.</param>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.SwitchPrimary(System.Net.EndPoint,StackExchange.Redis.ConnectionMultiplexer,System.IO.TextWriter)">
            <summary>
            Switches the SentinelMasterConnection over to a new primary.
            </summary>
            <param name="switchBlame">The endpoint responsible for the switch.</param>
            <param name="connection">The connection that should be switched over to a new primary endpoint.</param>
            <param name="writer">The writer to log to, if any.</param>
        </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.GetSubscriberCounts(StackExchange.Redis.RedisChannel@,System.Int32@,System.Int32@)">
            <summary>
            Gets the subscriber counts for a channel.
            </summary>
            <returns><see langword="true"/> if there's a subscription registered at all.</returns>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.GetSubscribedServer(StackExchange.Redis.RedisChannel@)">
            <summary>
            Gets which server, if any, there's a registered subscription to for this channel.
            </summary>
            <remarks>
            This may be null if there is a subscription, but we don't have a connected server at the moment.
            This behavior is fine but IsConnected checks, but is a subtle difference in <see cref="M:StackExchange.Redis.ISubscriber.SubscribedEndpoint(StackExchange.Redis.RedisChannel)"/>.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.OnMessage(StackExchange.Redis.RedisChannel@,StackExchange.Redis.RedisChannel@,StackExchange.Redis.RedisValue@)">
            <summary>
            Handler that executes whenever a message comes in, this doles out messages to any registered handlers.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.UpdateSubscriptions">
            <summary>
            Updates all subscriptions re-evaluating their state.
            This clears the current server if it's not connected, prepping them to reconnect.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.EnsureSubscriptions(StackExchange.Redis.CommandFlags)">
            <summary>
            Ensures all subscriptions are connected to a server, if possible.
            </summary>
            <returns>The count of subscriptions attempting to reconnect (same as the count currently not connected).</returns>
        </member>
        <member name="T:StackExchange.Redis.ConnectionMultiplexer.Subscription">
            <summary>
            This is the record of a single subscription to a redis server.
            It's the singular channel (which may or may not be a pattern), to one or more handlers.
            We subscriber to a redis server once (for all messages) and execute 1-many handlers when a message arrives.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ConnectionMultiplexer.Subscription.IsConnected">
            <summary>
            Whether the <see cref="F:StackExchange.Redis.ConnectionMultiplexer.Subscription.CurrentServer"/> we have is connected.
            Since we clear <see cref="F:StackExchange.Redis.ConnectionMultiplexer.Subscription.CurrentServer"/> on a disconnect, this should stay correct.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Subscription.GetMessage(StackExchange.Redis.RedisChannel,StackExchange.Redis.ConnectionMultiplexer.SubscriptionAction,StackExchange.Redis.CommandFlags,System.Boolean)">
            <summary>
            Gets the configured (P)SUBSCRIBE or (P)UNSUBSCRIBE <see cref="T:StackExchange.Redis.Message"/> for an action.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ConnectionMultiplexer.Subscription.UpdateServer">
            <summary>
            Evaluates state and if we're not currently connected, clears the server reference.
            </summary>
        </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="P:StackExchange.Redis.CursorEnumerable`1.StackExchange#Redis#IScanningCursor#Cursor">
            <summary>
            The cursor position.
            </summary>
            <remarks>
            This may fail on cluster-proxy - I'm OK with this for now.
            </remarks>
        </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 <see cref="T:StackExchange.Redis.EndPointCollection"/>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.#ctor(System.Collections.Generic.IList{System.Net.EndPoint})">
            <summary>
            Create a new <see cref="T:StackExchange.Redis.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 <see cref="T:System.Net.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 <see cref="T:System.Net.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><see langword="true"/> if the endpoint was added, <see langword="false"/> if not.</returns>
        </member>
        <member name="M:StackExchange.Redis.EndPointCollection.InsertItem(System.Int32,System.Net.EndPoint)">
            <summary>
            See <see cref="M:System.Collections.ObjectModel.Collection`1.InsertItem(System.Int32,`0)"/>.
            </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 <see cref="M:System.Collections.ObjectModel.Collection`1.SetItem(System.Int32,`0)"/>.
            </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:
            <list type="table">
                <item>
                    <term>A</term>
                    <description>Connection to be closed ASAP.</description>
                </item>
                <item>
                    <term>b</term>
                    <description>The client is waiting in a blocking operation.</description>
                </item>
                <item>
                    <term>c</term>
                    <description>Connection to be closed after writing entire reply.</description>
                </item>
                <item>
                    <term>d</term>
                    <description>A watched keys has been modified - EXEC will fail.</description>
                </item>
                <item>
                    <term>i</term>
                    <description>The client is waiting for a VM I/O (deprecated).</description>
                </item>
                <item>
                    <term>M</term>
                    <description>The client is a primary.</description>
                </item>
                <item>
                    <term>N</term>
                    <description>No specific flag set.</description>
                </item>
                <item>
                    <term>O</term>
                    <description>The client is a replica in MONITOR mode.</description>
                </item>
                <item>
                    <term>P</term>
                    <description>The client is a Pub/Sub subscriber.</description>
                </item>
                <item>
                    <term>r</term>
                    <description>The client is in readonly mode against a cluster node.</description>
                </item>
                <item>
                    <term>S</term>
                    <description>The client is a normal replica server.</description>
                </item>
                <item>
                    <term>u</term>
                    <description>The client is unblocked.</description>
                </item>
                <item>
                    <term>U</term>
                    <description>The client is unblocked.</description>
                </item>
                <item>
                    <term>x</term>
                    <description>The client is in a MULTI/EXEC context.</description>
                </item>
                <item>
                    <term>t</term>
                    <description>The client enabled keys tracking in order to perform client side caching.</description>
                </item>
                <item>
                    <term>R</term>
                    <description>The client tracking target client is invalid.</description>
                </item>
                <item>
                    <term>B</term>
                    <description>The client enabled broadcast tracking mode.</description>
                </item>
            </list>
            </summary>
            <remarks><seealso href="https://redis.io/commands/client-list"/></remarks>
        </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 primary.
            </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="F:StackExchange.Redis.ClientFlags.KeysTracking">
            <summary>
            The client enabled keys tracking in order to perform client side caching.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.TrackingTargetInvalid">
            <summary>
            The client tracking target client is invalid.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ClientFlags.BroadcastTracking">
            <summary>
            The client enabled broadcast tracking mode.
            </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 primary if it is available, but read operations may
            be performed on a replica if no primary 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 primary.
            </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 primary 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 primary 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="F:StackExchange.Redis.CommandStatus.WaitingInBacklog">
            <summary>
            Command is in the backlog, waiting to be processed and written 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 initial 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 receives unsolicited 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.ExpireWhen">
            <summary>
            Specifies when to set the expiry for a key.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExpireWhen.Always">
            <summary>
            Set expiry whether or not there is an existing expiry.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExpireWhen.GreaterThanCurrentExpiry">
            <summary>
            Set expiry only when the new expiry is greater than current one.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExpireWhen.HasExpiry">
            <summary>
            Set expiry only when the key has an existing expiry.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExpireWhen.HasNoExpiry">
            <summary>
            Set expiry only when the key has no expiry.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ExpireWhen.LessThanCurrentExpiry">
            <summary>
            Set expiry only when the new expiry is less than current one
            </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.ListSide">
            <summary>
            Specifies what side of the list to refer to.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ListSide.Left">
            <summary>
            The head of the list.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ListSide.Right">
            <summary>
            The tail of the list.
            </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="F:StackExchange.Redis.Proxy.Envoyproxy">
            <summary>
            Communication via <a href="https://github.com/envoyproxy/envoy">envoyproxy</a>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ProxyExtensions.SupportsDatabases(StackExchange.Redis.Proxy)">
            <summary>
            Whether a proxy supports databases (e.g. database > 0).
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ProxyExtensions.SupportsPubSub(StackExchange.Redis.Proxy)">
            <summary>
            Whether a proxy supports pub/sub.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ProxyExtensions.SupportsServerApi(StackExchange.Redis.Proxy)">
            <summary>
            Whether a proxy supports the <c>ConnectionMultiplexer.GetServer</c>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisCommandExtensions.IsPrimaryOnly(StackExchange.Redis.RedisCommand)">
            <summary>
            Gets whether a given command can be issued only to a primary, or if any server is eligible.
            </summary>
            <param name="command">The <see cref="T:StackExchange.Redis.RedisCommand"/> to check.</param>
            <returns><see langword="true"/> if the command is primary-only, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="T:StackExchange.Redis.RedisType">
            <summary>
            The intrinsic data-types supported by redis.
            </summary>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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 (e.g. A User with a number of fields like name, surname, age, and so forth).
            </summary>
            <remarks><seealso href="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><seealso href="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 primary.
            </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 primaries, 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 primary of all.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ReplicationChangeOptions.ReplicateToOtherEndpoints">
            <summary>
            Issue a REPLICAOF to all other known nodes, making this primary 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.Array">
            <summary>
            Array of results (former Multi-bulk).
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.MultiBulk">
            <summary>
            Multi-bulk replies represent complex results such as arrays.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Null">
            <summary>
            A single null value replacing RESP v2 blob and multi-bulk nulls.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Boolean">
            <summary>
            True or false.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Double">
            <summary>
            A floating point number.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.BigInteger">
            <summary>
            A large number non representable by the <see cref="F:StackExchange.Redis.ResultType.Integer"/> type
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.BlobError">
            <summary>
            Binary safe error code and message.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.VerbatimString">
            <summary>
            A binary safe string that should be displayed to humans without any escaping or filtering. For instance the output of <c>LATENCY DOCTOR</c> in Redis.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Map">
            <summary>
            An unordered collection of key-value pairs. Keys and values can be any other RESP3 type.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Set">
            <summary>
            An unordered collection of N other types.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Attribute">
            <summary>
            Like the <see cref="F:StackExchange.Redis.ResultType.Map"/> type, but the client should keep reading the reply ignoring the attribute type, and return it to the client as additional information.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.ResultType.Push">
            <summary>
            Out of band data. The format is like the <see cref="F:StackExchange.Redis.ResultType.Array"/> type, but the client should just check the first string element,
            stating the type of the out of band data, a call a callback if there is one registered for this specific type of push information.
            Push types are not related to replies, since they are information that the server may push at any time in the connection,
            so the client should keep reading if it is reading the reply of a command.
            </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><seealso href="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><seealso href="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><seealso href="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="F:StackExchange.Redis.ServerType.Envoyproxy">
            <summary>
            Redis cluster via <a href="https://github.com/envoyproxy/envoy">envoyproxy</a>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerTypeExtensions.HasSinglePrimary(StackExchange.Redis.ServerType)">
            <summary>
            Whether a server type can have only a single primary, meaning an election if multiple are found.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerTypeExtensions.SupportsAutoConfigure(StackExchange.Redis.ServerType)">
            <summary>
            Whether a server type supports <see cref="M:StackExchange.Redis.ServerEndPoint.AutoConfigureAsync(StackExchange.Redis.PhysicalConnection,Microsoft.Extensions.Logging.ILogger)"/>.
            </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.SortedSetOrder">
            <summary>
            Enum to manage ordering in sorted sets.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetOrder.ByRank">
            <summary>
            Bases ordering off of the rank in the sorted set. This means that your start and stop inside the sorted set will be some offset into the set.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetOrder.ByScore">
            <summary>
            Bases ordering off of the score in the sorted set. This means your start/stop will be some number which is the score for each member in the sorted set.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetOrder.ByLex">
            <summary>
            Bases ordering off of lexicographical order, this is only appropriate in an instance where all the members of your sorted set are given the same score
            </summary>
        </member>
        <member name="T:StackExchange.Redis.SortedSetWhen">
            <summary>
            Indicates when this operation should be performed (only some variations are legal in a given context).
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetWhen.Always">
            <summary>
            The operation won't be prevented.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetWhen.Exists">
            <summary>
            The operation should only occur when there is an existing value.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetWhen.GreaterThan">
            <summary>
            The operation should only occur when the new score is greater than the current score.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetWhen.LessThan">
            <summary>
            The operation should only occur when the new score is less than the current score.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.SortedSetWhen.NotExists">
            <summary>
            The operation should only occur when there is not an existing value.
            </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.StringIndexType">
            <summary>
            Indicates if we index into a string based on bits or bytes.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StringIndexType.Byte">
            <summary>
            Indicates the index is the number of bytes into a string.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.StringIndexType.Bit">
            <summary>
            Indicates the index is the number of bits into a string.
            </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 exponentially grow up to.</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="M:StackExchange.Redis.Format.TryParseEndPoint(System.String,System.Net.EndPoint@)">
            <summary>
            <para>
            Adapted from IPEndPointParser in Microsoft.AspNetCore
            Link: <see href="https://github.com/aspnet/BasicMiddleware/blob/f320511b63da35571e890d53f3906c7761cd00a1/src/Microsoft.AspNetCore.HttpOverrides/Internal/IPEndPointParser.cs#L8"/>
            </para>
            <para>
            Copyright (c) .NET Foundation. All rights reserved.
            Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
            </para>
            </summary>
            <exception cref="T:System.PlatformNotSupportedException">If Unix sockets are attempted but not supported.</exception>
        </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 asynchronous - 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 connecting.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.IConnectionMultiplexer.IncludeDetailInExceptions">
            <summary>
            Should exceptions include identifiable details? (key names, additional <see cref="P:System.Exception.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 primary/replica changes.
            </summary>
        </member>
        <member name="E:StackExchange.Redis.IConnectionMultiplexer.ServerMaintenanceEvent">
            <summary>
            Raised when server indicates a maintenance event is going to happen.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.IConnectionMultiplexer.GetEndPoints(System.Boolean)">
            <summary>
            Gets all endpoints defined on the multiplexer.
            </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.GetServers">
            <summary>
            Obtain configuration APIs for all servers in this multiplexer.
            </summary>
        </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 <see cref="M:System.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 commands 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 commands 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="M:StackExchange.Redis.IConnectionMultiplexer.AddLibraryNameSuffix(System.String)">
            <summary>
            Append a usage-specific modifier to the advertised library name; suffixes are de-duplicated
            and sorted alphabetically (so adding 'a', 'b' and 'a' will result in suffix '-a-b').
            Connections will be updated as necessary (RESP2 subscription
            connections will not show updates until those connections next connect).
            </summary>
        </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><seealso href="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><seealso href="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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><seealso href="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><see langword="true"/> if the member existed in the sorted set and was removed, else <see langword="false"/>.</returns>
            <remarks><seealso href="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 <see langword="null"/> if one or both the elements are missing.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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 <c>GEOADD</c>, 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><seealso href="https://redis.io/commands/georadius"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoSearch(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of the geo-encoded sorted set stored at <paramref name="key"/> bounded by the provided
            <paramref name="shape"/>, centered at the provided set <paramref name="member"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The set member to use as the center of the shape.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The results found within the shape, if any.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearch"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoSearch(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of the geo-encoded sorted set stored at <paramref name="key"/> bounded by the provided
            <paramref name="shape"/>, centered at the point provided by the <paramref name="longitude"/> and <paramref name="latitude"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of the center point.</param>
            <param name="latitude">The latitude of the center point.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The results found within the shape, if any.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearch"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoSearchAndStore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Stores the members of the geo-encoded sorted set stored at <paramref name="sourceKey"/> bounded by the provided
            <paramref name="shape"/>, centered at the provided set <paramref name="member"/>.
            </summary>
            <param name="sourceKey">The key of the set.</param>
            <param name="destinationKey">The key to store the result at.</param>
            <param name="member">The set member to use as the center of the shape.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="storeDistances">If set to true, the resulting set will be a regular sorted-set containing only distances, rather than a geo-encoded sorted-set.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The size of the set stored at <paramref name="destinationKey"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearchstore"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.GeoSearchAndStore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Stores the members of the geo-encoded sorted set stored at <paramref name="sourceKey"/> bounded by the provided
            <paramref name="shape"/>, centered at the point provided by the <paramref name="longitude"/> and <paramref name="latitude"/>.
            </summary>
            <param name="sourceKey">The key of the set.</param>
            <param name="destinationKey">The key to store the result at.</param>
            <param name="longitude">The longitude of the center point.</param>
            <param name="latitude">The latitude of the center point.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="storeDistances">If set to true, the resulting set will be a regular sorted-set containing only distances, rather than a geo-encoded sorted-set.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The size of the set stored at <paramref name="destinationKey"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearchstore"/></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 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>
            <para>The range of values supported by HINCRBY is limited to 64 bit signed integers.</para>
            <para><seealso href="https://redis.io/commands/hincrby"/></para>
            </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>
            <para>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</para>
            <para><seealso href="https://redis.io/commands/hincrbyfloat"/></para>
            </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><see langword="true"/> if the field was removed.</returns>
            <remarks><seealso href="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><seealso href="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><see langword="true"/> if the hash contains field, <see langword="false"/> if the hash does not contain field, or key does not exist.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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 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>
            <para>The range of values supported by <c>HINCRBY</c> is limited to 64 bit signed integers.</para>
            <para><seealso href="https://redis.io/commands/hincrby"/></para>
            </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>
            <para>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</para>
            <para><seealso href="https://redis.io/commands/hincrbyfloat"/></para>
            </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><seealso href="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><seealso href="https://redis.io/commands/hlen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashRandomField(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a random field from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A random hash field name or <see cref="P:StackExchange.Redis.RedisValue.Null"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashRandomFields(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets <paramref name="count"/> field names from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="count">The number of fields to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of hash field names of size of at most <paramref name="count"/>, or <see cref="M:System.Array.Empty``1"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.HashRandomFieldsWithValues(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets <paramref name="count"/> field names and values from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="count">The number of fields to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of hash entries of size of at most <paramref name="count"/>, or <see cref="M:System.Array.Empty``1"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></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><seealso href="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 <see cref="T:StackExchange.Redis.IScanningCursor"/>.
            </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><seealso href="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><seealso href="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><see langword="true"/> if field is a new field in the hash and value was set, <see langword="false"/> if field already exists in the hash and the value was updated.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/hset"/>,
            <seealso href="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><seealso href="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><seealso href="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><see langword="true"/> if at least 1 HyperLogLog internal register was altered, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><see langword="true"/> if at least 1 HyperLogLog internal register was altered, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/pfmerge"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.IdentifyEndpoint(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicate 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.KeyCopy(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int32,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Copies the value from the <paramref name="sourceKey"/> to the specified <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The key of the source value to copy.</param>
            <param name="destinationKey">The destination key to copy the source to.</param>
            <param name="destinationDatabase">The database ID to store <paramref name="destinationKey"/> in. If default (-1), current database is used.</param>
            <param name="replace">Whether to overwrite an existing values at <paramref name="destinationKey"/>. If <see langword="false"/> and the key exists, the copy will not succeed.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if key was copied. <see langword="false"/> if key was not copied.</returns>
            <remarks><seealso href="https://redis.io/commands/copy"/></remarks>
        </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><see langword="true"/> if the key was removed.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/del"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/del"/>,
            <seealso href="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><seealso href="https://redis.io/commands/dump"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyEncoding(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the internal encoding for the Redis object stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key to dump.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The Redis encoding for the value or <see langword="null"/> is the key does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/object-encoding"/></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><see langword="true"/> if the key exists. <see langword="false"/> if the key does not exist.</returns>
            <remarks><seealso href="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><seealso href="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 <paramref name="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><see langword="true"/> if the timeout was set. <see langword="false"/> 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.
            <para>
            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.
            </para>
            <para>
            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.
            </para>
            <para>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>,
            <seealso href="https://redis.io/commands/persist"/>
            </para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpire(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.ExpireWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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="when">In Redis 7+, we can choose under which condition the expiration will be set using <see cref="T:StackExchange.Redis.ExpireWhen"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was set. <see langword="false"/> if key does not exist or the timeout could not be set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpire(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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><see langword="true"/> if the timeout was set. <see langword="false"/> 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.
            <para>
            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.
            </para>
            <para>
            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.
            </para>
            <para>
            <seealso href="https://redis.io/commands/expireat"/>,
            <seealso href="https://redis.io/commands/pexpireat"/>,
            <seealso href="https://redis.io/commands/persist"/>
            </para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpire(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.ExpireWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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="when">In Redis 7+, we choose under which condition the expiration will be set using <see cref="T:StackExchange.Redis.ExpireWhen"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was set. <see langword="false"/> if key does not exist or the timeout could not be set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyExpireTime(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the absolute time at which the given <paramref name="key"/> will expire, if it exists and has an expiration.
            </summary>
            <param name="key">The key to get the expiration for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The time at which the given key will expire, or <see langword="null"/> if the key does not exist or has no associated expiration time.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expiretime"/>,
            <seealso href="https://redis.io/commands/pexpiretime"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyFrequency(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the logarithmic access frequency counter of the object stored at <paramref name="key"/>.
            The command is only available when the <c>maxmemory-policy</c> configuration directive is set to
            one of <see href="https://redis.io/docs/manual/eviction/#the-new-lfu-mode">the LFU policies</see>.
            </summary>
            <param name="key">The key to get a frequency count for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of logarithmic access frequency counter, (<see langword="null"/> if the key does not exist).</returns>
            <remarks><seealso href="https://redis.io/commands/object-freq"/></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><seealso href="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><see langword="true"/> if key was moved. <see langword="false"/> if key was not moved.</returns>
            <remarks><seealso href="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 persist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was removed. <see langword="false"/> if key does not exist or does not have an associated timeout.</returns>
            <remarks><seealso href="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><seealso href="https://redis.io/commands/randomkey"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyRefCount(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the reference count of the object stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key to get a reference count for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of references (<see langword="Null"/> if the key does not exist).</returns>
            <remarks><seealso href="https://redis.io/commands/object-refcount"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.KeyRename(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Renames <paramref name="key"/> to <paramref name="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><see langword="true"/> if the key was renamed, <see langword="false"/> otherwise.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/rename"/>,
            <seealso href="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 <paramref name="expiry"/> 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><seealso href="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><seealso href="https://redis.io/commands/ttl"/></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><see langword="true"/> if the key was touched, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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 the specified <paramref name="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><seealso href="https://redis.io/commands/touch"/></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><seealso href="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 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 get 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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/lpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPop(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns count elements from the head of the list stored at key.
            If the list contains less than count elements, removes and returns the number of elements in the list.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="count">The number of elements to remove</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Array of values that were popped, or nil if the key doesn't exist.</returns>
            <remarks><seealso href="https://redis.io/commands/lpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListLeftPop(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns at most <paramref name="count"/> elements from the first non-empty list in <paramref name="keys"/>.
            Starts on the left side of the list.
            </summary>
            <param name="keys">The keys to look through for elements to pop.</param>
            <param name="count">The maximum number of elements to pop from the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A span of contiguous elements from the list, or <see cref="P:StackExchange.Redis.ListPopResult.Null"/> if no non-empty lists are found.</returns>
            <remarks><seealso href="https://redis.io/commands/lmpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListPosition(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Scans through the list stored at <paramref name="key"/> looking for <paramref name="element"/>, returning the 0-based
            index of the first matching element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="element">The element to search for.</param>
            <param name="rank">The rank of the first element to return, within the sub-list of matching indexes in the case of multiple matches.</param>
            <param name="maxLength">The maximum number of elements to scan through before stopping, defaults to 0 (a full scan of the list.)</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The 0-based index of the first matching element, or -1 if not found.</returns>
            <remarks><seealso href="https://redis.io/commands/lpos"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListPositions(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Scans through the list stored at <paramref name="key"/> looking for <paramref name="count"/> instances of <paramref name="element"/>, returning the 0-based
            indexes of any matching elements.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="element">The element to search for.</param>
            <param name="count">The number of matches to find. A count of 0 will return the indexes of all occurrences of the element.</param>
            <param name="rank">The rank of the first element to return, within the sub-list of matching indexes in the case of multiple matches.</param>
            <param name="maxLength">The maximum number of elements to scan through before stopping, defaults to 0 (a full scan of the list.)</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of at most <paramref name="count"/> of indexes of matching elements. If none are found, and empty array is returned.</returns>
            <remarks><seealso href="https://redis.io/commands/lpos"/></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>
            <seealso href="https://redis.io/commands/lpush"/>,
            <seealso href="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 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>
            <seealso href="https://redis.io/commands/lpush"/>,
            <seealso href="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 <c>LPUSH mylist a b c</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><seealso href="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><seealso href="https://redis.io/commands/llen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListMove(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.ListSide,StackExchange.Redis.ListSide,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns and removes the first or last element of the list stored at <paramref name="sourceKey"/>, and pushes the element
            as the first or last element of the list stored at <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The key of the list to remove from.</param>
            <param name="destinationKey">The key of the list to move to.</param>
            <param name="sourceSide">What side of the <paramref name="sourceKey"/> list to remove from.</param>
            <param name="destinationSide">What side of the <paramref name="destinationKey"/> list to move to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped and pushed or <see cref="P:StackExchange.Redis.RedisValue.Null"/> if there is no element to move.</returns>
            <remarks><seealso href="https://redis.io/commands/lmove"/></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><seealso href="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:
            <list type="bullet">
                <item>count &gt; 0: Remove elements equal to value moving from head to tail.</item>
                <item>count &lt; 0: Remove elements equal to value moving from tail to head.</item>
                <item>count = 0: Remove all elements equal to value.</item>
            </list>
            </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><seealso href="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><seealso href="https://redis.io/commands/rpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPop(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns count elements from the end the list stored at key.
            If the list contains less than count elements, removes and returns the number of elements in the list.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="count">The number of elements to pop</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Array of values that were popped, or nil if the key doesn't exist.</returns>
            <remarks><seealso href="https://redis.io/commands/rpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ListRightPop(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns at most <paramref name="count"/> elements from the first non-empty list in <paramref name="keys"/>.
            Starts on the right side of the list.
            </summary>
            <param name="keys">The keys to look through for elements to pop.</param>
            <param name="count">The maximum number of elements to pop from the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A span of contiguous elements from the list, or <see cref="P:StackExchange.Redis.ListPopResult.Null"/> if no non-empty lists are found.</returns>
            <remarks><seealso href="https://redis.io/commands/lmpop"/></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><seealso href="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>
            <seealso href="https://redis.io/commands/rpush"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/rpush"/>,
            <seealso href="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 <c>RPUSH mylist a b c</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><seealso href="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 <see cref="M:StackExchange.Redis.IDatabase.ListGetByIndex(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)"/>.
            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><seealso href="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: <c>LTRIM foobar 0 2</c> 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><seealso href="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><see langword="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 that must match.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the lock was successfully released, <see langword="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><see langword="true"/> if the lock was successfully taken, <see langword="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 *on the destination server*,
            note that this doesn't mean much in a cluster as clients can get the message through other nodes.
            </returns>
            <remarks><seealso href="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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </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>
            <seealso href="https://redis.io/commands/eval"/>,
            <seealso href="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>
            Be aware that this method is not resilient to Redis server restarts. Use <see cref="M:StackExchange.Redis.IDatabase.ScriptEvaluate(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)"/> instead.
            <seealso href="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><seealso href="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><seealso href="https://redis.io/commands/eval"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluateReadOnly(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Read-only variant of the EVAL command that cannot execute commands that modify data, 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>
            <seealso href="https://redis.io/commands/eval_ro"/>,
            <seealso href="https://redis.io/commands/evalsha_ro"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.ScriptEvaluateReadOnly(System.Byte[],StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Read-only variant of the EVALSHA command that cannot execute commands that modify data, 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><seealso href="https://redis.io/commands/evalsha_ro"/></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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><seealso href="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>
            <seealso href="https://redis.io/commands/sunion"/>,
            <seealso href="https://redis.io/commands/sinter"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunion"/>,
            <seealso href="https://redis.io/commands/sinter"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunionstore"/>,
            <seealso href="https://redis.io/commands/sinterstore"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunionstore"/>,
            <seealso href="https://redis.io/commands/sinterstore"/>,
            <seealso href="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 whether <paramref name="value"/> is a member of the set stored at <paramref name="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>
            <see langword="true"/> if the element is a member of the set.
            <see langword="false"/> if the element is not a member of the set, or if key does not exist.
            </returns>
            <remarks><seealso href="https://redis.io/commands/sismember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetContains(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns whether each of <paramref name="values"/> is a member of the set stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The members to check for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>
            <see langword="true"/> if the element is a member of the set.
            <see langword="false"/> if the element is not a member of the set, or if key does not exist.
            </returns>
            <remarks><seealso href="https://redis.io/commands/smismember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SetIntersectionLength(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
              <para>
                Returns the set cardinality (number of elements) of the intersection between the sets stored at the given <paramref name="keys"/>.
              </para>
              <para>
                If the intersection cardinality reaches <paramref name="limit"/> partway through the computation,
                the algorithm will exit and yield <paramref name="limit"/> as the cardinality.
              </para>
            </summary>
            <param name="keys">The keys of the sets.</param>
            <param name="limit">The number of elements to check (defaults to 0 and means unlimited).</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><seealso href="https://redis.io/commands/scard"/></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><seealso href="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><seealso href="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>
            <see langword="true"/> if the element is moved.
            <see langword="false"/> if the element is not a member of source and no operation was performed.
            </returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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 <paramref name="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 <see cref="P:StackExchange.Redis.RedisValue.Null"/> when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="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 number 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 <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="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><see langword="true"/> if the specified member was already present in the set, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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 a 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><seealso href="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 <see cref="T:StackExchange.Redis.IScanningCursor"/>.
            </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><seealso href="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).
            Uses <a href="https://redis.io/commands/sort_ro">SORT_RO</a> when possible.
            </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>
            <seealso href="https://redis.io/commands/sort"/>,
            <seealso href="https://redis.io/commands/sort_ro"/>
            </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><seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,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><see langword="true"/> if the value was added. <see langword="false"/> if it already existed (the score is still updated).</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,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><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetCombine(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation for multiple sorted sets (optionally using per-set <paramref name="weights"/>),
            optionally performing a specific aggregation (defaults to <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with weights or aggregation.
            </summary>
            <param name="operation">The operation to perform.</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 <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The resulting sorted set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunion"/>,
            <seealso href="https://redis.io/commands/zinter"/>,
            <seealso href="https://redis.io/commands/zdiff"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetCombineWithScores(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation for multiple sorted sets (optionally using per-set <paramref name="weights"/>),
            optionally performing a specific aggregation (defaults to <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with weights or aggregation.
            </summary>
            <param name="operation">The operation to perform.</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 <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The resulting sorted set with scores.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunion"/>,
            <seealso href="https://redis.io/commands/zinter"/>,
            <seealso href="https://redis.io/commands/zdiff"/>
            </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).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with aggregation.
            </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>
            <returns>The number of elements in the resulting sorted set at destination.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunionstore"/>,
            <seealso href="https://redis.io/commands/zinterstore"/>,
            <seealso href="https://redis.io/commands/zdiffstore"/>
            </remarks>
        </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).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with aggregation.
            </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>
            <returns>The number of elements in the resulting sorted set at destination.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunionstore"/>,
            <seealso href="https://redis.io/commands/zinterstore"/>,
            <seealso href="https://redis.io/commands/zdiffstore"/>
            </remarks>
        </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><seealso href="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><seealso href="https://redis.io/commands/zincrby"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetIntersectionLength(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the cardinality of the intersection of the sorted sets at <paramref name="keys"/>.
            </summary>
            <param name="keys">The keys of the sorted sets.</param>
            <param name="limit">If the intersection cardinality reaches <paramref name="limit"/> partway through the computation, the algorithm will exit and yield <paramref name="limit"/> as the cardinality (defaults to 0 meaning unlimited).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting intersection.</returns>
            <remarks><seealso href="https://redis.io/commands/zintercard"/></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><seealso href="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><seealso href="https://redis.io/commands/zlexcount"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRandomMember(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns a random element from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected element, or <see cref="P:StackExchange.Redis.RedisValue.Null"/> when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRandomMembers(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array of random elements from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">
              <para>
                If the provided count argument is positive, returns an array of distinct elements.
                The array's length is either <paramref name="count"/> or the sorted set's cardinality (ZCARD), whichever is lower.
              </para>
              <para>
                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 number of returned elements is the absolute value of the specified count.
              </para>
            </param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected elements, or an empty array when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRandomMembersWithScores(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array of random elements from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">
              <para>
                If the provided count argument is positive, returns an array of distinct elements.
                The array's length is either <paramref name="count"/> or the sorted set's cardinality (ZCARD), whichever is lower.
              </para>
              <para>
                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 number of returned elements is the absolute value of the specified count.
              </para>
            </param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected elements with scores, or an empty array when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></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>
            <seealso href="https://redis.io/commands/zrange"/>,
            <seealso href="https://redis.io/commands/zrevrange"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetRangeAndStore(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.SortedSetOrder,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Nullable{System.Int64},StackExchange.Redis.CommandFlags)">
            <summary>
            Takes the specified range of elements in the sorted set of the <paramref name="sourceKey"/>
            and stores them in a new sorted set at the <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The sorted set to take the range from.</param>
            <param name="destinationKey">Where the resulting set will be stored.</param>
            <param name="start">The starting point in the sorted set. If <paramref name="sortedSetOrder"/> is <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/>, this should be a string.</param>
            <param name="stop">The stopping point in the range of the sorted set. If <paramref name="sortedSetOrder"/> is <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/>, this should be a string.</param>
            <param name="sortedSetOrder">The ordering criteria to use for the range. Choices are <see cref="F:StackExchange.Redis.SortedSetOrder.ByRank"/>, <see cref="F:StackExchange.Redis.SortedSetOrder.ByScore"/>, and <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/> (defaults to <see cref="F:StackExchange.Redis.SortedSetOrder.ByRank"/>).</param>
            <param name="exclude">Whether to exclude <paramref name="start"/> and <paramref name="stop"/> from the range check (defaults to both inclusive).</param>
            <param name="order">
            The direction to consider the <paramref name="start"/> and <paramref name="stop"/> in.
            If <see cref="F:StackExchange.Redis.Order.Ascending"/>, the <paramref name="start"/> must be smaller than the <paramref name="stop"/>.
            If <see cref="F:StackExchange.Redis.Order.Descending"/>, <paramref name="stop"/> must be smaller than <paramref name="start"/>.
            </param>
            <param name="skip">The number of elements into the sorted set to skip. Note: this iterates after sorting so incurs O(n) cost for large values.</param>
            <param name="take">The maximum number of elements to pull into the new (<paramref name="destinationKey"/>) set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality of (number of elements in) the newly created sorted set.</returns>
            <remarks><seealso href="https://redis.io/commands/zrangestore"/></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>
            <seealso href="https://redis.io/commands/zrange"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zrangebyscore"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zrangebyscore"/>,
            <seealso href="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>
            <returns>List of elements in the specified score range.</returns>
            <remarks><seealso href="https://redis.io/commands/zrangebylex"/></remarks>
        </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>
            <returns>List of elements in the specified score range.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zrangebylex"/>,
            <seealso href="https://redis.io/commands/zrevrangebylex"/>
            </remarks>
        </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, <see langword="null"/>.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zrank"/>,
            <seealso href="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><see langword="true"/> if the member existed in the sorted set and was removed. <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/zscore"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetScores(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the scores of members in the sorted set at <paramref name="key"/>.
            If a member does not exist in the sorted set, or key does not exist, <see langword="null"/> is returned.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="members">The members to get a score for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>
            The scores of the members in the same order as the <paramref name="members"/> array.
            If a member does not exist in the set, <see langword="null"/> is returned.
            </returns>
            <remarks><seealso href="https://redis.io/commands/zmscore"/></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>
            <seealso href="https://redis.io/commands/zpopmin"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zpopmin"/>,
            <seealso href="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 up to <paramref name="count"/> entries from the first non-empty sorted set in <paramref name="keys"/>.
            Returns <see cref="P:StackExchange.Redis.SortedSetPopResult.Null"/> if none of the sets exist or contain any elements.
            </summary>
            <param name="keys">The keys to check.</param>
            <param name="count">The maximum number of records to pop out of the sorted set.</param>
            <param name="order">The order to sort by when popping items out of the set.</param>
            <param name="flags">The flags to use for the operation.</param>
            <returns>A contiguous collection of sorted set entries with the key they were popped from, or <see cref="P:StackExchange.Redis.SortedSetPopResult.Null"/> if no non-empty sorted sets are found.</returns>
            <remarks><seealso href="https://redis.io/commands/zmpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetUpdate(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Same as <see cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" /> but return the number of the elements changed.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add/update to the sorted set.</param>
            <param name="score">The score for the member to add/update 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 changed.</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.SortedSetUpdate(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Same as <see cref="M:StackExchange.Redis.IDatabase.SortedSetAdd(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" /> but return the number of the elements changed.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and values to add/update 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 changed.</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/xadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAutoClaim(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer.
            Messages that have been idle for more than <paramref name="minIdleTimeInMs"/> will be claimed.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the messages(s).</param>
            <param name="minIdleTimeInMs">The minimum idle time threshold for pending messages to be claimed.</param>
            <param name="startAtId">The starting ID to scan for pending messages that have an idle time greater than <paramref name="minIdleTimeInMs"/>.</param>
            <param name="count">The upper limit of the number of entries that the command attempts to claim. If <see langword="null"/>, Redis will default the value to 100.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamAutoClaimResult"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/xautoclaim"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StreamAutoClaimIdsOnly(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer.
            Messages that have been idle for more than <paramref name="minIdleTimeInMs"/> will be claimed.
            The result will contain the claimed message IDs instead of a <see cref="T:StackExchange.Redis.StreamEntry"/> instance.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the messages(s).</param>
            <param name="minIdleTimeInMs">The minimum idle time threshold for pending messages to be claimed.</param>
            <param name="startAtId">The starting ID to scan for pending messages that have an idle time greater than <paramref name="minIdleTimeInMs"/>.</param>
            <param name="count">The upper limit of the number of entries that the command attempts to claim. If <see langword="null"/>, Redis will default the value to 100.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamAutoClaimIdsOnlyResult"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/xautoclaim"/></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><seealso href="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><seealso href="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><see langword="true"/> if successful, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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="M:StackExchange.Redis.IDatabase.StreamConsumerInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/> for each of the consumer group's consumers.</returns>
            <remarks><seealso href="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><see langword="true"/> if the group was created, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><see langword="true"/> if the group was created, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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><see langword="true"/> if deleted, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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="M:StackExchange.Redis.IDatabase.StreamGroupInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)"/> for each of the stream's groups.</returns>
            <remarks><seealso href="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="M:StackExchange.Redis.IDatabase.StreamInfo(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)"/> instance with information about the stream.</returns>
            <remarks><seealso href="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><seealso href="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.
            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><seealso href="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><seealso href="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"/> will 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><seealso href="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 an instance of <see cref="T:StackExchange.Redis.StreamEntry"/> for each message returned.</returns>
            <remarks>
            <para>Equivalent of calling <c>XREAD COUNT num STREAMS key id</c>.</para>
            <para><seealso href="https://redis.io/commands/xread"/></para>
            </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>
            <para>Equivalent of calling <c>XREAD COUNT num STREAMS key1 key2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xread"/></para>
            </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 <see langword="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><seealso href="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 <see langword="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><seealso href="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>
            <para>Equivalent of calling <c>XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xreadgroup"/></para>
            </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>
            <para>Equivalent of calling <c>XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xreadgroup"/></para>
            </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><seealso href="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><seealso href="https://redis.io/commands/append"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitCount(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.StringBitCount(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitCount(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,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="indexType">In Redis 7+, we can choose if <paramref name="start"/> and <paramref name="end"/> specify a bit index or byte index (defaults to <see cref="F:StackExchange.Redis.StringIndexType.Byte"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of bits set to 1.</returns>
            <remarks><seealso href="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 <paramref name="destination"/>.
            </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><seealso href="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 <paramref name="destination"/>.
            </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><seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.StringBitPosition(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringBitPosition(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,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.
            A <paramref name="start"/> and <paramref name="end"/> may be specified - these are in bytes, not bits.
            <paramref name="start"/> and <paramref name="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="indexType">In Redis 7+, we can choose if <paramref name="start"/> and <paramref name="end"/> specify a bit index or byte index (defaults to <see cref="F:StackExchange.Redis.StringIndexType.Byte"/>).</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><seealso href="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>
            <seealso href="https://redis.io/commands/decrby"/>,
            <seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/getset"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetSetExpiry(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Gets the value of <paramref name="key"/> and update its (relative) expiry.
            If the key does not exist, the result will be <see cref="P:StackExchange.Redis.RedisValue.Null"/>.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="expiry">The expiry to set. <see langword="null"/> will remove expiry.</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><seealso href="https://redis.io/commands/getex"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetSetExpiry(StackExchange.Redis.RedisKey,System.DateTime,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets the value of <paramref name="key"/> and update its (absolute) expiry.
            If the key does not exist, the result will be <see cref="P:StackExchange.Redis.RedisValue.Null"/>.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="expiry">The exact date and time to expire at. <see cref="F:System.DateTime.MaxValue"/> will remove expiry.</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><seealso href="https://redis.io/commands/getex"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringGetDelete(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key and delete the 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><seealso href="https://redis.io/commands/getdelete"/></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><seealso href="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>
            <seealso href="https://redis.io/commands/incrby"/>,
            <seealso href="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><seealso href="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><seealso href="https://redis.io/commands/strlen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringLongestCommonSubsequence(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning a string containing the common sequence.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A string (sequence of characters) of the LCS match.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringLongestCommonSubsequenceLength(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning the legnth of the common sequence.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the LCS match.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringLongestCommonSubsequenceWithMatches(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning a list of all common sequences.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="minLength">Can be used to restrict the list of matches to the ones of a given minimum length.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The result of LCS algorithm, based on the given parameters.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,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="keepTtl">Whether to maintain the existing key's TTL (KEEPTTL flag).</param>
            <param name="when">Which condition to set the value under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the string was set, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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 <see cref="F:StackExchange.Redis.When.NotExists"/> 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 (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the keys were set, <see langword="false"/> otherwise.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/mset"/>,
            <seealso href="https://redis.io/commands/msetnx"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSetAndGet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the previous value (if any) stored at <paramref name="key"/>.
            </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 (defaults to <see cref="F:StackExchange.Redis.When.Always"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The previous value stored at <paramref name="key"/>, or nil when key did not exist.</returns>
            <remarks>
            <para>This method uses the <c>SET</c> command with the <c>GET</c> option introduced in Redis 6.2.0 instead of the deprecated <c>GETSET</c> command.</para>
            <para><seealso href="https://redis.io/commands/set"/></para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabase.StringSetAndGet(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the previous value (if any) stored at <paramref name="key"/>.
            </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="keepTtl">Whether to maintain the existing key's TTL (KEEPTTL flag).</param>
            <param name="when">Which condition to set the value under (defaults to <see cref="F:StackExchange.Redis.When.Always"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The previous value stored at <paramref name="key"/>, or nil when key did not exist.</returns>
            <remarks>This method uses the SET command with the GET option introduced in Redis 6.2.0 instead of the deprecated GETSET command.</remarks>
            <remarks><seealso href="https://redis.io/commands/set"/></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><seealso href="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><seealso href="https://redis.io/commands/setrange"/></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><seealso href="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><seealso href="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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><seealso href="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><see langword="true"/> if the member existed in the sorted set and was removed, else <see langword="false"/>.</returns>
            <remarks><seealso href="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 <see langword="null"/> if one or both the elements are missing.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/georadius"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoSearchAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of the geo-encoded sorted set stored at <paramref name="key"/> bounded by the provided
            <paramref name="shape"/>, centered at the provided set <paramref name="member"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="member">The set member to use as the center of the shape.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The results found within the shape, if any.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearch"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoSearchAsync(StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},StackExchange.Redis.GeoRadiusOptions,StackExchange.Redis.CommandFlags)">
            <summary>
            Return the members of the geo-encoded sorted set stored at <paramref name="key"/> bounded by the provided
            <paramref name="shape"/>, centered at the point provided by the <paramref name="longitude"/> and <paramref name="latitude"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="longitude">The longitude of the center point.</param>
            <param name="latitude">The latitude of the center point.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="options">The search options to use.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The results found within the shape, if any.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearch"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoSearchAndStoreAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Stores the members of the geo-encoded sorted set stored at <paramref name="sourceKey"/> bounded by the provided
            <paramref name="shape"/>, centered at the provided set <paramref name="member"/>.
            </summary>
            <param name="sourceKey">The key of the set.</param>
            <param name="destinationKey">The key to store the result at.</param>
            <param name="member">The set member to use as the center of the shape.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="storeDistances">If set to true, the resulting set will be a regular sorted-set containing only distances, rather than a geo-encoded sorted-set.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The size of the set stored at <paramref name="destinationKey"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearchstore"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.GeoSearchAndStoreAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Double,System.Double,StackExchange.Redis.GeoSearchShape,System.Int32,System.Boolean,System.Nullable{StackExchange.Redis.Order},System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Stores the members of the geo-encoded sorted set stored at <paramref name="sourceKey"/> bounded by the provided
            <paramref name="shape"/>, centered at the point provided by the <paramref name="longitude"/> and <paramref name="latitude"/>.
            </summary>
            <param name="sourceKey">The key of the set.</param>
            <param name="destinationKey">The key to store the result at.</param>
            <param name="longitude">The longitude of the center point.</param>
            <param name="latitude">The latitude of the center point.</param>
            <param name="shape">The shape to use to bound the geo search.</param>
            <param name="count">The maximum number of results to pull back.</param>
            <param name="demandClosest">Whether or not to terminate the search after finding <paramref name="count"/> results. Must be true of count is -1.</param>
            <param name="order">The order to sort by (defaults to unordered).</param>
            <param name="storeDistances">If set to true, the resulting set will be a regular sorted-set containing only distances, rather than a geo-encoded sorted-set.</param>
            <param name="flags">The flags for this operation.</param>
            <returns>The size of the set stored at <paramref name="destinationKey"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/geosearchstore"/></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 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>
            <para>The range of values supported by HINCRBY is limited to 64 bit signed integers.</para>
            <para><seealso href="https://redis.io/commands/hincrby"/></para>
            </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>
            <para>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</para>
            <para><seealso href="https://redis.io/commands/hincrbyfloat"/></para>
            </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><see langword="true"/> if the field was removed.</returns>
            <remarks><seealso href="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><seealso href="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><see langword="true"/> if the hash contains field, <see langword="false"/> if the hash does not contain field, or key does not exist.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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 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>
            <para>The range of values supported by <c>HINCRBY</c> is limited to 64 bit signed integers.</para>
            <para><seealso href="https://redis.io/commands/hincrby"/></para>
            </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>
            <para>The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation.</para>
            <para><seealso href="https://redis.io/commands/hincrbyfloat"/></para>
            </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><seealso href="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><seealso href="https://redis.io/commands/hlen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashRandomFieldAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a random field from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A random hash field name or <see cref="P:StackExchange.Redis.RedisValue.Null"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashRandomFieldsAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets <paramref name="count"/> field names from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="count">The number of fields to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of hash field names of size of at most <paramref name="count"/>, or <see cref="M:System.Array.Empty``1"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.HashRandomFieldsWithValuesAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets <paramref name="count"/> field names and values from the hash at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the hash.</param>
            <param name="count">The number of fields to return.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of hash entries of size of at most <paramref name="count"/>, or <see cref="M:System.Array.Empty``1"/> if the hash does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/hrandfield"/></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 <see cref="T:StackExchange.Redis.IScanningCursor"/>.
            </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><seealso href="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><seealso href="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><see langword="true"/> if field is a new field in the hash and value was set, <see langword="false"/> if field already exists in the hash and the value was updated.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/hset"/>,
            <seealso href="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><seealso href="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><seealso href="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><see langword="true"/> if at least 1 HyperLogLog internal register was altered, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><see langword="true"/> if at least 1 HyperLogLog internal register was altered, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/pfmerge"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.IdentifyEndpointAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicate 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.KeyCopyAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int32,System.Boolean,StackExchange.Redis.CommandFlags)">
            <summary>
            Copies the value from the <paramref name="sourceKey"/> to the specified <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The key of the source value to copy.</param>
            <param name="destinationKey">The destination key to copy the source to.</param>
            <param name="destinationDatabase">The database ID to store <paramref name="destinationKey"/> in. If default (-1), current database is used.</param>
            <param name="replace">Whether to overwrite an existing values at <paramref name="destinationKey"/>. If <see langword="false"/> and the key exists, the copy will not succeed.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if key was copied. <see langword="false"/> if key was not copied.</returns>
            <remarks><seealso href="https://redis.io/commands/copy"/></remarks>
        </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><see langword="true"/> if the key was removed.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/del"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/del"/>,
            <seealso href="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><seealso href="https://redis.io/commands/dump"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyEncodingAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the internal encoding for the Redis object stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key to dump.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The Redis encoding for the value or <see langword="null"/> is the key does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/object-encoding"/></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><see langword="true"/> if the key exists. <see langword="false"/> if the key does not exist.</returns>
            <remarks><seealso href="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><seealso href="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 <paramref name="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><see langword="true"/> if the timeout was set. <see langword="false"/> 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.
            <para>
            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.
            </para>
            <para>
            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.
            </para>
            <para>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>,
            <seealso href="https://redis.io/commands/persist"/>
            </para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireAsync(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.ExpireWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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="when">In Redis 7+, we choose under which condition the expiration will be set using <see cref="T:StackExchange.Redis.ExpireWhen"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was set. <see langword="false"/> if key does not exist or the timeout could not be set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireAsync(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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><see langword="true"/> if the timeout was set. <see langword="false"/> 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.
            <para>
            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.
            </para>
            <para>
            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.
            </para>
            <para>
            <seealso href="https://redis.io/commands/expireat"/>,
            <seealso href="https://redis.io/commands/pexpireat"/>,
            <seealso href="https://redis.io/commands/persist"/>
            </para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireAsync(StackExchange.Redis.RedisKey,System.Nullable{System.DateTime},StackExchange.Redis.ExpireWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Set a timeout on <paramref name="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="when">In Redis 7+, we choose under which condition the expiration will be set using <see cref="T:StackExchange.Redis.ExpireWhen"/>.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was set. <see langword="false"/> if key does not exist or the timeout could not be set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expire"/>,
            <seealso href="https://redis.io/commands/pexpire"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyExpireTimeAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the absolute time at which the given <paramref name="key"/> will expire, if it exists and has an expiration.
            </summary>
            <param name="key">The key to get the expiration for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The time at which the given key will expire, or <see langword="null"/> if the key does not exist or has no associated expiration time.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/expiretime"/>,
            <seealso href="https://redis.io/commands/pexpiretime"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyFrequencyAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the logarithmic access frequency counter of the object stored at <paramref name="key"/>.
            The command is only available when the <c>maxmemory-policy</c> configuration directive is set to
            one of <see href="https://redis.io/docs/manual/eviction/#the-new-lfu-mode">the LFU policies</see>.
            </summary>
            <param name="key">The key to get a frequency count for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of logarithmic access frequency counter, (<see langword="null"/> if the key does not exist).</returns>
            <remarks><seealso href="https://redis.io/commands/object-freq"/></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><seealso href="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><see langword="true"/> if key was moved. <see langword="false"/> if key was not moved.</returns>
            <remarks><seealso href="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 persist.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the timeout was removed. <see langword="false"/> if key does not exist or does not have an associated timeout.</returns>
            <remarks><seealso href="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><seealso href="https://redis.io/commands/randomkey"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyRefCountAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the reference count of the object stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key to get a reference count for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of references (<see langword="Null"/> if the key does not exist).</returns>
            <remarks><seealso href="https://redis.io/commands/object-refcount"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyRenameAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Renames <paramref name="key"/> to <paramref name="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><see langword="true"/> if the key was renamed, <see langword="false"/> otherwise.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/rename"/>,
            <seealso href="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 <paramref name="expiry"/> 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><seealso href="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><seealso href="https://redis.io/commands/ttl"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTouchAsync(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><see langword="true"/> if the key was touched, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="https://redis.io/commands/touch"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.KeyTouchAsync(StackExchange.Redis.RedisKey[],StackExchange.Redis.CommandFlags)">
            <summary>
            Alters the last access time of the specified <paramref name="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><seealso href="https://redis.io/commands/touch"/></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><seealso href="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 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 get 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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/lpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPopAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns count elements from the head of the list stored at key.
            If the list contains less than count elements, removes and returns the number of elements in the list.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="count">The number of elements to remove</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Array of values that were popped, or nil if the key doesn't exist.</returns>
            <remarks><seealso href="https://redis.io/commands/lpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListLeftPopAsync(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns at most <paramref name="count"/> elements from the first non-empty list in <paramref name="keys"/>.
            Starts on the left side of the list.
            </summary>
            <param name="keys">The keys to look through for elements to pop.</param>
            <param name="count">The maximum number of elements to pop from the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A span of contiguous elements from the list, or <see cref="P:StackExchange.Redis.ListPopResult.Null"/> if no non-empty lists are found.</returns>
            <remarks><seealso href="https://redis.io/commands/lmpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListPositionAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Scans through the list stored at <paramref name="key"/> looking for <paramref name="element"/>, returning the 0-based
            index of the first matching element.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="element">The element to search for.</param>
            <param name="rank">The rank of the first element to return, within the sub-list of matching indexes in the case of multiple matches.</param>
            <param name="maxLength">The maximum number of elements to scan through before stopping, defaults to 0 (a full scan of the list.)</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The 0-based index of the first matching element, or -1 if not found.</returns>
            <remarks><seealso href="https://redis.io/commands/lpos"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListPositionsAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Int64,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Scans through the list stored at <paramref name="key"/> looking for <paramref name="count"/> instances of <paramref name="element"/>, returning the 0-based
            indexes of any matching elements.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="element">The element to search for.</param>
            <param name="count">The number of matches to find. A count of 0 will return the indexes of all occurrences of the element.</param>
            <param name="rank">The rank of the first element to return, within the sub-list of matching indexes in the case of multiple matches.</param>
            <param name="maxLength">The maximum number of elements to scan through before stopping, defaults to 0 (a full scan of the list.)</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An array of at most <paramref name="count"/> of indexes of matching elements. If none are found, and empty array is returned.</returns>
            <remarks><seealso href="https://redis.io/commands/lpos"/></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>
            <seealso href="https://redis.io/commands/lpush"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/lpush"/>,
            <seealso href="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 <c>LPUSH mylist a b c</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><seealso href="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><seealso href="https://redis.io/commands/llen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListMoveAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.ListSide,StackExchange.Redis.ListSide,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns and removes the first or last element of the list stored at <paramref name="sourceKey"/>, and pushes the element
            as the first or last element of the list stored at <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The key of the list to remove from.</param>
            <param name="destinationKey">The key of the list to move to.</param>
            <param name="sourceSide">What side of the <paramref name="sourceKey"/> list to remove from.</param>
            <param name="destinationSide">What side of the <paramref name="destinationKey"/> list to move to.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The element being popped and pushed or <see cref="P:StackExchange.Redis.RedisValue.Null"/> if there is no element to move.</returns>
            <remarks><seealso href="https://redis.io/commands/lmove"/></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><seealso href="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:
            <list type="bullet">
                <item>count &gt; 0: Remove elements equal to value moving from head to tail.</item>
                <item>count &lt; 0: Remove elements equal to value moving from tail to head.</item>
                <item>count = 0: Remove all elements equal to value.</item>
            </list>
            </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><seealso href="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><seealso href="https://redis.io/commands/rpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPopAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns count elements from the end the list stored at key.
            If the list contains less than count elements, removes and returns the number of elements in the list.
            </summary>
            <param name="key">The key of the list.</param>
            <param name="count">The number of elements to pop</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>Array of values that were popped, or nil if the key doesn't exist.</returns>
            <remarks><seealso href="https://redis.io/commands/rpop"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ListRightPopAsync(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Removes and returns at most <paramref name="count"/> elements from the first non-empty list in <paramref name="keys"/>.
            Starts on the right side of the list.
            </summary>
            <param name="keys">The keys to look through for elements to pop.</param>
            <param name="count">The maximum number of elements to pop from the list.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A span of contiguous elements from the list, or <see cref="P:StackExchange.Redis.ListPopResult.Null"/> if no non-empty lists are found.</returns>
            <remarks><seealso href="https://redis.io/commands/lmpop"/></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><seealso href="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>
            <seealso href="https://redis.io/commands/rpush"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/rpush"/>,
            <seealso href="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 <c>RPUSH mylist a b c</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><seealso href="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 <see cref="M:StackExchange.Redis.IDatabaseAsync.ListGetByIndexAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)"/>.
            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><seealso href="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: <c>LTRIM foobar 0 2</c> 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><seealso href="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><see langword="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 that must match.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the lock was successfully released, <see langword="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><see langword="true"/> if the lock was successfully taken, <see langword="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 *on the destination server*,
            note that this doesn't mean much in a cluster as clients can get the message through other nodes.
            </returns>
            <remarks><seealso href="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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </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>
            <seealso href="https://redis.io/commands/eval"/>,
            <seealso href="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>
            Be aware that this method is not resilient to Redis server restarts. Use <see cref="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateAsync(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)"/> instead.
            <seealso href="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><seealso href="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><seealso href="https://redis.io/commands/eval"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateReadOnlyAsync(System.String,StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Read-only variant of the EVAL command that cannot execute commands that modify data, 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>
            <seealso href="https://redis.io/commands/eval_ro"/>,
            <seealso href="https://redis.io/commands/evalsha_ro"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.ScriptEvaluateReadOnlyAsync(System.Byte[],StackExchange.Redis.RedisKey[],StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Read-only variant of the EVALSHA command that cannot execute commands that modify data, 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><seealso href="https://redis.io/commands/evalsha_ro"/></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><see langword="true"/> if the specified member was not already present in the set, else <see langword="false"/>.</returns>
            <remarks><seealso href="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><seealso href="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>
            <seealso href="https://redis.io/commands/sunion"/>,
            <seealso href="https://redis.io/commands/sinter"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunion"/>,
            <seealso href="https://redis.io/commands/sinter"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunionstore"/>,
            <seealso href="https://redis.io/commands/sinterstore"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/sunionstore"/>,
            <seealso href="https://redis.io/commands/sinterstore"/>,
            <seealso href="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 whether <paramref name="value"/> is a member of the set stored at <paramref name="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>
            <see langword="true"/> if the element is a member of the set.
            <see langword="false"/> if the element is not a member of the set, or if key does not exist.
            </returns>
            <remarks><seealso href="https://redis.io/commands/sismember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetContainsAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns whether each of <paramref name="values"/> is a member of the set stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the set.</param>
            <param name="values">The members to check for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>
            <see langword="true"/> if the element is a member of the set.
            <see langword="false"/> if the element is not a member of the set, or if key does not exist.
            </returns>
            <remarks><seealso href="https://redis.io/commands/smismember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SetIntersectionLengthAsync(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
              <para>
                Returns the set cardinality (number of elements) of the intersection between the sets stored at the given <paramref name="keys"/>.
              </para>
              <para>
                If the intersection cardinality reaches <paramref name="limit"/> partway through the computation,
                the algorithm will exit and yield <paramref name="limit"/> as the cardinality.
              </para>
            </summary>
            <param name="keys">The keys of the sets.</param>
            <param name="limit">The number of elements to check (defaults to 0 and means unlimited).</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><seealso href="https://redis.io/commands/scard"/></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><seealso href="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><seealso href="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>
            <see langword="true"/> if the element is moved.
            <see langword="false"/> if the element is not a member of source and no operation was performed.
            </returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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 <paramref name="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 <see cref="P:StackExchange.Redis.RedisValue.Null"/> when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="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 number 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 <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="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><see langword="true"/> if the specified member was already present in the set, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="https://redis.io/commands/srem"/></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 <see cref="T:StackExchange.Redis.IScanningCursor"/>.
            </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><seealso href="https://redis.io/commands/sscan"/></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).
            Uses <a href="https://redis.io/commands/sort_ro">SORT_RO</a> when possible.
            </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>
            <seealso href="https://redis.io/commands/sort"/>,
            <seealso href="https://redis.io/commands/sort_ro"/>
            </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><seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,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><see langword="true"/> if the value was added. <see langword="false"/> if it already existed (the score is still updated).</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,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><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetCombineAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation for multiple sorted sets (optionally using per-set <paramref name="weights"/>),
            optionally performing a specific aggregation (defaults to <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with weights or aggregation.
            </summary>
            <param name="operation">The operation to perform.</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 <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The resulting sorted set.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunion"/>,
            <seealso href="https://redis.io/commands/zinter"/>,
            <seealso href="https://redis.io/commands/zdiff"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetCombineWithScoresAsync(StackExchange.Redis.SetOperation,StackExchange.Redis.RedisKey[],System.Double[],StackExchange.Redis.Aggregate,StackExchange.Redis.CommandFlags)">
            <summary>
            Computes a set operation for multiple sorted sets (optionally using per-set <paramref name="weights"/>),
            optionally performing a specific aggregation (defaults to <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with weights or aggregation.
            </summary>
            <param name="operation">The operation to perform.</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 <see cref="F:StackExchange.Redis.Aggregate.Sum"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The resulting sorted set with scores.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunion"/>,
            <seealso href="https://redis.io/commands/zinter"/>,
            <seealso href="https://redis.io/commands/zdiff"/>
            </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).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with aggregation.
            </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>
            <returns>The number of elements in the resulting sorted set at destination.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunionstore"/>,
            <seealso href="https://redis.io/commands/zinterstore"/>,
            <seealso href="https://redis.io/commands/zdiffstore"/>
            </remarks>
        </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).
            <see cref="F:StackExchange.Redis.SetOperation.Difference"/> cannot be used with aggregation.
            </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>
            <returns>The number of elements in the resulting sorted set at destination.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zunionstore"/>,
            <seealso href="https://redis.io/commands/zinterstore"/>,
            <seealso href="https://redis.io/commands/zdiffstore"/>
            </remarks>
        </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><seealso href="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><seealso href="https://redis.io/commands/zincrby"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetIntersectionLengthAsync(StackExchange.Redis.RedisKey[],System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the cardinality of the intersection of the sorted sets at <paramref name="keys"/>.
            </summary>
            <param name="keys">The keys of the sorted sets.</param>
            <param name="limit">If the intersection cardinality reaches <paramref name="limit"/> partway through the computation, the algorithm will exit and yield <paramref name="limit"/> as the cardinality (defaults to 0 meaning unlimited).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of elements in the resulting intersection.</returns>
            <remarks><seealso href="https://redis.io/commands/zintercard"/></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><seealso href="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><seealso href="https://redis.io/commands/zlexcount"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRandomMemberAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns a random element from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected element, or <see cref="P:StackExchange.Redis.RedisValue.Null"/> when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRandomMembersAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array of random elements from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">
              <para>
                If the provided count argument is positive, returns an array of distinct elements.
                The array's length is either <paramref name="count"/> or the sorted set's cardinality (ZCARD), whichever is lower.
              </para>
              <para>
                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 number of returned elements is the absolute value of the specified count.
              </para>
            </param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected elements, or an empty array when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRandomMembersWithScoresAsync(StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array of random elements from the sorted set value stored at <paramref name="key"/>.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="count">
              <para>
                If the provided count argument is positive, returns an array of distinct elements.
                The array's length is either <paramref name="count"/> or the sorted set's cardinality (ZCARD), whichever is lower.
              </para>
              <para>
                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 number of returned elements is the absolute value of the specified count.
              </para>
            </param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The randomly selected elements with scores, or an empty array when <paramref name="key"/> does not exist.</returns>
            <remarks><seealso href="https://redis.io/commands/zrandmember"/></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>
            <seealso href="https://redis.io/commands/zrange"/>,
            <seealso href="https://redis.io/commands/zrevrange"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetRangeAndStoreAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.SortedSetOrder,StackExchange.Redis.Exclude,StackExchange.Redis.Order,System.Int64,System.Nullable{System.Int64},StackExchange.Redis.CommandFlags)">
            <summary>
            Takes the specified range of elements in the sorted set of the <paramref name="sourceKey"/>
            and stores them in a new sorted set at the <paramref name="destinationKey"/>.
            </summary>
            <param name="sourceKey">The sorted set to take the range from.</param>
            <param name="destinationKey">Where the resulting set will be stored.</param>
            <param name="start">The starting point in the sorted set. If <paramref name="sortedSetOrder"/> is <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/>, this should be a string.</param>
            <param name="stop">The stopping point in the range of the sorted set. If <paramref name="sortedSetOrder"/> is <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/>, this should be a string.</param>
            <param name="sortedSetOrder">The ordering criteria to use for the range. Choices are <see cref="F:StackExchange.Redis.SortedSetOrder.ByRank"/>, <see cref="F:StackExchange.Redis.SortedSetOrder.ByScore"/>, and <see cref="F:StackExchange.Redis.SortedSetOrder.ByLex"/> (defaults to <see cref="F:StackExchange.Redis.SortedSetOrder.ByRank"/>).</param>
            <param name="exclude">Whether to exclude <paramref name="start"/> and <paramref name="stop"/> from the range check (defaults to both inclusive).</param>
            <param name="order">
            The direction to consider the <paramref name="start"/> and <paramref name="stop"/> in.
            If <see cref="F:StackExchange.Redis.Order.Ascending"/>, the <paramref name="start"/> must be smaller than the <paramref name="stop"/>.
            If <see cref="F:StackExchange.Redis.Order.Descending"/>, <paramref name="stop"/> must be smaller than <paramref name="start"/>.
            </param>
            <param name="skip">The number of elements into the sorted set to skip. Note: this iterates after sorting so incurs O(n) cost for large values.</param>
            <param name="take">The maximum number of elements to pull into the new (<paramref name="destinationKey"/>) set.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The cardinality of (number of elements in) the newly created sorted set.</returns>
            <remarks><seealso href="https://redis.io/commands/zrangestore"/></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>
            <seealso href="https://redis.io/commands/zrange"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zrangebyscore"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zrangebyscore"/>,
            <seealso href="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>
            <returns>List of elements in the specified score range.</returns>
            <remarks><seealso href="https://redis.io/commands/zrangebylex"/></remarks>
        </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>
            <returns>List of elements in the specified score range.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zrangebylex"/>,
            <seealso href="https://redis.io/commands/zrevrangebylex"/>
            </remarks>
        </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, <see langword="null"/>.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/zrank"/>,
            <seealso href="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><see langword="true"/> if the member existed in the sorted set and was removed. <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/zremrangebylex"/></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="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><seealso href="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><seealso href="https://redis.io/commands/zscore"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetScoresAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the scores of members in the sorted set at <paramref name="key"/>.
            If a member does not exist in the sorted set, or key does not exist, <see langword="null"/> is returned.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="members">The members to get a score for.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>
            The scores of the members in the same order as the <paramref name="members"/> array.
            If a member does not exist in the set, <see langword="null"/> is returned.
            </returns>
            <remarks><seealso href="https://redis.io/commands/zmscore"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetUpdateAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Double,StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Same as <see cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" /> but return the number of the elements changed.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="member">The member to add/update to the sorted set.</param>
            <param name="score">The score for the member to add/update 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 changed.</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.SortedSetUpdateAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)">
            <summary>
            Same as <see cref="M:StackExchange.Redis.IDatabaseAsync.SortedSetAddAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.SortedSetEntry[],StackExchange.Redis.SortedSetWhen,StackExchange.Redis.CommandFlags)" /> but return the number of the elements changed.
            </summary>
            <param name="key">The key of the sorted set.</param>
            <param name="values">The members and values to add/update 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 changed.</returns>
            <remarks><seealso href="https://redis.io/commands/zadd"/></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>
            <seealso href="https://redis.io/commands/zpopmin"/>,
            <seealso href="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>
            <seealso href="https://redis.io/commands/zpopmin"/>,
            <seealso href="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 up to <paramref name="count"/> entries from the first non-empty sorted set in <paramref name="keys"/>.
            Returns <see cref="P:StackExchange.Redis.SortedSetPopResult.Null"/> if none of the sets exist or contain any elements.
            </summary>
            <param name="keys">The keys to check.</param>
            <param name="count">The maximum number of records to pop out of the sorted set.</param>
            <param name="order">The order to sort by when popping items out of the set.</param>
            <param name="flags">The flags to use for the operation.</param>
            <returns>A contiguous collection of sorted set entries with the key they were popped from, or <see cref="P:StackExchange.Redis.SortedSetPopResult.Null"/> if no non-empty sorted sets are found.</returns>
            <remarks><seealso href="https://redis.io/commands/zmpop"/></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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/xadd"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAutoClaimAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer.
            Messages that have been idle for more than <paramref name="minIdleTimeInMs"/> will be claimed.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the messages(s).</param>
            <param name="minIdleTimeInMs">The minimum idle time threshold for pending messages to be claimed.</param>
            <param name="startAtId">The starting ID to scan for pending messages that have an idle time greater than <paramref name="minIdleTimeInMs"/>.</param>
            <param name="count">The upper limit of the number of entries that the command attempts to claim. If <see langword="null"/>, Redis will default the value to 100.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamAutoClaimResult"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/xautoclaim"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StreamAutoClaimIdsOnlyAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,System.Int64,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},StackExchange.Redis.CommandFlags)">
            <summary>
            Change ownership of messages consumed, but not yet acknowledged, by a different consumer.
            Messages that have been idle for more than <paramref name="minIdleTimeInMs"/> will be claimed.
            The result will contain the claimed message IDs instead of a <see cref="T:StackExchange.Redis.StreamEntry"/> instance.
            </summary>
            <param name="key">The key of the stream.</param>
            <param name="consumerGroup">The consumer group.</param>
            <param name="claimingConsumer">The consumer claiming the messages(s).</param>
            <param name="minIdleTimeInMs">The minimum idle time threshold for pending messages to be claimed.</param>
            <param name="startAtId">The starting ID to scan for pending messages that have an idle time greater than <paramref name="minIdleTimeInMs"/>.</param>
            <param name="count">The upper limit of the number of entries that the command attempts to claim. If <see langword="null"/>, Redis will default the value to 100.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>An instance of <see cref="T:StackExchange.Redis.StreamAutoClaimIdsOnlyResult"/>.</returns>
            <remarks><seealso href="https://redis.io/commands/xautoclaim"/></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 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><seealso href="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><seealso href="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><see langword="true"/> if successful, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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><seealso href="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><see langword="true"/> if the group was created, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><see langword="true"/> if the group was created, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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><seealso href="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>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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><see langword="true"/> if deleted, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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"/> will 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><seealso href="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>
            <para>Equivalent of calling <c>XREAD COUNT num STREAMS key id</c>.</para>
            <para><seealso href="https://redis.io/commands/xread"/></para>
            </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>
            <para>Equivalent of calling <c>XREAD COUNT num STREAMS key1 key2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xread"/></para>
            </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 <see langword="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><seealso href="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 <see langword="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><seealso href="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>
            <para>Equivalent of calling <c>XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xreadgroup"/></para>
            </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>
            <para>Equivalent of calling <c>XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2</c>.</para>
            <para><seealso href="https://redis.io/commands/xreadgroup"/></para>
            </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><seealso href="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><seealso href="https://redis.io/commands/append"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitCountAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.StringBitCountAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitCountAsync(StackExchange.Redis.RedisKey,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,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="indexType">In Redis 7+, we can choose if <paramref name="start"/> and <paramref name="end"/> specify a bit index or byte index (defaults to <see cref="F:StackExchange.Redis.StringIndexType.Byte"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The number of bits set to 1.</returns>
            <remarks><seealso href="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 <paramref name="destination"/>.
            </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><seealso href="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 <paramref name="destination"/>.
            </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><seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.StringBitPositionAsync(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringBitPositionAsync(StackExchange.Redis.RedisKey,System.Boolean,System.Int64,System.Int64,StackExchange.Redis.StringIndexType,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.
            A <paramref name="start"/> and <paramref name="end"/> may be specified - these are in bytes, not bits.
            <paramref name="start"/> and <paramref name="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="indexType">In Redis 7+, we can choose if <paramref name="start"/> and <paramref name="end"/> specify a bit index or byte index (defaults to <see cref="F:StackExchange.Redis.StringIndexType.Byte"/>).</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><seealso href="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>
            <seealso href="https://redis.io/commands/decrby"/>,
            <seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="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><seealso href="https://redis.io/commands/getset"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetSetExpiryAsync(StackExchange.Redis.RedisKey,System.Nullable{System.TimeSpan},StackExchange.Redis.CommandFlags)">
            <summary>
            Gets the value of <paramref name="key"/> and update its (relative) expiry.
            If the key does not exist, the result will be <see cref="P:StackExchange.Redis.RedisValue.Null"/>.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="expiry">The expiry to set. <see langword="null"/> will remove expiry.</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><seealso href="https://redis.io/commands/getex"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetSetExpiryAsync(StackExchange.Redis.RedisKey,System.DateTime,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets the value of <paramref name="key"/> and update its (absolute) expiry.
            If the key does not exist, the result will be <see cref="P:StackExchange.Redis.RedisValue.Null"/>.
            </summary>
            <param name="key">The key of the string.</param>
            <param name="expiry">The exact date and time to expire at. <see cref="F:System.DateTime.MaxValue"/> will remove expiry.</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><seealso href="https://redis.io/commands/getex"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringGetDeleteAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Get the value of key and delete the 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><seealso href="https://redis.io/commands/getdelete"/></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><seealso href="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>
            <seealso href="https://redis.io/commands/incrby"/>,
            <seealso href="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><seealso href="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><seealso href="https://redis.io/commands/strlen"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringLongestCommonSubsequenceAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning a string containing the common sequence.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>A string (sequence of characters) of the LCS match.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringLongestCommonSubsequenceLengthAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning the legnth of the common sequence.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The length of the LCS match.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringLongestCommonSubsequenceWithMatchesAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisKey,System.Int64,StackExchange.Redis.CommandFlags)">
            <summary>
            Implements the longest common subsequence algorithm between the values at <paramref name="first"/> and <paramref name="second"/>,
            returning a list of all common sequences.
            Note that this is different than the longest common string algorithm,
            since matching characters in the string does not need to be contiguous.
            </summary>
            <param name="first">The key of the first string.</param>
            <param name="second">The key of the second string.</param>
            <param name="minLength">Can be used to restrict the list of matches to the ones of a given minimum length.</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The result of LCS algorithm, based on the given parameters.</returns>
            <remarks><seealso href="https://redis.io/commands/lcs"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)" />
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,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="keepTtl">Whether to maintain the existing key's TTL (KEEPTTL flag).</param>
            <param name="when">Which condition to set the value under (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the string was set, <see langword="false"/> otherwise.</returns>
            <remarks><seealso href="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 <see cref="F:StackExchange.Redis.When.NotExists"/> 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 (defaults to always).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns><see langword="true"/> if the keys were set, <see langword="false"/> otherwise.</returns>
            <remarks>
            <seealso href="https://redis.io/commands/mset"/>,
            <seealso href="https://redis.io/commands/msetnx"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAndGetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the previous value (if any) stored at <paramref name="key"/>.
            </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 (defaults to <see cref="F:StackExchange.Redis.When.Always"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The previous value stored at <paramref name="key"/>, or nil when key did not exist.</returns>
            <remarks>
            <para>This method uses the <c>SET</c> command with the <c>GET</c> option introduced in Redis 6.2.0 instead of the deprecated <c>GETSET</c> command.</para>
            <para><seealso href="https://redis.io/commands/set"/></para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IDatabaseAsync.StringSetAndGetAsync(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.TimeSpan},System.Boolean,StackExchange.Redis.When,StackExchange.Redis.CommandFlags)">
            <summary>
            Atomically sets key to value and returns the previous value (if any) stored at <paramref name="key"/>.
            </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="keepTtl">Whether to maintain the existing key's TTL (KEEPTTL flag).</param>
            <param name="when">Which condition to set the value under (defaults to <see cref="F:StackExchange.Redis.When.Always"/>).</param>
            <param name="flags">The flags to use for this operation.</param>
            <returns>The previous value stored at <paramref name="key"/>, or nil when key did not exist.</returns>
            <remarks>This method uses the SET command with the GET option introduced in Redis 6.2.0 instead of the deprecated GETSET command.</remarks>
            <remarks><seealso href="https://redis.io/commands/set"/></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><seealso href="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><seealso href="https://redis.io/commands/setrange"/></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><seealso href="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><seealso href="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.Protocol">
            <summary>
            The protocol being used to communicate with this server (if not connected/known, then the anticipated protocol from the configuration is returned, assuming success)
            </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 <c>CLIENT KILL</c> command closes a given client connection identified by <c>ip:port</c>.
            The <c>ip:port</c> should match a line returned by the <c>CLIENT LIST</c> command.
            Due to the single-threaded 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><seealso href="https://redis.io/commands/client-kill"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientKillAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ClientKill(System.Net.EndPoint,StackExchange.Redis.CommandFlags)"/>
        </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 skip the current connection.</param>
            <param name="flags">The command flags to use.</param>
            <returns>the number of clients killed.</returns>
            <remarks><seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ClientKill(System.Nullable{System.Int64},System.Nullable{StackExchange.Redis.ClientType},System.Net.EndPoint,System.Boolean,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientList(StackExchange.Redis.CommandFlags)">
            <summary>
            The <c>CLIENT LIST</c> 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><seealso href="https://redis.io/commands/client-list"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClientListAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ClientList(StackExchange.Redis.CommandFlags)"/>
        </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>
            <remarks><seealso href="https://redis.io/commands/cluster-nodes/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodesAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ClusterNodes(StackExchange.Redis.CommandFlags)"/>
        </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>
            <remarks><seealso href="https://redis.io/commands/cluster-nodes/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ClusterNodesRawAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ClusterNodesRaw(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/config-get"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigGetAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ConfigGet(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/config-resetstat"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigResetStatisticsAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ConfigResetStatistics(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/config-rewrite"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigRewriteAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ConfigRewrite(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/config-set"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ConfigSetAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ConfigSet(StackExchange.Redis.RedisValue,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandCount(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the number of total commands available in this Redis server.
            </summary>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="https://redis.io/commands/command-count"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandCountAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.CommandCount(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandGetKeys(StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <summary>
            Returns list of keys from a full Redis command.
            </summary>
            <param name="command">The command to get keys from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="https://redis.io/commands/command-getkeys"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandGetKeysAsync(StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.CommandGetKeys(StackExchange.Redis.RedisValue[],StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandList(System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <summary>
            Returns a list of command names available on this Redis server.
            Only one of the filter options is usable at a time.
            </summary>
            <param name="moduleName">The module name to filter the command list by.</param>
            <param name="category">The category to filter the command list by.</param>
            <param name="pattern">The pattern to filter the command list by.</param>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="https://redis.io/commands/command-list"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.CommandListAsync(System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.CommandList(System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/dbsize"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.DatabaseSizeAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.DatabaseSize(System.Int32,StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/echo"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.EchoAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Echo(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ExecuteAsync(System.String,System.Object[])">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Execute(System.String,System.Object[])"/>
        </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>
            <returns>A dynamic representation of the command's result.</returns>
            <remarks>This API should be considered an advanced feature; inappropriate use can be harmful.</remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ExecuteAsync(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Execute(System.String,System.Collections.Generic.ICollection{System.Object},StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/flushall"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushAllDatabasesAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.FlushAllDatabases(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/flushdb"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.FlushDatabaseAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.FlushDatabase(System.Int32,StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>A grouping of key/value pairs, grouped by their section header.</returns>
            <remarks><seealso href="https://redis.io/commands/info"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.InfoAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Info(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>The entire raw <c>INFO</c> string.</returns>
            <remarks><seealso href="https://redis.io/commands/info"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.InfoRawAsync(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.InfoRaw(StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.Keys(System.Int32,StackExchange.Redis.RedisValue,System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Keys(System.Int32,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)"/>
        </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 <paramref name="pattern"/>.
            The <c>KEYS</c> or <c>SCAN</c> 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 <see cref="T:StackExchange.Redis.IScanningCursor"/>.
            </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>
            <returns>An enumeration of matching redis keys.</returns>
            <remarks>
            <para>Warning: consider KEYS as a command that should only be used in production environments with extreme care.</para>
            <para>
            <seealso href="https://redis.io/commands/keys"/>,
            <seealso href="https://redis.io/commands/scan"/>
            </para>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.KeysAsync(System.Int32,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Keys(System.Int32,StackExchange.Redis.RedisValue,System.Int32,System.Int64,System.Int32,StackExchange.Redis.CommandFlags)"/>
        </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 <c>BGSAVE</c> command succeeded reading the <c>LASTSAVE</c> value, then issuing a BGSAVE command
            and checking at regular intervals every N seconds if <c>LASTSAVE</c> changed.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>The last time a save was performed.</returns>
            <remarks><seealso href="https://redis.io/commands/lastsave"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LastSaveAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.LastSave(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.MakeMaster(StackExchange.Redis.ReplicationChangeOptions,System.IO.TextWriter)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.MakePrimaryAsync(StackExchange.Redis.ReplicationChangeOptions,System.IO.TextWriter)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.MakePrimaryAsync(StackExchange.Redis.ReplicationChangeOptions,System.IO.TextWriter)">
            <summary>
            Promote the selected node to be primary.
            </summary>
            <param name="options">The options to use for this topology change.</param>
            <param name="log">The log to write output to.</param>
            <remarks><seealso href="https://redis.io/commands/replicaof/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.Role(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the role info for the current server.
            </summary>
            <remarks><seealso href="https://redis.io/commands/role"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.RoleAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Role(StackExchange.Redis.CommandFlags)"/>
        </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>
            <seealso href="https://redis.io/commands/bgrewriteaof"/>,
            <seealso href="https://redis.io/commands/bgsave"/>,
            <seealso href="https://redis.io/commands/save"/>,
            <seealso href="https://redis.io/topics/persistence"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SaveAsync(StackExchange.Redis.SaveType,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Save(StackExchange.Redis.SaveType,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExists(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Indicates 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>
            <remarks><seealso href="https://redis.io/commands/script-exists/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExistsAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ScriptExists(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExists(System.Byte[],StackExchange.Redis.CommandFlags)">
            <summary>
            Indicates 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>
            <remarks><seealso href="https://redis.io/commands/script-exists/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptExistsAsync(System.Byte[],StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ScriptExists(System.Byte[],StackExchange.Redis.CommandFlags)"/>
        </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>
            <remarks><seealso href="https://redis.io/commands/script-flush/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptFlushAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ScriptFlush(StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>The SHA1 of the loaded script.</returns>
            <remarks><seealso href="https://redis.io/commands/script-load/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoadAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ScriptLoad(System.String,StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>The loaded script, ready for rapid reuse based on the SHA1.</returns>
            <remarks><seealso href="https://redis.io/commands/script-load/"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.ScriptLoadAsync(StackExchange.Redis.LuaScript,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ScriptLoad(StackExchange.Redis.LuaScript,StackExchange.Redis.CommandFlags)"/>
        </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 <c>SHUTDOWN</c> command.
            </summary>
            <param name="shutdownMode">The mode of the shutdown.</param>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="https://redis.io/commands/shutdown"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlaveOf(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ReplicaOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlaveOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ReplicaOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.ReplicaOf(System.Net.EndPoint,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.ReplicaOfAsync(System.Net.EndPoint,StackExchange.Redis.CommandFlags)"/>
        </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 primary will turn off the replication,
            turning the Redis server into a PRIMARY. Specifying a non-null primary will make the server a replica of
            another server listening at the specified hostname and port.
            </summary>
            <param name="master">Endpoint of the new primary to replicate from.</param>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="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>
            <returns>The slow command traces as recorded by the Redis server.</returns>
            <remarks><seealso href="https://redis.io/commands/slowlog"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogGetAsync(System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SlowlogGet(System.Int32,StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/slowlog"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SlowlogResetAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SlowlogReset(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/pubsub"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionChannelsAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SubscriptionChannels(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/pubsub"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionPatternCountAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SubscriptionPatternCount(StackExchange.Redis.CommandFlags)"/>
        </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 subscriber count for.</param>
            <param name="flags">The command flags to use.</param>
            <returns>The number of subscribers on this server.</returns>
            <remarks><seealso href="https://redis.io/commands/pubsub"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SubscriptionSubscriberCountAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SubscriptionSubscriberCount(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/swapdb"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SwapDatabasesAsync(System.Int32,System.Int32,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SwapDatabases(System.Int32,System.Int32,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.Time(StackExchange.Redis.CommandFlags)">
            <summary>
            The <c>TIME</c> command returns the current server time in UTC format.
            Use the <see cref="M:System.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><seealso href="https://redis.io/commands/time"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.TimeAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.Time(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyDoctor(StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a text-based latency diagnostic.
            </summary>
            <returns>The full text result of latency doctor.</returns>
            <remarks>
            <seealso href="https://redis.io/topics/latency-monitor"/>,
            <seealso href="https://redis.io/commands/latency-doctor"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyDoctorAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.LatencyDoctor(StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>The number of events that were reset.</returns>
            <remarks>
            <seealso href="https://redis.io/topics/latency-monitor"/>,
            <seealso href="https://redis.io/commands/latency-reset"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyResetAsync(System.String[],StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.LatencyReset(System.String[],StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>An array of latency history entries.</returns>
            <remarks>
            <seealso href="https://redis.io/topics/latency-monitor"/>,
            <seealso href="https://redis.io/commands/latency-history"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyHistoryAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.LatencyHistory(System.String,StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>An array of the latest latency history entries.</returns>
            <remarks>
            <seealso href="https://redis.io/topics/latency-monitor"/>,
            <seealso href="https://redis.io/commands/latency-latest"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.LatencyLatestAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.LatencyLatest(StackExchange.Redis.CommandFlags)"/>
        </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>
            <returns>The full text result of memory doctor.</returns>
            <remarks><seealso href="https://redis.io/commands/memory-doctor"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryDoctorAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.MemoryDoctor(StackExchange.Redis.CommandFlags)"/>
        </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><seealso href="https://redis.io/commands/memory-purge"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryPurgeAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.MemoryPurge(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryStats(StackExchange.Redis.CommandFlags)">
            <summary>
            Returns an array reply about the memory usage of the server.
            </summary>
            <returns>An array reply of memory stat metrics and values.</returns>
            <remarks><seealso href="https://redis.io/commands/memory-stats"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryStatsAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.MemoryStats(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryAllocatorStats(StackExchange.Redis.CommandFlags)">
            <summary>
            Provides an internal statistics report from the memory allocator.
            </summary>
            <returns>The full text result of memory allocation stats.</returns>
            <remarks><seealso href="https://redis.io/commands/memory-malloc-stats"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.MemoryAllocatorStatsAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.MemoryAllocatorStats(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetMasterAddressByName(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Returns the IP and port number of the primary with that name.
            If a failover is in progress or terminated successfully for this primary 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 primary IP and port.</returns>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetMasterAddressByNameAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelGetMasterAddressByName(System.String,StackExchange.Redis.CommandFlags)"/>
        </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>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetSentinelAddressesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelGetSentinelAddresses(System.String,StackExchange.Redis.CommandFlags)"/>
        </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>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelGetReplicaAddressesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelGetReplicaAddresses(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMaster(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show the state and info of the specified primary.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <returns>The primaries state as KeyValuePairs.</returns>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMasterAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelMaster(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMasters(StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of monitored primaries and their state.
            </summary>
            <param name="flags">The command flags to use.</param>
            <returns>An array of primaries state KeyValuePair arrays.</returns>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelMastersAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelMasters(StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSlaves(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelReplicas(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSlavesAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelReplicas(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelReplicas(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of replicas for this primary, 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><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelReplicasAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelReplicas(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelFailover(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Force a failover as if the primary 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><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelFailoverAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelFailover(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSentinels(System.String,StackExchange.Redis.CommandFlags)">
            <summary>
            Show a list of sentinels for a primary, and their state.
            </summary>
            <param name="serviceName">The sentinel service name.</param>
            <param name="flags">The command flags to use.</param>
            <remarks><seealso href="https://redis.io/topics/sentinel"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.IServer.SentinelSentinelsAsync(System.String,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.IServer.SentinelSentinels(System.String,StackExchange.Redis.CommandFlags)"/>
        </member>
        <member name="M:StackExchange.Redis.IServerExtensions.SimulateConnectionFailure(StackExchange.Redis.IServer,StackExchange.Redis.SimulatedFailureType)">
            <summary>
            For testing only: Break the connection without mercy or thought
            </summary>
            <param name="server">The server to simulate failure on.</param>
            <param name="failureType">The type of failure(s) to simulate.</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)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.IdentifyEndpoint(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>
        </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 arbitrarily from the primaries.
            </summary>
            <param name="channel">The channel to identify the server endpoint by.</param>
            <returns><see langword="true" /> if connected, <see langword="false"/> otherwise.</returns>
        </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 *on the destination server*,
            note that this doesn't mean much in a cluster as clients can get the message through other nodes.
            </returns>
            <remarks><seealso href="https://redis.io/commands/publish"/></remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.PublishAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.Publish(StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)"/>
        </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>
            <seealso href="https://redis.io/commands/subscribe"/>,
            <seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.Subscribe(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)"/>
        </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>
            <seealso href="https://redis.io/commands/subscribe"/>,
            <seealso href="https://redis.io/commands/psubscribe"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.SubscribeAsync(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.Subscribe(StackExchange.Redis.RedisChannel,StackExchange.Redis.CommandFlags)"/>
        </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.
            </summary>
            <param name="channel">The channel to check which server endpoint was subscribed on.</param>
            <returns>The subscribed endpoint for the given <paramref name="channel"/>, <see langword="null"/> if the channel is not actively subscribed.</returns>
        </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 canceled regardless of the subscribers.
            If a handler is specified, the subscription is only canceled 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>
            <seealso href="https://redis.io/commands/unsubscribe"/>,
            <seealso href="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)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.Unsubscribe(StackExchange.Redis.RedisChannel,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.CommandFlags)"/>
        </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>
            <seealso href="https://redis.io/commands/unsubscribe"/>,
            <seealso href="https://redis.io/commands/punsubscribe"/>
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ISubscriber.UnsubscribeAllAsync(StackExchange.Redis.CommandFlags)">
            <inheritdoc cref="M:StackExchange.Redis.ISubscriber.UnsubscribeAll(StackExchange.Redis.CommandFlags)"/>
        </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 <c>WATCH</c>), but note that constraint checking involves will (very briefly)
            block the connection, since the transaction cannot be correctly committed (<c>EXEC</c>),
            aborted (<c>DISCARD</c>) or not applied in the first place (<c>UNWATCH</c>) until the responses from
            the constraint checks have arrived.
            </summary>
            <remarks>
            <para>Note that on a cluster, it may be required that all keys involved in the transaction (including constraints) are in the same hash-slot.</para>
            <para><seealso href="https://redis.io/topics/transactions"/></para>
            </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 that occurred.</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 underlying 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 parameters 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 <see cref="T:System.Memory`1"/>.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.Span">
            <summary>
            The data as a <see cref="T:System.Span`1"/>.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Lease`1.ArraySegment">
            <summary>
            The data as an <see cref="T:System.ArraySegment`1"/>.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.LinearRetry">
            <summary>
            Represents a retry policy that performs retries at a fixed interval. The retries are performed up to 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="F:StackExchange.Redis.LuaScript.Cache">
            <summary>
            Since the mapping of "script text" -> LuaScript doesn't depend on any particular details of
            the redis connection itself, this cache is global.
            </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="P:StackExchange.Redis.LuaScript.Arguments">
            <summary>
            Arguments are in the order they have to passed to the script in.
            </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
            using the implicit SHA1 hash that's calculated after the script is sent to the server for the first time.
            </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
            using the implicit SHA1 hash that's calculated after the script is sent to the server for the first time.
            </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>
            <remarks>Be aware that using hash directly is not resilient to Redis server restarts.</remarks>
        </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="T:StackExchange.Redis.Maintenance.AzureMaintenanceEvent">
            <summary>
            Azure node maintenance event. For more information, please see: <see href="https://aka.ms/redis/maintenanceevents"/>.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.NotificationTypeString">
            <summary>
            Indicates the type of event (raw string form).
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.NotificationType">
            <summary>
            The parsed version of <see cref="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.NotificationTypeString"/> for easier consumption.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.IsReplica">
            <summary>
            Indicates if the event is for a replica node.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.IPAddress">
            <summary>
            IPAddress of the node event is intended for.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.SslPort">
            <summary>
            SSL Port.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.AzureMaintenanceEvent.NonSslPort">
            <summary>
            Non-SSL port.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Maintenance.AzureNotificationType">
            <summary>
            The types of notifications that Azure is sending for events happening.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.Unknown">
            <summary>
            Unrecognized event type, likely needs a library update to recognize new events.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceScheduled">
            <summary>
            Indicates that a maintenance event is scheduled. May be several minutes from now.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceStarting">
            <summary>
            This event gets fired ~20s before maintenance begins.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceStart">
            <summary>
            This event gets fired when maintenance is imminent (&lt;5s).
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceEnded">
            <summary>
            Indicates that the node maintenance operation is over.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceFailoverComplete">
            <summary>
            Indicates that a replica has been promoted to primary.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.Maintenance.AzureNotificationType.NodeMaintenanceScaleComplete">
            <summary>
            Indicates that a scale event (adding or removing nodes) has completed for a cluster.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.Maintenance.ServerMaintenanceEvent">
            <summary>
            Base class for all server maintenance events.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.RawMessage">
            <summary>
            Raw message received from the server.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.ReceivedTimeUtc">
            <summary>
            The time the event was received. If we know when the event is expected to start <see cref="P:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.StartTimeUtc"/> will be populated.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.StartTimeUtc">
            <summary>
            Indicates the expected start time of the event.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.ToString">
            <summary>
            Returns a string representing the maintenance event with all of its properties.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Maintenance.ServerMaintenanceEvent.NotifyMultiplexer(StackExchange.Redis.ConnectionMultiplexer)">
            <summary>
            Notifies a ConnectionMultiplexer of this event, for anyone observing its <see cref="E:StackExchange.Redis.ConnectionMultiplexer.ServerMaintenanceEvent"/> handler.
            </summary>
        </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.IsPrimaryOnly">
            <summary>Gets whether this is primary-only.</summary>
            <remarks>
            Note that the constructor runs the switch statement above, so
            this will already be true for primary-only commands, even if the
            user specified <see cref="F:StackExchange.Redis.CommandFlags.PreferMaster"/> etc.
            </remarks>
        </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="M:StackExchange.Redis.Message.ToString">
            <summary>
            Gets a string representation of this message: "[{DB}]:{CommandAndKey} ({resultProcessor})"
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Message.ToStringCommandOnly">
            <summary>
            Gets a string representation of this message without the key: "[{DB}]:{Command} ({resultProcessor})"
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Message.IsForSubscriptionBridge">
            <summary>
            Gets if this command should be sent over the subscription bridge.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Message.SetForSubscriptionBridge">
            <summary>
            Sends this command to the subscription connection rather than the interactive.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Message.HasTimedOut(System.Int32,System.Int32,System.Int32@)">
            <summary>
            Checks if this message has violated the provided timeout.
            Whether it's a sync operation in a .Wait() or in the backlog queue or written/pending asynchronously, we need to timeout everything.
            ...or we get indefinite Task hangs for completions.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.Message.SetSource(StackExchange.Redis.ResultProcessor,StackExchange.Redis.IResultBox)">
            <summary>
            Sets the processor and box for this message to execute.
            </summary>
            <remarks>
            Note order here is reversed to prevent overload resolution errors.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.Message.SetSource``1(StackExchange.Redis.IResultBox{``0},StackExchange.Redis.ResultProcessor{``0})">
            <summary>
            Sets the box and processor for this message to execute.
            </summary>
            <remarks>
            Note order here is reversed to prevent overload resolution errors.
            </remarks>
        </member>
        <member name="F:StackExchange.Redis.PhysicalBridge._backlog">
            <summary>
            We have 1 queue in play on this bridge.
            We're bypassing the queue for handshake events that go straight to the socket.
            Everything else that's not an internal call goes into the queue if there is a queue.
            </summary>
            <remarks>
            In a later release we want to remove per-server events from this queue completely and shunt queued messages
            to another capable primary connection if one is available to process them faster (order is already hosed).
            For now, simplicity in: queue it all, replay or timeout it all.
            </remarks>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.Protocol">
            <summary>
            If we have a connection, report the protocol being used
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.MessagesSinceLastHeartbeat">
            <summary>
            Number of messages sent since the last heartbeat was processed.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.ConnectedAt">
            <summary>
            The time this connection was connected at, if it's connected currently.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.IsWriterActive">
            <summary>
            Whether the pipe writer is currently active.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.BacklogStatus">
            <summary>
            Status of the currently processing backlog, if any.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.BacklogMessagesPending">
            <summary>
            The number of messages that are in the backlog queue (waiting to be sent when the connection is healthy again).
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.BacklogMessagesPendingCounter">
            <summary>
            The number of messages that are in the backlog queue (waiting to be sent when the connection is healthy again).
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.TotalBacklogMessagesQueued">
            <summary>
            The number of messages ever added to the backlog queue in the life of this connection.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.Connection">
            <summary>
            Status for the underlying <see cref="T:StackExchange.Redis.PhysicalConnection"/>.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalBridge.BridgeStatus.Zero">
            <summary>
            The default bridge stats, notable *not* the same as <c>default</c> since initializers don't run.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.KeepAlive(System.Boolean)">
            <summary>
            Sends a keepalive message (ECHO or PING) to keep connections alive and check validity of response.
            </summary>
            <param name="forceRun">Whether to run even then the connection isn't idle.</param>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.CheckBacklogForTimeouts">
            <summary>
            Crawls from the head of the backlog queue, consuming anything that should have timed out
            and pruning it accordingly (these messages will get timeout exceptions).
            </summary>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.ProcessBacklog">
            <summary>
            Process the backlog(s) in play if any.
            This means flushing commands to an available/active connection (if any) or spinning until timeout if not.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.PhysicalBridge._backlogAutoReset">
            <summary>
            Reset event for monitoring backlog additions mid-run.
            This allows us to keep the thread around for a full flush and prevent "feathering the throttle" trying
            to flush it. In short, we don't start and stop so many threads with a bit of linger.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.WriteMessageTakingWriteLockAsync(StackExchange.Redis.PhysicalConnection,StackExchange.Redis.Message,System.Boolean)">
            <summary>
            This writes a message to the output stream.
            </summary>
            <param name="physical">The physical connection to write to.</param>
            <param name="message">The message to be written.</param>
            <param name="bypassBacklog">Whether this message should bypass the backlog, going straight to the pipe or failing.</param>
        </member>
        <member name="M:StackExchange.Redis.PhysicalBridge.SimulateConnectionFailure(StackExchange.Redis.SimulatedFailureType)">
            <summary>
            For testing only
            </summary>
        </member>
        <member name="F:StackExchange.Redis.PhysicalConnection._ioPipe">
            <summary>
            Nullable because during simulation of failure, we'll null out.
            ...but in those cases, we'll accept any null ref in a race - it's fine.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.PhysicalConnection.IsRequestedShutdown(Pipelines.Sockets.Unofficial.PipeShutdownKind)">
            <summary>
            Did we ask for the shutdown? If so this leads to informational messages for tracking but not errors.
            </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="M:StackExchange.Redis.PhysicalConnection.OnBridgeHeartbeat">
            <summary>
            Runs on every heartbeat for a bridge, timing out any commands that are overdue and returning an integer of how many we timed out.
            </summary>
            <returns>How many commands were overdue and threw timeout exceptions.</returns>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.MessagesSentAwaitingResponse">
            <summary>
            Number of messages sent outbound, but we don't yet have a response for.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.BytesAvailableOnSocket">
            <summary>
            Bytes available on the socket, not yet read into the pipe.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.BytesInReadPipe">
            <summary>
            Bytes read from the socket, pending in the reader pipe.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.BytesInWritePipe">
            <summary>
            Bytes in the writer pipe, waiting to be written to the socket.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.BytesLastResult">
            <summary>
            Byte size of the last result we processed.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.BytesInBuffer">
            <summary>
            Byte size on the buffer that isn't processed yet.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.ReadStatus">
            <summary>
            The inbound pipe reader status.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.WriteStatus">
            <summary>
            The outbound pipe writer status.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.Default">
            <summary>
            The default connection stats, notable *not* the same as <c>default</c> since initializers don't run.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.PhysicalConnection.ConnectionStatus.Zero">
            <summary>
            The zeroed connection stats, which we want to display as zero for default exception cases.
            </summary>
        </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="P:StackExchange.Redis.RedisChannel.IsPattern">
            <summary>
            Indicates whether this channel represents a wildcard pattern (see <c>PSUBSCRIBE</c>)
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisChannel.UseImplicitAutoPattern">
            <summary>
            Indicates whether channels should use <see cref="F:StackExchange.Redis.RedisChannel.PatternMode.Auto"/> when no <see cref="T:StackExchange.Redis.RedisChannel.PatternMode"/>
            is specified; this is enabled by default, but can be disabled to avoid unexpected wildcard scenarios.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Literal(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisChannel"/> that does not act as a wildcard subscription
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Literal(System.Byte[])">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisChannel"/> that does not act as a wildcard subscription
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Pattern(System.String)">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisChannel"/> that acts as a wildcard subscription
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisChannel.Pattern(System.Byte[])">
            <summary>
            Creates a new <see cref="T:StackExchange.Redis.RedisChannel"/> that acts as a wildcard subscription
            </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 <see cref="M:System.Object.Equals(System.Object)"/>.
            </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">
            <inheritdoc/>
        </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="M:StackExchange.Redis.RedisDatabase.GetStreamAddMessage(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{System.Int32},System.Boolean,StackExchange.Redis.NameValueEntry[],StackExchange.Redis.CommandFlags)">
            <summary>
            Gets message for <see href="https://redis.io/commands/xadd"/>.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisDatabase.GetStreamPendingMessagesMessage(StackExchange.Redis.RedisKey,StackExchange.Redis.RedisValue,System.Nullable{StackExchange.Redis.RedisValue},System.Nullable{StackExchange.Redis.RedisValue},System.Int32,StackExchange.Redis.RedisValue,StackExchange.Redis.CommandFlags)">
            <summary>
            Gets a message for <see href="https://redis.io/commands/xpending/"/>
            </summary>
            <remarks><seealso href="https://redis.io/topics/streams-intro"/></remarks>
        </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>
            Are <see href="https://redis.io/commands/bitop/">BITOP</see> and <see href="https://redis.io/commands/bitcount/">BITCOUNT</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ClientName">
            <summary>
            Is <see href="https://redis.io/commands/client-setname/">CLIENT SETNAME</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ClientId">
            <summary>
            Is <see href="https://redis.io/commands/client-id/">CLIENT ID</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ExecAbort">
            <summary>
            Does <see href="https://redis.io/commands/exec/">EXEC</see> support <c>EXECABORT</c> if there are errors?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ExpireOverwrite">
            <summary>
            Can <see href="https://redis.io/commands/expire/">EXPIRE</see> 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.GetDelete">
            <summary>
            Is <see href="https://redis.io/commands/getdel/">GETDEL</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HashStringLength">
            <summary>
            Is <see href="https://redis.io/commands/hstrlen/">HSTRLEN</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HashVaradicDelete">
            <summary>
            Does <see href="https://redis.io/commands/hdel/">HDEL</see> support variadic usage?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.IncrementFloat">
            <summary>
            Are <see href="https://redis.io/commands/incrbyfloat/">INCRBYFLOAT</see> and <see href="https://redis.io/commands/hincrbyfloat/">HINCRBYFLOAT</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.InfoSections">
            <summary>
            Does <see href="https://redis.io/commands/info/">INFO</see> support sections?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ListInsert">
            <summary>
            Is <see href="https://redis.io/commands/linsert/">LINSERT</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Memory">
            <summary>
            Is <see href="https://redis.io/commands/memory/">MEMORY</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.MillisecondExpiry">
            <summary>
            Are <see href="https://redis.io/commands/pexpire/">PEXPIRE</see> and <see href="https://redis.io/commands/pttl/">PTTL</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Module">
            <summary>
            Is <see href="https://redis.io/commands/module/">MODULE</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.MultipleRandom">
            <summary>
            Does <see href="https://redis.io/commands/srandmember/">SRANDMEMBER</see> support the "count" option?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Persist">
            <summary>
            Is <see href="https://redis.io/commands/persist/">PERSIST</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PushIfNotExists">
            <summary>
            Are <see href="https://redis.io/commands/lpushx/">LPUSHX</see> and <see href="https://redis.io/commands/rpushx/">RPUSHX</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ReadOnlySort">
            <summary>
            Does this support <see href="https://redis.io/commands/sort_ro">SORT_RO</see>?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Scan">
            <summary>
            Is <see href="https://redis.io/commands/scan/">SCAN</see> (cursor-based scanning) available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Scripting">
            <summary>
            Are <see href="https://redis.io/commands/eval/">EVAL</see>, <see href="https://redis.io/commands/evalsha/">EVALSHA</see>, and other script commands available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetAndGet">
            <summary>
            Does <see href="https://redis.io/commands/set/">SET</see> support the <c>GET</c> option?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetConditional">
            <summary>
            Does <see href="https://redis.io/commands/set/">SET</see> support the <c>EX</c>, <c>PX</c>, <c>NX</c>, and <c>XX</c> options?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetKeepTtl">
            <summary>
            Does <see href="https://redis.io/commands/set/">SET</see> have the <c>KEEPTTL</c> option?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetNotExistsAndGet">
            <summary>
            Does <see href="https://redis.io/commands/set/">SET</see> allow the <c>NX</c> and <c>GET</c> options to be used together?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetVaradicAddRemove">
            <summary>
            Does <see href="https://redis.io/commands/sadd/">SADD</see> support variadic usage?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SortedSetPop">
            <summary>
            Are <see href="https://redis.io/commands/zpopmin/">ZPOPMIN</see> and <see href="https://redis.io/commands/zpopmax/">ZPOPMAX</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SortedSetRangeStore">
            <summary>
            Is <see href="https://redis.io/commands/zrangestore/">ZRANGESTORE</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Streams">
            <summary>
            Are <see href="https://redis.io/topics/streams-intro">Redis Streams</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.StringLength">
            <summary>
            Is <see href="https://redis.io/commands/strlen/">STRLEN</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.StringSetRange">
            <summary>
            Is <see href="https://redis.io/commands/setrange/">SETRANGE</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SwapDB">
            <summary>
            Is <see href="https://redis.io/commands/swapdb/">SWAPDB</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Time">
            <summary>
            Is <see href="https://redis.io/commands/time/">TIME</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Unlink">
            <summary>
            Is <see href="https://redis.io/commands/unlink/">UNLINK</see> available?
            </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">
            <inheritdoc cref="P:StackExchange.Redis.RedisFeatures.HyperLogLogCountReplicaSafe"/>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.HyperLogLogCountReplicaSafe">
            <summary>
            Is <see href="https://redis.io/commands/pfcount/">PFCOUNT</see> available on replicas?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Geo">
            <summary>
            Are <see href="https://redis.io/commands/?group=geo">geospatial commands</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PingOnSubscriber">
            <summary>
            Can <see href="https://redis.io/commands/ping/">PING</see> be used on a subscription connection?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.SetPopMultiple">
            <summary>
            Does <see href="https://redis.io/commands/spop/">SPOP</see> support popping multiple items?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.KeyTouch">
            <summary>
            Is <see href="https://redis.io/commands/touch/">TOUCH</see> available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.ReplicaCommands">
            <summary>
            Does the server prefer 'replica' terminology - '<see href="https://redis.io/commands/replicaof/">REPLICAOF</see>', etc?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.PushMultiple">
            <summary>
            Do list-push commands support multiple arguments?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Resp3">
            <summary>
            Is the RESP3 protocol available?
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisFeatures.Version">
            <summary>
            The Redis version of the server
            </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>
            <see langword="true"/> if <paramref name="obj" /> and this instance are the same type and represent the same value, <see langword="false"/> otherwise.
            </returns>
            <param name="obj">The object to compare with the current instance.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.Equals(StackExchange.Redis.RedisFeatures)">
            <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
            <returns>
            <see langword="true"/> if <paramref name="other" /> and this instance are the same type and represent the same value, <see langword="false"/> otherwise.
            </returns>
            <param name="other">The object to compare with the current instance.</param>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.op_Equality(StackExchange.Redis.RedisFeatures,StackExchange.Redis.RedisFeatures)">
            <summary>
            Checks if 2 <see cref="T:StackExchange.Redis.RedisFeatures"/> are .Equal().
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisFeatures.op_Inequality(StackExchange.Redis.RedisFeatures,StackExchange.Redis.RedisFeatures)">
            <summary>
            Checks if 2 <see cref="T:StackExchange.Redis.RedisFeatures"/> are not .Equal().
            </summary>
        </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 <see cref="M:System.Object.Equals(System.Object)"/>.
            </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">
            <inheritdoc/>
        </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.RedisProtocol">
            <summary>
            Indicates the protocol for communicating with the server.
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisProtocol.Resp2">
            <summary>
            The protocol used by all redis server versions since 1.2, as defined by https://github.com/redis/redis-specifications/blob/master/protocol/RESP2.md
            </summary>
        </member>
        <member name="F:StackExchange.Redis.RedisProtocol.Resp3">
            <summary>
            Opt-in variant introduced in server version 6, as defined by https://github.com/redis/redis-specifications/blob/master/protocol/RESP3.md
            </summary>
        </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.#ctor">
            <summary>
            Do not use.
            </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.RedisValue[],StackExchange.Redis.ResultType)">
            <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>
            <param name="resultType">The explicit data type.</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="M:StackExchange.Redis.RedisResult.Create(StackExchange.Redis.RedisResult[],StackExchange.Redis.ResultType)">
            <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>
            <param name="resultType">The explicit data type.</param>
            <returns> new <see cref="T:StackExchange.Redis.RedisResult"/>.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.EmptyArray(StackExchange.Redis.ResultType)">
            <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.NullSingle">
            <summary>
            A null single result, to use as a default for invalid returns.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.Length">
            <summary>
            Gets the number of elements in this item if it is a valid array, or <c>-1</c> otherwise.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.ToString">
            <inheritdoc/>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.ToString(System.String@)">
            <summary>
            Gets the string content as per <see cref="M:StackExchange.Redis.RedisResult.ToString"/>, but also obtains the declared type from verbatim strings (for example <c>LATENCY DOCTOR</c>)
            </summary>
            <param name="type">The type of the returned string.</param>
            <returns>The content</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisResult.TryCreate(StackExchange.Redis.PhysicalConnection,StackExchange.Redis.RawResult@,StackExchange.Redis.RedisResult@)">
            <summary>
            Internally, this is very similar to RawResult, except it is designed to be usable,
            outside of the IO-processing pipeline: the buffers are standalone, etc.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.Type">
            <summary>
            Indicate the type of result that was received from redis, in RESP2 terms.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.Resp3Type">
            <summary>
            Indicate the type of result that was received from redis, in RESP3 terms.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.RedisResult.Resp2Type">
            <summary>
            Indicate the type of result that was received from redis, in RESP2 terms.
            </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="P:StackExchange.Redis.RedisResult.Item(System.Int32)">
            <summary>
            Get a sub-item by index.
            </summary>
        </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(StackExchange.Redis.SimulatedFailureType)">
            <summary>
            For testing only
            </summary>
        </member>
        <member name="T:StackExchange.Redis.RedisSubscriber">
            <summary>
            A <see cref="T:StackExchange.Redis.RedisBase"/> wrapper for subscription actions.
            </summary>
            <remarks>
            By having most functionality here and state on <see cref="T:StackExchange.Redis.ConnectionMultiplexer.Subscription"/>, we can
            use the baseline execution methods to take the normal message paths.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.RedisSubscriber.IsConnected(StackExchange.Redis.RedisChannel)">
            <summary>
            This is *could* we be connected, as in "what's the theoretical endpoint for this channel?",
            rather than if we're actually connected and actually listening on that channel.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.RedisSubscriber.UnregisterSubscription(StackExchange.Redis.RedisChannel@,System.Action{StackExchange.Redis.RedisChannel,StackExchange.Redis.RedisValue},StackExchange.Redis.ChannelMessageQueue,StackExchange.Redis.ConnectionMultiplexer.Subscription@)">
            <summary>
            Unregisters a handler or queue and returns if we should remove it from the server.
            </summary>
            <returns><see langword="true"/> if we should remove the subscription from the server, <see langword="false"/> otherwise.</returns>
        </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 **underlying** value is a primitive integer (signed or unsigned); this is **not**
            the same as whether the value can be *treated* as an integer - see <seealso cref="M:StackExchange.Redis.RedisValue.TryParse(System.Int32@)"/>
            and <seealso cref="M:StackExchange.Redis.RedisValue.TryParse(System.Int64@)"/>, which is usually the more appropriate test.
            </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 <see cref="M:System.Object.Equals(System.Object)"/>.
            </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">
            <inheritdoc/>
        </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 <see cref="T:System.ReadOnlyMemory`1"/>.
            </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>
            Convert to a signed <see cref="T:System.Int64"/> if possible.
            </summary>
            <param name="val">The <see cref="T:System.Int64"/> value, if conversion was possible.</param>
            <returns><see langword="true"/> if successfully parsed, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.TryParse(System.Int32@)">
            <summary>
            Convert to an <see cref="T:System.Int32"/> if possible.
            </summary>
            <param name="val">The <see cref="T:System.Int32"/> value, if conversion was possible.</param>
            <returns><see langword="true"/> if successfully parsed, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.TryParse(System.Double@)">
            <summary>
            Convert to a <see cref="T:System.Double"/> if possible.
            </summary>
            <param name="val">The <see cref="T:System.Double"/> value, if conversion was possible.</param>
            <returns><see langword="true"/> if successfully parsed, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="M:StackExchange.Redis.RedisValue.CreateFrom(System.IO.MemoryStream)">
            <summary>
            Create a <see cref="T:StackExchange.Redis.RedisValue"/> from a <see cref="T:System.IO.MemoryStream"/>.
            It will *attempt* to use the internal buffer directly, but if this isn't possible it will fallback to <see cref="M:System.IO.MemoryStream.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="F:StackExchange.Redis.ResultProcessor.ScriptLoadProcessor.SHA1Length">
            <summary>
            Anything hashed with SHA1 has exactly 40 characters. We can use that as a shortcut in the code bellow.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultProcessor.LongestCommonSubsequenceProcessor">
            <summary>
            Parser for the https://redis.io/commands/lcs/ format with the <see cref="F:StackExchange.Redis.RedisLiterals.IDX"/> and <see cref="F:StackExchange.Redis.RedisLiterals.WITHMATCHLEN"/> arguments.
            </summary>
            <remarks>
            Example response:
            1) "matches"
            2) 1) 1) 1) (integer) 4
                     2) (integer) 7
                  2) 1) (integer) 5
                     2) (integer) 8
                  3) (integer) 4
            3) "len"
            4) (integer) 6
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ResultProcessor.SingleStreamProcessor.SetResultCore(StackExchange.Redis.PhysicalConnection,StackExchange.Redis.Message,StackExchange.Redis.RawResult@)">
            <summary>
            Handles <see href="https://redis.io/commands/xread"/>.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultProcessor.MultiStreamProcessor">
            <summary>
            Handles <see href="https://redis.io/commands/xread"/>.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultProcessor.StreamAutoClaimProcessor">
            <summary>
            This processor is for <see cref="F:StackExchange.Redis.RedisCommand.XAUTOCLAIM"/> *without* the <see cref="F:StackExchange.Redis.StreamConstants.JustId"/> option.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultProcessor.StreamAutoClaimIdsOnlyProcessor">
            <summary>
            This processor is for <see cref="F:StackExchange.Redis.RedisCommand.XAUTOCLAIM"/> *with* the <see cref="F:StackExchange.Redis.StreamConstants.JustId"/> option.
            </summary>
        </member>
        <member name="T:StackExchange.Redis.ResultProcessor.StreamProcessorBase`1">
            <summary>
            Handles stream responses. For formats, see <see href="https://redis.io/topics/streams-intro"/>.
            </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><seealso href="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 primary node.
            </summary>
            <remarks><seealso href="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="M:StackExchange.Redis.Role.Master.Replica.ToString">
            <inheritdoc/>
        </member>
        <member name="T:StackExchange.Redis.Role.Replica">
            <summary>
            Result of the ROLE command for a replica node.
            </summary>
            <remarks><seealso href="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 primary node for this replica.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.Role.Replica.MasterPort">
            <summary>
            The port number of the primary 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><seealso href="https://redis.io/commands/role#sentinel-output"/></remarks>
        </member>
        <member name="P:StackExchange.Redis.Role.Sentinel.MonitoredMasters">
            <summary>
            Primary 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 <see cref="T:StackExchange.Redis.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="P:StackExchange.Redis.ServerEndPoint.SupportsDatabases">
            <summary>
            Whether this endpoint supports databases at all.
            Note that some servers are cluster but present as standalone (e.g. Redis Enterprise), so we respect
            <see cref="F:StackExchange.Redis.RedisCommand.SELECT"/> being disabled here as a performance workaround.
            </summary>
            <remarks>
            This is memoized because it's accessed on hot paths inside the write lock.
            </remarks>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.OnConnectedAsync(Microsoft.Extensions.Logging.ILogger,System.Boolean,System.Boolean)">
            <summary>
            Awaitable state seeing if this endpoint is connected.
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerEndPoint.Protocol">
            <summary>
            If we have a connection (interactive), report the protocol being used
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.NextReplicaOffset">
            <summary>
            Used to round-robin between multiple replicas
            </summary>
        </member>
        <member name="P:StackExchange.Redis.ServerEndPoint.TieBreakerResult">
            <summary>
            Result of the latest tie breaker (from the last reconfigure).
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.ForceExponentialBackoffReplicationCheck">
            <summary>
            Forces frequent replication check starting from 1 second up to max ConfigCheckSeconds with an exponential increment.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.WriteDirectOrQueueFireAndForgetAsync``1(StackExchange.Redis.PhysicalConnection,StackExchange.Redis.Message,StackExchange.Redis.ResultProcessor{``0})">
            <summary>
            Write the message directly to the pipe or fail...will not queue.
            </summary>
        </member>
        <member name="M:StackExchange.Redis.ServerEndPoint.SimulateConnectionFailure(StackExchange.Redis.SimulatedFailureType)">
            <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="M:StackExchange.Redis.ServerSelectionStrategy.HashSlot(StackExchange.Redis.RedisChannel@)">
            <summary>
            Computes the hash-slot that would be used by the given channel.
            </summary>
            <param name="channel">The <see cref="T:StackExchange.Redis.RedisChannel"/> to determine a slot ID for.</param>
        </member>
        <member name="M:StackExchange.Redis.ServerSelectionStrategy.GetClusterSlot(System.ReadOnlySpan{System.Byte})">
            <summary>
            Gets the hashslot for a given byte sequence.
            </summary>
            <remarks>
            HASH_SLOT = CRC16(key) mod 16384
            </remarks>
        </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.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="M:StackExchange.Redis.TaskExtensions.TimeoutAfter(System.Threading.Tasks.Task,System.Int32)">
            <summary>
            Licensed to the .NET Foundation under one or more agreements.
            The .NET Foundation licenses this file to you under the MIT license.
            </summary>
            <remarks>Inspired from <see href="https://github.com/dotnet/corefx/blob/81a246f3adf1eece3d981f1d8bb8ae9de12de9c6/src/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs#L15-L43"/></remarks>
        </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>
        <member name="T:StackExchange.Redis.ValueStopwatch">
            <summary>
            Optimization over <see cref="T:System.Diagnostics.Stopwatch"/>.
            </summary>
            <remarks>From <see href="https://github.com/dotnet/aspnetcore/blob/main/src/Shared/ValueStopwatch/ValueStopwatch.cs"/>.</remarks>
        </member>
    </members>
</doc>