in edge-hub/core/src/Microsoft.Azure.Devices.Routing.Core/query/ComparisonOperators.cs [11:44]
public static Bool Compare(CompareOp op, string s1, string s2)
{
if (!Undefined.IsDefined(s1) || !Undefined.IsDefined(s2) || s1 == null || s2 == null)
{
return Bool.Undefined;
}
Bool result;
switch (op)
{
case CompareOp.Eq:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) == 0);
break;
case CompareOp.Ne:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) != 0);
break;
case CompareOp.Lt:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) < 0);
break;
case CompareOp.Le:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) <= 0);
break;
case CompareOp.Gt:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) > 0);
break;
case CompareOp.Ge:
result = (Bool)(string.Compare(s1, s2, StringComparison.Ordinal) >= 0);
break;
default:
throw new ArgumentOutOfRangeException(nameof(op), op, null);
}
return result;
}