@@ -11,20 +11,27 @@ internal class TextParser
1111 private static char [ ] EscapeCharacters = new [ ] { '\\ ' , 'a' , 'b' , 'f' , 'n' , 'r' , 't' , 'v' } ;
1212
1313 // These aliases are supposed to simply the where clause and make it more human readable
14- // As an addition it is compatible with the OData.Filter specification
15- private static readonly Dictionary < string , TokenId > _predefinedAliases = new Dictionary < string , TokenId >
14+ private static readonly Dictionary < string , TokenId > _predefinedOperatorAliases = new Dictionary < string , TokenId > ( StringComparer . OrdinalIgnoreCase )
1615 {
17- { "eq" , TokenId . Equal } ,
18- { "ne" , TokenId . ExclamationEqual } ,
19- { "neq" , TokenId . ExclamationEqual } ,
20- { "lt" , TokenId . LessThan } ,
21- { "le" , TokenId . LessThanEqual } ,
22- { "gt" , TokenId . GreaterThan } ,
23- { "ge" , TokenId . GreaterThanEqual } ,
24- { "and" , TokenId . DoubleAmphersand } ,
25- { "or" , TokenId . DoubleBar } ,
26- { "not" , TokenId . Exclamation } ,
27- { "mod" , TokenId . Percent }
16+ { "eq" , TokenId . Equal } ,
17+ { "equal" , TokenId . Equal } ,
18+ { "ne" , TokenId . ExclamationEqual } ,
19+ { "notequal" , TokenId . ExclamationEqual } ,
20+ { "neq" , TokenId . ExclamationEqual } ,
21+ { "lt" , TokenId . LessThan } ,
22+ { "LessThan" , TokenId . LessThan } ,
23+ { "le" , TokenId . LessThanEqual } ,
24+ { "LessThanEqual" , TokenId . LessThanEqual } ,
25+ { "gt" , TokenId . GreaterThan } ,
26+ { "GreaterThan" , TokenId . GreaterThan } ,
27+ { "ge" , TokenId . GreaterThanEqual } ,
28+ { "GreaterThanEqual" , TokenId . GreaterThanEqual } ,
29+ { "and" , TokenId . DoubleAmphersand } ,
30+ { "AndAlso" , TokenId . DoubleAmphersand } ,
31+ { "or" , TokenId . DoubleBar } ,
32+ { "OrElse" , TokenId . DoubleBar } ,
33+ { "not" , TokenId . Exclamation } ,
34+ { "mod" , TokenId . Percent }
2835 } ;
2936
3037 private readonly string _text ;
@@ -451,7 +458,7 @@ private static Exception ParseError(int pos, string format, params object[] args
451458
452459 private static TokenId GetAliasedTokenId ( TokenId tokenId , string alias )
453460 {
454- return tokenId == TokenId . Identifier && _predefinedAliases . TryGetValue ( alias , out TokenId id ) ? id : tokenId ;
461+ return tokenId == TokenId . Identifier && _predefinedOperatorAliases . TryGetValue ( alias , out TokenId id ) ? id : tokenId ;
455462 }
456463
457464 private static bool IsHexChar ( char c )
0 commit comments