1- using System . Collections . ObjectModel ;
21using System . Text ;
32using JetBrains . Annotations ;
43
@@ -7,18 +6,20 @@ namespace JsonApiDotNetCore.Queries.Parsing;
76[ PublicAPI ]
87public sealed class QueryTokenizer
98{
10- public static readonly IReadOnlyDictionary < char , TokenKind > SingleCharacterToTokenKinds = new ReadOnlyDictionary < char , TokenKind > (
11- new Dictionary < char , TokenKind >
12- {
13- [ '(' ] = TokenKind . OpenParen ,
14- [ ')' ] = TokenKind . CloseParen ,
15- [ '[' ] = TokenKind . OpenBracket ,
16- [ ']' ] = TokenKind . CloseBracket ,
17- [ '.' ] = TokenKind . Period ,
18- [ ',' ] = TokenKind . Comma ,
19- [ ':' ] = TokenKind . Colon ,
20- [ '-' ] = TokenKind . Minus
21- } ) ;
9+ public static readonly IReadOnlyDictionary < char , TokenKind > SingleCharacterToTokenKinds = new Dictionary < char , TokenKind >
10+ {
11+ [ '(' ] = TokenKind . OpenParen ,
12+ [ ')' ] = TokenKind . CloseParen ,
13+ [ '[' ] = TokenKind . OpenBracket ,
14+ [ ']' ] = TokenKind . CloseBracket ,
15+ [ '.' ] = TokenKind . Period ,
16+ [ ',' ] = TokenKind . Comma ,
17+ [ ':' ] = TokenKind . Colon ,
18+ [ '-' ] = TokenKind . Minus
19+ } . AsReadOnly ( ) ;
20+
21+ internal static readonly IReadOnlyDictionary < TokenKind , char > TokenKindToSingleCharacterLookup =
22+ SingleCharacterToTokenKinds . ToDictionary ( pair => pair . Value , pair => pair . Key ) . AsReadOnly ( ) ;
2223
2324 private readonly string _source ;
2425 private readonly StringBuilder _textBuffer = new ( ) ;
0 commit comments