blob: 021818349a7aff9a5d9e9d483b339a4b329dc931 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
namespace Crupest.V2ray;
public record V2rayRoutingRule(V2rayRoutingRuleMatcher Matcher, string OutboundTag)
{
public static Dictionary<string, List<V2rayRoutingRule>> GroupByOutboundTag(List<V2rayRoutingRule> rules)
{
var result = new Dictionary<string, List<V2rayRoutingRule>>();
foreach (var group in rules.GroupBy(r => r.OutboundTag))
{
result[group.Key] = group.ToList();
}
return result;
}
public static Dictionary<V2rayRoutingRuleMatcher.MatchByKind, List<V2rayRoutingRule>> GroupByMatchByKind(List<V2rayRoutingRule> rules)
{
var result = new Dictionary<V2rayRoutingRuleMatcher.MatchByKind, List<V2rayRoutingRule>>();
foreach (var group in rules.GroupBy(r => r.Matcher.MatchBy))
{
result[group.Key] = group.ToList();
}
return result;
}
}
|