168 references to JsonKind
Microsoft.CodeAnalysis.Features (168)
EmbeddedLanguages\Json\JsonHelpers.cs (8)
11using JsonToken = EmbeddedSyntaxToken<JsonKind>; 12using JsonTrivia = EmbeddedSyntaxTrivia<JsonKind>; 17JsonKind kind, ImmutableArray<JsonTrivia> leadingTrivia, 21public static JsonToken CreateToken(JsonKind kind, 26public static JsonToken CreateMissingToken(JsonKind kind) 29public static JsonTrivia CreateTrivia(JsonKind kind, VirtualCharSequence virtualChars) 32public static JsonTrivia CreateTrivia(JsonKind kind, VirtualCharSequence virtualChars, EmbeddedDiagnostic diagnostic) 35public static JsonTrivia CreateTrivia(JsonKind kind, VirtualCharSequence virtualChars, ImmutableArray<EmbeddedDiagnostic> diagnostics)
EmbeddedLanguages\Json\JsonLexer.cs (27)
17using JsonToken = EmbeddedSyntaxToken<JsonKind>; 18using JsonTrivia = EmbeddedSyntaxTrivia<JsonKind>; 45JsonKind.EndOfFile, leadingTrivia, 60private (VirtualCharSequence, JsonKind, EmbeddedDiagnostic? diagnostic) ScanNextTokenWorker() 65'{' => ScanSingleCharToken(JsonKind.OpenBraceToken), 66'}' => ScanSingleCharToken(JsonKind.CloseBraceToken), 67'[' => ScanSingleCharToken(JsonKind.OpenBracketToken), 68']' => ScanSingleCharToken(JsonKind.CloseBracketToken), 69'(' => ScanSingleCharToken(JsonKind.OpenParenToken), 70')' => ScanSingleCharToken(JsonKind.CloseParenToken), 71',' => ScanSingleCharToken(JsonKind.CommaToken), 72':' => ScanSingleCharToken(JsonKind.ColonToken), 84private (VirtualCharSequence, JsonKind, EmbeddedDiagnostic?) ScanString() 101return (GetCharsToCurrentPosition(start), JsonKind.StringToken, diagnostic); 115return (chars, JsonKind.StringToken, diagnostic); 166private (VirtualCharSequence, JsonKind, EmbeddedDiagnostic?) ScanText() 173return (GetCharsToCurrentPosition(start), JsonKind.TextToken, null); 187private (VirtualCharSequence, JsonKind, EmbeddedDiagnostic?) ScanSingleCharToken(JsonKind kind) 241return CreateTrivia(JsonKind.EndOfLineTrivia, GetCharsToCurrentPosition(start)); 246return CreateTrivia(JsonKind.EndOfLineTrivia, GetCharsToCurrentPosition(start)); 268return CreateTrivia(JsonKind.SingleLineCommentTrivia, chars, 289return CreateTrivia(JsonKind.SingleLineCommentTrivia, chars, 293return CreateTrivia(JsonKind.SingleLineCommentTrivia, chars); 308return CreateTrivia(JsonKind.MultiLineCommentTrivia, GetCharsToCurrentPosition(start)); 312return CreateTrivia(JsonKind.MultiLineCommentTrivia, GetCharsToCurrentPosition(start), 340return CreateTrivia(JsonKind.WhitespaceTrivia, GetCharsToCurrentPosition(start));
EmbeddedLanguages\Json\JsonNode.cs (2)
9internal abstract class JsonNode : EmbeddedSyntaxNode<JsonKind, JsonNode> 11protected JsonNode(JsonKind kind) : base(kind)
EmbeddedLanguages\Json\JsonNodes.cs (28)
12using JsonNodeOrToken = EmbeddedSyntaxNodeOrToken<JsonKind, JsonNode>; 13using JsonSeparatedList = EmbeddedSeparatedSyntaxNodeList<JsonKind, JsonNode, JsonValueNode>; 14using JsonToken = EmbeddedSyntaxToken<JsonKind>; 19: base(JsonKind.CompilationUnit) 22Debug.Assert(endOfFileToken.Kind == JsonKind.EndOfFile); 53protected JsonValueNode(JsonKind kind) 66: base(JsonKind.Text) 68Debug.Assert(textToken.Kind == JsonKind.TextToken); 93: base(JsonKind.Object) 95Debug.Assert(openBraceToken.Kind == JsonKind.OpenBraceToken); 96Debug.Assert(closeBraceToken.Kind == JsonKind.CloseBraceToken); 130: base(JsonKind.Array) 132Debug.Assert(openBracketToken.Kind == JsonKind.OpenBracketToken); 134Debug.Assert(closeBracketToken.Kind == JsonKind.CloseBracketToken); 165: base(JsonKind.NegativeLiteral) 167Debug.Assert(minusToken.Kind == JsonKind.MinusToken); 189internal sealed class JsonLiteralNode(JsonToken literalToken) : JsonValueNode(JsonKind.Literal) 212: base(JsonKind.CommaValue) 214Debug.Assert(commaToken.Kind == JsonKind.CommaToken); 236: base(JsonKind.Property) 240Debug.Assert(nameToken.Kind is JsonKind.StringToken or JsonKind.TextToken); 241Debug.Assert(colonToken.Kind == JsonKind.ColonToken); 278: base(JsonKind.Constructor) 280Debug.Assert(newKeyword.Kind == JsonKind.NewKeyword); 281Debug.Assert(nameToken.Kind == JsonKind.TextToken); 282Debug.Assert(openParenToken.Kind == JsonKind.OpenParenToken); 284Debug.Assert(closeParenToken.Kind == JsonKind.CloseParenToken);
EmbeddedLanguages\Json\JsonParser.cs (53)
19using JsonNodeOrToken = EmbeddedSyntaxNodeOrToken<JsonKind, JsonNode>; 20using JsonSeparatedList = EmbeddedSeparatedSyntaxNodeList<JsonKind, JsonNode, JsonValueNode>; 21using JsonToken = EmbeddedSyntaxToken<JsonKind>; 22using JsonTrivia = EmbeddedSyntaxTrivia<JsonKind>; 124Debug.Assert(_currentToken.Kind == JsonKind.EndOfFile); 172t => t.Kind is JsonKind.WhitespaceTrivia or JsonKind.EndOfLineTrivia)) 192if (child.Kind == JsonKind.CommaValue) 199else if (child.Kind == JsonKind.Property) 214JsonKind.Array => CheckArray((JsonArrayNode)node), 215JsonKind.Object => CheckObject((JsonObjectNode)node), 241if (child.Kind == JsonKind.Property) 256if (child is JsonLiteralNode { LiteralToken.Kind: JsonKind.StringToken }) 348allProperties = allProperties && value.Kind == JsonKind.Property; 356result.Add(ConsumeToken(JsonKind.CommaToken, allProperties ? s_commaExpected : null)); 365JsonKind.EndOfFile => false, 366JsonKind.CloseBraceToken => !_inObject, 367JsonKind.CloseBracketToken => !_inArray, 368JsonKind.CloseParenToken => !_inConstructor, 381JsonKind.OpenBraceToken => ParseObject(), 382JsonKind.OpenBracketToken => ParseArray(), 383JsonKind.CommaToken => ParseCommaValue(), 396JsonKind.MinusToken, literalToken.LeadingTrivia, 409Debug.Assert(_currentToken.Kind == JsonKind.ColonToken); 412if (stringLiteralOrText.Kind != JsonKind.StringToken) 413stringLiteralOrText = stringLiteralOrText.With(kind: JsonKind.TextToken); 420if (_currentToken.Kind == JsonKind.CommaToken) 424new JsonCommaValueNode(CreateMissingToken(JsonKind.CommaToken))); 426else if (_currentToken.Kind == JsonKind.EndOfFile) 430new JsonCommaValueNode(CreateMissingToken(JsonKind.CommaToken).AddDiagnosticIfNone(new EmbeddedDiagnostic( 436if (value.Kind == JsonKind.Property) 454return _currentToken.Kind == JsonKind.ColonToken 461if (token.Kind == JsonKind.StringToken) 472if (TryMatch(token, "NaN", JsonKind.NaNLiteralToken, out var newKind) || 473TryMatch(token, "null", JsonKind.NullLiteralToken, out newKind) || 474TryMatch(token, "true", JsonKind.TrueLiteralToken, out newKind) || 475TryMatch(token, "false", JsonKind.FalseLiteralToken, out newKind) || 476TryMatch(token, "Infinity", JsonKind.InfinityLiteralToken, out newKind) || 477TryMatch(token, "undefined", JsonKind.UndefinedLiteralToken, out newKind)) 487minusToken, newLiteralToken.With(kind: JsonKind.InfinityLiteralToken)); 492return new JsonLiteralNode(token.With(kind: JsonKind.NumberToken)); 495token.With(kind: JsonKind.TextToken).AddDiagnosticIfNone(new EmbeddedDiagnostic( 506token.With(kind: JsonKind.NewKeyword), 507ConsumeToken(JsonKind.TextToken, FeaturesResources.Name_expected), 508ConsumeToken(JsonKind.OpenParenToken, s_openParenExpected), 510ConsumeToken(JsonKind.CloseParenToken, s_closeParenExpected)); 516private static bool TryMatch(JsonToken token, string val, JsonKind kind, out JsonKind newKind) 557ConsumeToken(JsonKind.CloseBracketToken, s_closeBracketExpected)); 571ConsumeToken(JsonKind.CloseBraceToken, s_closeBraceExpected)); 577private JsonToken ConsumeToken(JsonKind kind, string? error) 590=> token.Kind == JsonKind.EndOfFile
EmbeddedLanguages\Json\JsonParser.JsonNetSyntaxChecks.cs (13)
15using JsonToken = EmbeddedSyntaxToken<JsonKind>; 25JsonKind.Array => CheckArray((JsonArrayNode)node), 26JsonKind.Object => CheckObject((JsonObjectNode)node), 27JsonKind.Constructor => CheckConstructor((JsonConstructorNode)node), 28JsonKind.Property => CheckProperty((JsonPropertyNode)node), 29JsonKind.Literal => CheckLiteral((JsonLiteralNode)node), 30JsonKind.NegativeLiteral => CheckNegativeLiteral((JsonNegativeLiteralNode)node), 53=> node.LiteralToken.Kind == JsonKind.NumberToken 58=> node.LiteralToken.Kind == JsonKind.NumberToken 167if (child.Kind != JsonKind.CommaValue && nextChild.Kind != JsonKind.CommaValue) 178if (child.Kind != JsonKind.Property) 186=> node.NameToken.Kind != JsonKind.StringToken && !IsLegalPropertyNameText(node.NameToken)
EmbeddedLanguages\Json\JsonParser.StrictSyntaxChecker.cs (21)
14using JsonToken = EmbeddedSyntaxToken<JsonKind>; 15using JsonTrivia = EmbeddedSyntaxTrivia<JsonKind>; 37JsonKind.Constructor => CheckConstructor((JsonConstructorNode)node), 38JsonKind.Literal => CheckLiteral((JsonLiteralNode)node, allowComments), 39JsonKind.NegativeLiteral => CheckNegativeLiteral((JsonNegativeLiteralNode)node), 40JsonKind.Property => CheckProperty((JsonPropertyNode)node, allowComments), 41JsonKind.Array => CheckArray((JsonArrayNode)node, allowTrailingCommas), 42JsonKind.Object => CheckObject((JsonObjectNode)node, allowTrailingCommas), 83JsonKind.MultiLineCommentTrivia or JsonKind.SingleLineCommentTrivia when !allowComments 85JsonKind.WhitespaceTrivia => CheckWhitespace(trivia), 113if (child.Kind != JsonKind.Property) 136if (child.Kind == JsonKind.CommaValue) 141if (child.Kind != JsonKind.CommaValue) 154if (node.NameToken.Kind != JsonKind.StringToken) 157if (node.Value.Kind == JsonKind.CommaValue) 167JsonKind.NaNLiteralToken or JsonKind.InfinityLiteralToken or JsonKind.UndefinedLiteralToken 169JsonKind.NumberToken => CheckNumber(node.LiteralToken, allowComments), 170JsonKind.StringToken => CheckString(node.LiteralToken, allowComments),
EmbeddedLanguages\Json\JsonTree.cs (1)
14ImmutableArray<EmbeddedDiagnostic> diagnostics) : EmbeddedSyntaxTree<JsonKind, JsonNode, JsonCompilationUnit>(text, root, diagnostics)
EmbeddedLanguages\Json\LanguageServices\JsonBraceMatcher.cs (1)
17using JsonToken = EmbeddedSyntaxToken<JsonKind>;
EmbeddedLanguages\Json\LanguageServices\JsonClassifier.cs (13)
18using JsonToken = EmbeddedSyntaxToken<JsonKind>; 19using JsonTrivia = EmbeddedSyntaxTrivia<JsonKind>; 97case JsonKind.CommaToken: 109if (trivia.Kind is JsonKind.MultiLineCommentTrivia or JsonKind.SingleLineCommentTrivia && 164case JsonKind.NumberToken: 168case JsonKind.StringToken: 172case JsonKind.TrueLiteralToken: 173case JsonKind.FalseLiteralToken: 174case JsonKind.NullLiteralToken: 175case JsonKind.UndefinedLiteralToken: 176case JsonKind.NaNLiteralToken: 177case JsonKind.InfinityLiteralToken:
EmbeddedLanguages\Json\LanguageServices\JsonLanguageDetector.cs (1)
106if (node.Kind == JsonKind.Object)