Skip to content

Commit ac9ef43

Browse files
committed
mix merge/branch-drift
1 parent c37436b commit ac9ef43

6 files changed

Lines changed: 162 additions & 9 deletions

src/StackExchange.Redis/FrameworkShims.cs

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
using System.Threading.Tasks;
2+
3+
namespace StackExchange.Redis;
4+
5+
internal sealed partial class MultiGroupDatabase
6+
{
7+
// Array Async operations
8+
public Task<bool> ArraySetAsync(RedisKey key, RedisArrayIndex index, RedisValue value, CommandFlags flags = CommandFlags.None)
9+
=> GetActiveDatabase().ArraySetAsync(key, index, value, flags);
10+
11+
public Task<int> ArraySetAsync(RedisKey key, RedisArrayIndex index, RedisValue[] values, CommandFlags flags = CommandFlags.None)
12+
=> GetActiveDatabase().ArraySetAsync(key, index, values, flags);
13+
14+
public Task<int> ArraySetAsync(RedisKey key, RedisArrayEntry[] values, CommandFlags flags = CommandFlags.None)
15+
=> GetActiveDatabase().ArraySetAsync(key, values, flags);
16+
17+
public Task<RedisValue> ArrayGetAsync(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
18+
=> GetActiveDatabase().ArrayGetAsync(key, index, flags);
19+
20+
public Task<RedisValue[]> ArrayGetAsync(RedisKey key, RedisArrayIndex[] indices, CommandFlags flags = CommandFlags.None)
21+
=> GetActiveDatabase().ArrayGetAsync(key, indices, flags);
22+
23+
public Task<RedisValue[]> ArrayGetRangeAsync(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, CommandFlags flags = CommandFlags.None)
24+
=> GetActiveDatabase().ArrayGetRangeAsync(key, start, end, flags);
25+
26+
public Task<RedisArrayIndex> ArrayLengthAsync(RedisKey key, CommandFlags flags = CommandFlags.None)
27+
=> GetActiveDatabase().ArrayLengthAsync(key, flags);
28+
29+
public Task<RedisArrayIndex> ArrayCountAsync(RedisKey key, CommandFlags flags = CommandFlags.None)
30+
=> GetActiveDatabase().ArrayCountAsync(key, flags);
31+
32+
public Task<bool> ArrayDeleteAsync(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
33+
=> GetActiveDatabase().ArrayDeleteAsync(key, index, flags);
34+
35+
public Task<int> ArrayDeleteAsync(RedisKey key, RedisArrayIndex[] indices, CommandFlags flags = CommandFlags.None)
36+
=> GetActiveDatabase().ArrayDeleteAsync(key, indices, flags);
37+
38+
public Task<RedisArrayIndex> ArrayDeleteRangeAsync(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, CommandFlags flags = CommandFlags.None)
39+
=> GetActiveDatabase().ArrayDeleteRangeAsync(key, start, end, flags);
40+
41+
public Task<RedisArrayIndex> ArrayDeleteRangeAsync(RedisKey key, RedisArrayRange[] ranges, CommandFlags flags = CommandFlags.None)
42+
=> GetActiveDatabase().ArrayDeleteRangeAsync(key, ranges, flags);
43+
44+
public Task<RedisArrayEntry[]> ArrayScanAsync(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, int limit = 0, CommandFlags flags = CommandFlags.None)
45+
=> GetActiveDatabase().ArrayScanAsync(key, start, end, limit, flags);
46+
47+
public Task<RedisArrayEntry[]> ArrayGrepAsync(RedisKey key, ArrayGrepRequest request, CommandFlags flags = CommandFlags.None)
48+
=> GetActiveDatabase().ArrayGrepAsync(key, request, flags);
49+
50+
public Task<RedisValue> ArrayOperationAsync(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, ArrayOperation operation, RedisValue operand = default, CommandFlags flags = CommandFlags.None)
51+
=> GetActiveDatabase().ArrayOperationAsync(key, start, end, operation, operand, flags);
52+
53+
public Task<RedisArrayIndex> ArrayRingAsync(RedisKey key, RedisArrayIndex maxLength, RedisValue value, CommandFlags flags = CommandFlags.None)
54+
=> GetActiveDatabase().ArrayRingAsync(key, maxLength, value, flags);
55+
56+
public Task<RedisArrayIndex> ArrayRingAsync(RedisKey key, RedisArrayIndex maxLength, RedisValue[] values, CommandFlags flags = CommandFlags.None)
57+
=> GetActiveDatabase().ArrayRingAsync(key, maxLength, values, flags);
58+
59+
public Task<RedisArrayIndex?> ArrayNextAsync(RedisKey key, CommandFlags flags = CommandFlags.None)
60+
=> GetActiveDatabase().ArrayNextAsync(key, flags);
61+
62+
public Task<RedisArrayIndex> ArrayInsertAsync(RedisKey key, RedisValue value, CommandFlags flags = CommandFlags.None)
63+
=> GetActiveDatabase().ArrayInsertAsync(key, value, flags);
64+
65+
public Task<RedisArrayIndex> ArrayInsertAsync(RedisKey key, RedisValue[] values, CommandFlags flags = CommandFlags.None)
66+
=> GetActiveDatabase().ArrayInsertAsync(key, values, flags);
67+
68+
public Task<bool> ArraySeekAsync(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
69+
=> GetActiveDatabase().ArraySeekAsync(key, index, flags);
70+
71+
public Task<RedisValue[]> ArrayLastItemsAsync(RedisKey key, int count, bool reverse = false, CommandFlags flags = CommandFlags.None)
72+
=> GetActiveDatabase().ArrayLastItemsAsync(key, count, reverse, flags);
73+
74+
public Task<ArrayInfo> ArrayInfoAsync(RedisKey key, bool full = false, CommandFlags flags = CommandFlags.None)
75+
=> GetActiveDatabase().ArrayInfoAsync(key, full, flags);
76+
}
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
namespace StackExchange.Redis;
2+
3+
internal sealed partial class MultiGroupDatabase
4+
{
5+
// Array operations
6+
public bool ArraySet(RedisKey key, RedisArrayIndex index, RedisValue value, CommandFlags flags = CommandFlags.None)
7+
=> GetActiveDatabase().ArraySet(key, index, value, flags);
8+
9+
public int ArraySet(RedisKey key, RedisArrayIndex index, RedisValue[] values, CommandFlags flags = CommandFlags.None)
10+
=> GetActiveDatabase().ArraySet(key, index, values, flags);
11+
12+
public int ArraySet(RedisKey key, RedisArrayEntry[] values, CommandFlags flags = CommandFlags.None)
13+
=> GetActiveDatabase().ArraySet(key, values, flags);
14+
15+
public RedisValue ArrayGet(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
16+
=> GetActiveDatabase().ArrayGet(key, index, flags);
17+
18+
public RedisValue[] ArrayGet(RedisKey key, RedisArrayIndex[] indices, CommandFlags flags = CommandFlags.None)
19+
=> GetActiveDatabase().ArrayGet(key, indices, flags);
20+
21+
public RedisValue[] ArrayGetRange(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, CommandFlags flags = CommandFlags.None)
22+
=> GetActiveDatabase().ArrayGetRange(key, start, end, flags);
23+
24+
public RedisArrayIndex ArrayLength(RedisKey key, CommandFlags flags = CommandFlags.None)
25+
=> GetActiveDatabase().ArrayLength(key, flags);
26+
27+
public RedisArrayIndex ArrayCount(RedisKey key, CommandFlags flags = CommandFlags.None)
28+
=> GetActiveDatabase().ArrayCount(key, flags);
29+
30+
public bool ArrayDelete(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
31+
=> GetActiveDatabase().ArrayDelete(key, index, flags);
32+
33+
public int ArrayDelete(RedisKey key, RedisArrayIndex[] indices, CommandFlags flags = CommandFlags.None)
34+
=> GetActiveDatabase().ArrayDelete(key, indices, flags);
35+
36+
public RedisArrayIndex ArrayDeleteRange(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, CommandFlags flags = CommandFlags.None)
37+
=> GetActiveDatabase().ArrayDeleteRange(key, start, end, flags);
38+
39+
public RedisArrayIndex ArrayDeleteRange(RedisKey key, RedisArrayRange[] ranges, CommandFlags flags = CommandFlags.None)
40+
=> GetActiveDatabase().ArrayDeleteRange(key, ranges, flags);
41+
42+
public RedisArrayEntry[] ArrayScan(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, int limit = 0, CommandFlags flags = CommandFlags.None)
43+
=> GetActiveDatabase().ArrayScan(key, start, end, limit, flags);
44+
45+
public RedisArrayEntry[] ArrayGrep(RedisKey key, ArrayGrepRequest request, CommandFlags flags = CommandFlags.None)
46+
=> GetActiveDatabase().ArrayGrep(key, request, flags);
47+
48+
public RedisValue ArrayOperation(RedisKey key, RedisArrayIndex start, RedisArrayIndex end, ArrayOperation operation, RedisValue operand = default, CommandFlags flags = CommandFlags.None)
49+
=> GetActiveDatabase().ArrayOperation(key, start, end, operation, operand, flags);
50+
51+
public RedisArrayIndex ArrayRing(RedisKey key, RedisArrayIndex maxLength, RedisValue value, CommandFlags flags = CommandFlags.None)
52+
=> GetActiveDatabase().ArrayRing(key, maxLength, value, flags);
53+
54+
public RedisArrayIndex ArrayRing(RedisKey key, RedisArrayIndex maxLength, RedisValue[] values, CommandFlags flags = CommandFlags.None)
55+
=> GetActiveDatabase().ArrayRing(key, maxLength, values, flags);
56+
57+
public RedisArrayIndex? ArrayNext(RedisKey key, CommandFlags flags = CommandFlags.None)
58+
=> GetActiveDatabase().ArrayNext(key, flags);
59+
60+
public RedisArrayIndex ArrayInsert(RedisKey key, RedisValue value, CommandFlags flags = CommandFlags.None)
61+
=> GetActiveDatabase().ArrayInsert(key, value, flags);
62+
63+
public RedisArrayIndex ArrayInsert(RedisKey key, RedisValue[] values, CommandFlags flags = CommandFlags.None)
64+
=> GetActiveDatabase().ArrayInsert(key, values, flags);
65+
66+
public bool ArraySeek(RedisKey key, RedisArrayIndex index, CommandFlags flags = CommandFlags.None)
67+
=> GetActiveDatabase().ArraySeek(key, index, flags);
68+
69+
public RedisValue[] ArrayLastItems(RedisKey key, int count, bool reverse = false, CommandFlags flags = CommandFlags.None)
70+
=> GetActiveDatabase().ArrayLastItems(key, count, reverse, flags);
71+
72+
public ArrayInfo ArrayInfo(RedisKey key, bool full = false, CommandFlags flags = CommandFlags.None)
73+
=> GetActiveDatabase().ArrayInfo(key, full, flags);
74+
}

src/StackExchange.Redis/MultiGroupDatabase.Strings.Async.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ public Task<long> StringIncrementAsync(RedisKey key, long value = 1, CommandFlag
7575
public Task<double> StringIncrementAsync(RedisKey key, double value, CommandFlags flags = CommandFlags.None)
7676
=> GetActiveDatabase().StringIncrementAsync(key, value, flags);
7777

78+
public Task<StringIncrementResult<long>> StringIncrementAsync(RedisKey key, long value, Expiration expiry, long? lowerBound = null, long? upperBound = null, IncrementOptions options = IncrementOptions.None, CommandFlags flags = CommandFlags.None)
79+
=> GetActiveDatabase().StringIncrementAsync(key, value, expiry, lowerBound, upperBound, options, flags);
80+
81+
public Task<StringIncrementResult<double>> StringIncrementAsync(RedisKey key, double value, Expiration expiry, double? lowerBound = null, double? upperBound = null, IncrementOptions options = IncrementOptions.None, CommandFlags flags = CommandFlags.None)
82+
=> GetActiveDatabase().StringIncrementAsync(key, value, expiry, lowerBound, upperBound, options, flags);
83+
7884
public Task<long> StringLengthAsync(RedisKey key, CommandFlags flags = CommandFlags.None)
7985
=> GetActiveDatabase().StringLengthAsync(key, flags);
8086

src/StackExchange.Redis/MultiGroupDatabase.Strings.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,12 @@ public long StringIncrement(RedisKey key, long value = 1, CommandFlags flags = C
7474
public double StringIncrement(RedisKey key, double value, CommandFlags flags = CommandFlags.None)
7575
=> GetActiveDatabase().StringIncrement(key, value, flags);
7676

77+
public StringIncrementResult<long> StringIncrement(RedisKey key, long value, Expiration expiry, long? lowerBound = null, long? upperBound = null, IncrementOptions options = IncrementOptions.None, CommandFlags flags = CommandFlags.None)
78+
=> GetActiveDatabase().StringIncrement(key, value, expiry, lowerBound, upperBound, options, flags);
79+
80+
public StringIncrementResult<double> StringIncrement(RedisKey key, double value, Expiration expiry, double? lowerBound = null, double? upperBound = null, IncrementOptions options = IncrementOptions.None, CommandFlags flags = CommandFlags.None)
81+
=> GetActiveDatabase().StringIncrement(key, value, expiry, lowerBound, upperBound, options, flags);
82+
7783
public long StringLength(RedisKey key, CommandFlags flags = CommandFlags.None)
7884
=> GetActiveDatabase().StringLength(key, flags);
7985

src/StackExchange.Redis/RespReaderExtensions.cs

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
using System;
22
using System.Buffers;
33
using System.Diagnostics;
4-
using System.Threading.Tasks;
54
using RESPite.Messages;
65

76
namespace StackExchange.Redis;
@@ -201,11 +200,4 @@ internal bool AnyNull()
201200
return false;
202201
}
203202
}
204-
205-
#if !NET
206-
extension(Task task)
207-
{
208-
public bool IsCompletedSuccessfully => task.Status is TaskStatus.RanToCompletion;
209-
}
210-
#endif
211203
}

0 commit comments

Comments
 (0)