1015 references to SyntaxKind
Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver (1015)
CSharp\MemberSignatureParser.cs (20)
238
var
kind = CurrentToken.KeywordKind;
239
if (kind !=
SyntaxKind
.RefKeyword && kind !=
SyntaxKind
.OutKeyword)
283
private static SpecialType GetSpecialType(
SyntaxKind
kind)
287
case
SyntaxKind
.VoidKeyword:
289
case
SyntaxKind
.BoolKeyword:
291
case
SyntaxKind
.CharKeyword:
293
case
SyntaxKind
.SByteKeyword:
295
case
SyntaxKind
.ByteKeyword:
297
case
SyntaxKind
.ShortKeyword:
299
case
SyntaxKind
.UShortKeyword:
301
case
SyntaxKind
.IntKeyword:
303
case
SyntaxKind
.UIntKeyword:
305
case
SyntaxKind
.LongKeyword:
307
case
SyntaxKind
.ULongKeyword:
309
case
SyntaxKind
.FloatKeyword:
311
case
SyntaxKind
.DoubleKeyword:
313
case
SyntaxKind
.StringKeyword:
315
case
SyntaxKind
.ObjectKeyword:
317
case
SyntaxKind
.DecimalKeyword:
CSharp\Scanner.cs (6)
39
internal readonly
SyntaxKind
KeywordKind;
41
internal Token(TokenKind kind, string text = null,
SyntaxKind
keywordKind =
SyntaxKind
.None)
127
var
keywordKind = verbatim
128
?
SyntaxKind
.None
130
if (keywordKind ==
SyntaxKind
.None)
src\Compilers\CSharp\Portable\Syntax\SyntaxKindFacts.cs (989)
13
public static bool IsKeywordKind(
SyntaxKind
kind)
18
public static IEnumerable<
SyntaxKind
> GetReservedKeywordKinds()
20
for (int i = (int)
SyntaxKind
.BoolKeyword; i <= (int)
SyntaxKind
.ImplicitKeyword; i++)
22
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
23
yield return (
SyntaxKind
)i;
27
public static IEnumerable<
SyntaxKind
> GetKeywordKinds()
29
foreach (
var
reserved in GetReservedKeywordKinds())
34
foreach (
var
contextual in GetContextualKeywordKinds())
40
public static bool IsReservedKeyword(
SyntaxKind
kind)
42
return kind >=
SyntaxKind
.BoolKeyword && kind <=
SyntaxKind
.ImplicitKeyword;
45
public static bool IsAttributeTargetSpecifier(
SyntaxKind
kind)
49
case
SyntaxKind
.AssemblyKeyword:
50
case
SyntaxKind
.ModuleKeyword:
51
case
SyntaxKind
.EventKeyword:
52
case
SyntaxKind
.FieldKeyword:
53
case
SyntaxKind
.MethodKeyword:
54
case
SyntaxKind
.ParamKeyword:
55
case
SyntaxKind
.PropertyKeyword:
56
case
SyntaxKind
.ReturnKeyword:
57
case
SyntaxKind
.TypeKeyword:
58
case
SyntaxKind
.TypeVarKeyword:
65
public static bool IsAccessibilityModifier(
SyntaxKind
kind)
69
case
SyntaxKind
.PrivateKeyword:
70
case
SyntaxKind
.ProtectedKeyword:
71
case
SyntaxKind
.InternalKeyword:
72
case
SyntaxKind
.PublicKeyword:
79
public static bool IsPreprocessorKeyword(
SyntaxKind
kind)
83
case
SyntaxKind
.TrueKeyword:
84
case
SyntaxKind
.FalseKeyword:
85
case
SyntaxKind
.DefaultKeyword:
86
case
SyntaxKind
.IfKeyword:
87
case
SyntaxKind
.ElseKeyword:
88
case
SyntaxKind
.ElifKeyword:
89
case
SyntaxKind
.EndIfKeyword:
90
case
SyntaxKind
.RegionKeyword:
91
case
SyntaxKind
.EndRegionKeyword:
92
case
SyntaxKind
.DefineKeyword:
93
case
SyntaxKind
.UndefKeyword:
94
case
SyntaxKind
.WarningKeyword:
95
case
SyntaxKind
.ErrorKeyword:
96
case
SyntaxKind
.LineKeyword:
97
case
SyntaxKind
.PragmaKeyword:
98
case
SyntaxKind
.HiddenKeyword:
99
case
SyntaxKind
.ChecksumKeyword:
100
case
SyntaxKind
.DisableKeyword:
101
case
SyntaxKind
.RestoreKeyword:
102
case
SyntaxKind
.ReferenceKeyword:
103
case
SyntaxKind
.LoadKeyword:
104
case
SyntaxKind
.NullableKeyword:
105
case
SyntaxKind
.EnableKeyword:
106
case
SyntaxKind
.WarningsKeyword:
107
case
SyntaxKind
.AnnotationsKeyword:
123
internal static bool IsPreprocessorContextualKeyword(
SyntaxKind
kind)
127
case
SyntaxKind
.TrueKeyword:
128
case
SyntaxKind
.FalseKeyword:
129
case
SyntaxKind
.DefaultKeyword:
130
case
SyntaxKind
.HiddenKeyword:
131
case
SyntaxKind
.ChecksumKeyword:
132
case
SyntaxKind
.DisableKeyword:
133
case
SyntaxKind
.RestoreKeyword:
134
case
SyntaxKind
.EnableKeyword:
135
case
SyntaxKind
.WarningsKeyword:
136
case
SyntaxKind
.AnnotationsKeyword:
143
public static IEnumerable<
SyntaxKind
> GetPreprocessorKeywordKinds()
145
yield return
SyntaxKind
.TrueKeyword;
146
yield return
SyntaxKind
.FalseKeyword;
147
yield return
SyntaxKind
.DefaultKeyword;
149
for (int i = (int)
SyntaxKind
.ElifKeyword; i <= (int)
SyntaxKind
.RestoreKeyword; i++)
151
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
152
yield return (
SyntaxKind
)i;
156
public static bool IsPunctuation(
SyntaxKind
kind)
158
return kind >=
SyntaxKind
.TildeToken && kind <=
SyntaxKind
.GreaterThanGreaterThanGreaterThanEqualsToken;
161
public static bool IsLanguagePunctuation(
SyntaxKind
kind)
166
public static bool IsPreprocessorPunctuation(
SyntaxKind
kind)
168
return kind ==
SyntaxKind
.HashToken;
171
private static bool IsDebuggerSpecialPunctuation(
SyntaxKind
kind)
174
return kind ==
SyntaxKind
.DollarToken;
177
public static IEnumerable<
SyntaxKind
> GetPunctuationKinds()
179
for (int i = (int)
SyntaxKind
.TildeToken; i <= (int)
SyntaxKind
.DotDotToken; i++)
181
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
182
yield return (
SyntaxKind
)i;
185
for (int i = (int)
SyntaxKind
.SlashGreaterThanToken; i <= (int)
SyntaxKind
.XmlProcessingInstructionEndToken; i++)
187
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
188
yield return (
SyntaxKind
)i;
191
for (int i = (int)
SyntaxKind
.BarBarToken; i <= (int)
SyntaxKind
.QuestionQuestionEqualsToken; i++)
193
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
194
yield return (
SyntaxKind
)i;
197
yield return
SyntaxKind
.GreaterThanGreaterThanGreaterThanToken;
198
yield return
SyntaxKind
.GreaterThanGreaterThanGreaterThanEqualsToken;
201
public static bool IsPunctuationOrKeyword(
SyntaxKind
kind)
203
return kind >=
SyntaxKind
.TildeToken && kind <=
SyntaxKind
.EndOfFileToken;
206
internal static bool IsLiteral(
SyntaxKind
kind)
210
case
SyntaxKind
.IdentifierToken:
211
case
SyntaxKind
.StringLiteralToken:
212
case
SyntaxKind
.Utf8StringLiteralToken:
213
case
SyntaxKind
.SingleLineRawStringLiteralToken:
214
case
SyntaxKind
.Utf8SingleLineRawStringLiteralToken:
215
case
SyntaxKind
.MultiLineRawStringLiteralToken:
216
case
SyntaxKind
.Utf8MultiLineRawStringLiteralToken:
217
case
SyntaxKind
.CharacterLiteralToken:
218
case
SyntaxKind
.NumericLiteralToken:
219
case
SyntaxKind
.XmlTextLiteralToken:
220
case
SyntaxKind
.XmlTextLiteralNewLineToken:
221
case
SyntaxKind
.XmlEntityLiteralToken:
228
public static bool IsAnyToken(
SyntaxKind
kind)
230
if (kind >=
SyntaxKind
.TildeToken && kind <
SyntaxKind
.EndOfLineTrivia) return true;
233
case
SyntaxKind
.InterpolatedStringToken:
234
case
SyntaxKind
.InterpolatedStringStartToken:
235
case
SyntaxKind
.InterpolatedVerbatimStringStartToken:
236
case
SyntaxKind
.InterpolatedMultiLineRawStringStartToken:
237
case
SyntaxKind
.InterpolatedSingleLineRawStringStartToken:
238
case
SyntaxKind
.InterpolatedStringTextToken:
239
case
SyntaxKind
.InterpolatedStringEndToken:
240
case
SyntaxKind
.InterpolatedRawStringEndToken:
241
case
SyntaxKind
.LoadKeyword:
242
case
SyntaxKind
.NullableKeyword:
243
case
SyntaxKind
.EnableKeyword:
244
case
SyntaxKind
.UnderscoreToken:
245
case
SyntaxKind
.MultiLineRawStringLiteralToken:
246
case
SyntaxKind
.SingleLineRawStringLiteralToken:
253
public static bool IsTrivia(
SyntaxKind
kind)
257
case
SyntaxKind
.EndOfLineTrivia:
258
case
SyntaxKind
.WhitespaceTrivia:
259
case
SyntaxKind
.SingleLineCommentTrivia:
260
case
SyntaxKind
.MultiLineCommentTrivia:
261
case
SyntaxKind
.SingleLineDocumentationCommentTrivia:
262
case
SyntaxKind
.MultiLineDocumentationCommentTrivia:
263
case
SyntaxKind
.DisabledTextTrivia:
264
case
SyntaxKind
.DocumentationCommentExteriorTrivia:
265
case
SyntaxKind
.ConflictMarkerTrivia:
272
public static bool IsPreprocessorDirective(
SyntaxKind
kind)
276
case
SyntaxKind
.IfDirectiveTrivia:
277
case
SyntaxKind
.ElifDirectiveTrivia:
278
case
SyntaxKind
.ElseDirectiveTrivia:
279
case
SyntaxKind
.EndIfDirectiveTrivia:
280
case
SyntaxKind
.RegionDirectiveTrivia:
281
case
SyntaxKind
.EndRegionDirectiveTrivia:
282
case
SyntaxKind
.DefineDirectiveTrivia:
283
case
SyntaxKind
.UndefDirectiveTrivia:
284
case
SyntaxKind
.ErrorDirectiveTrivia:
285
case
SyntaxKind
.WarningDirectiveTrivia:
286
case
SyntaxKind
.LineDirectiveTrivia:
287
case
SyntaxKind
.LineSpanDirectiveTrivia:
288
case
SyntaxKind
.PragmaWarningDirectiveTrivia:
289
case
SyntaxKind
.PragmaChecksumDirectiveTrivia:
290
case
SyntaxKind
.ReferenceDirectiveTrivia:
291
case
SyntaxKind
.LoadDirectiveTrivia:
292
case
SyntaxKind
.BadDirectiveTrivia:
293
case
SyntaxKind
.ShebangDirectiveTrivia:
294
case
SyntaxKind
.IgnoredDirectiveTrivia:
295
case
SyntaxKind
.NullableDirectiveTrivia:
302
public static bool IsName(
SyntaxKind
kind)
306
case
SyntaxKind
.IdentifierName:
307
case
SyntaxKind
.GenericName:
308
case
SyntaxKind
.QualifiedName:
309
case
SyntaxKind
.AliasQualifiedName:
316
public static bool IsPredefinedType(
SyntaxKind
kind)
320
case
SyntaxKind
.BoolKeyword:
321
case
SyntaxKind
.ByteKeyword:
322
case
SyntaxKind
.SByteKeyword:
323
case
SyntaxKind
.IntKeyword:
324
case
SyntaxKind
.UIntKeyword:
325
case
SyntaxKind
.ShortKeyword:
326
case
SyntaxKind
.UShortKeyword:
327
case
SyntaxKind
.LongKeyword:
328
case
SyntaxKind
.ULongKeyword:
329
case
SyntaxKind
.FloatKeyword:
330
case
SyntaxKind
.DoubleKeyword:
331
case
SyntaxKind
.DecimalKeyword:
332
case
SyntaxKind
.StringKeyword:
333
case
SyntaxKind
.CharKeyword:
334
case
SyntaxKind
.ObjectKeyword:
335
case
SyntaxKind
.VoidKeyword:
342
public static bool IsTypeSyntax(
SyntaxKind
kind)
346
case
SyntaxKind
.ArrayType:
347
case
SyntaxKind
.PointerType:
348
case
SyntaxKind
.NullableType:
349
case
SyntaxKind
.PredefinedType:
350
case
SyntaxKind
.TupleType:
351
case
SyntaxKind
.FunctionPointerType:
361
public static bool IsGlobalMemberDeclaration(
SyntaxKind
kind)
365
case
SyntaxKind
.GlobalStatement:
366
case
SyntaxKind
.FieldDeclaration:
367
case
SyntaxKind
.MethodDeclaration:
368
case
SyntaxKind
.PropertyDeclaration:
369
case
SyntaxKind
.EventDeclaration:
370
case
SyntaxKind
.EventFieldDeclaration:
376
public static bool IsTypeDeclaration(
SyntaxKind
kind)
380
case
SyntaxKind
.ClassDeclaration:
381
case
SyntaxKind
.StructDeclaration:
382
case
SyntaxKind
.InterfaceDeclaration:
383
case
SyntaxKind
.DelegateDeclaration:
384
case
SyntaxKind
.EnumDeclaration:
385
case
SyntaxKind
.RecordDeclaration:
386
case
SyntaxKind
.RecordStructDeclaration:
387
case
SyntaxKind
.ExtensionDeclaration:
395
public static bool IsNamespaceMemberDeclaration(
SyntaxKind
kind)
397
kind ==
SyntaxKind
.NamespaceDeclaration ||
398
kind ==
SyntaxKind
.FileScopedNamespaceDeclaration;
400
public static bool IsAnyUnaryExpression(
SyntaxKind
token)
405
public static bool IsPrefixUnaryExpression(
SyntaxKind
token)
407
return GetPrefixUnaryExpression(token) !=
SyntaxKind
.None;
410
public static bool IsPrefixUnaryExpressionOperatorToken(
SyntaxKind
token)
412
return GetPrefixUnaryExpression(token) !=
SyntaxKind
.None;
415
public static
SyntaxKind
GetPrefixUnaryExpression(
SyntaxKind
token)
419
case
SyntaxKind
.PlusToken:
420
return
SyntaxKind
.UnaryPlusExpression;
421
case
SyntaxKind
.MinusToken:
422
return
SyntaxKind
.UnaryMinusExpression;
423
case
SyntaxKind
.TildeToken:
424
return
SyntaxKind
.BitwiseNotExpression;
425
case
SyntaxKind
.ExclamationToken:
426
return
SyntaxKind
.LogicalNotExpression;
427
case
SyntaxKind
.PlusPlusToken:
428
return
SyntaxKind
.PreIncrementExpression;
429
case
SyntaxKind
.MinusMinusToken:
430
return
SyntaxKind
.PreDecrementExpression;
431
case
SyntaxKind
.AmpersandToken:
432
return
SyntaxKind
.AddressOfExpression;
433
case
SyntaxKind
.AsteriskToken:
434
return
SyntaxKind
.PointerIndirectionExpression;
435
case
SyntaxKind
.CaretToken:
436
return
SyntaxKind
.IndexExpression;
438
return
SyntaxKind
.None;
442
public static bool IsPostfixUnaryExpression(
SyntaxKind
token)
444
return GetPostfixUnaryExpression(token) !=
SyntaxKind
.None;
447
public static bool IsPostfixUnaryExpressionToken(
SyntaxKind
token)
449
return GetPostfixUnaryExpression(token) !=
SyntaxKind
.None;
452
public static
SyntaxKind
GetPostfixUnaryExpression(
SyntaxKind
token)
456
case
SyntaxKind
.PlusPlusToken:
457
return
SyntaxKind
.PostIncrementExpression;
458
case
SyntaxKind
.MinusMinusToken:
459
return
SyntaxKind
.PostDecrementExpression;
460
case
SyntaxKind
.ExclamationToken:
461
return
SyntaxKind
.SuppressNullableWarningExpression;
463
return
SyntaxKind
.None;
467
internal static bool IsIncrementOrDecrementOperator(
SyntaxKind
token)
471
case
SyntaxKind
.PlusPlusToken:
472
case
SyntaxKind
.MinusMinusToken:
479
public static bool IsUnaryOperatorDeclarationToken(
SyntaxKind
token)
482
token ==
SyntaxKind
.TrueKeyword ||
483
token ==
SyntaxKind
.FalseKeyword;
486
public static bool IsAnyOverloadableOperator(
SyntaxKind
kind)
491
public static bool IsOverloadableBinaryOperator(
SyntaxKind
kind)
495
case
SyntaxKind
.PlusToken:
496
case
SyntaxKind
.MinusToken:
497
case
SyntaxKind
.AsteriskToken:
498
case
SyntaxKind
.SlashToken:
499
case
SyntaxKind
.PercentToken:
500
case
SyntaxKind
.CaretToken:
501
case
SyntaxKind
.AmpersandToken:
502
case
SyntaxKind
.BarToken:
503
case
SyntaxKind
.EqualsEqualsToken:
504
case
SyntaxKind
.LessThanToken:
505
case
SyntaxKind
.LessThanEqualsToken:
506
case
SyntaxKind
.LessThanLessThanToken:
507
case
SyntaxKind
.GreaterThanToken:
508
case
SyntaxKind
.GreaterThanEqualsToken:
509
case
SyntaxKind
.GreaterThanGreaterThanToken:
510
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanToken:
511
case
SyntaxKind
.ExclamationEqualsToken:
518
public static bool IsOverloadableUnaryOperator(
SyntaxKind
kind)
522
case
SyntaxKind
.PlusToken:
523
case
SyntaxKind
.MinusToken:
524
case
SyntaxKind
.TildeToken:
525
case
SyntaxKind
.ExclamationToken:
526
case
SyntaxKind
.PlusPlusToken:
527
case
SyntaxKind
.MinusMinusToken:
528
case
SyntaxKind
.TrueKeyword:
529
case
SyntaxKind
.FalseKeyword:
536
public static bool IsPrimaryFunction(
SyntaxKind
keyword)
538
return GetPrimaryFunction(keyword) !=
SyntaxKind
.None;
541
public static
SyntaxKind
GetPrimaryFunction(
SyntaxKind
keyword)
545
case
SyntaxKind
.MakeRefKeyword:
546
return
SyntaxKind
.MakeRefExpression;
547
case
SyntaxKind
.RefTypeKeyword:
548
return
SyntaxKind
.RefTypeExpression;
549
case
SyntaxKind
.RefValueKeyword:
550
return
SyntaxKind
.RefValueExpression;
551
case
SyntaxKind
.CheckedKeyword:
552
return
SyntaxKind
.CheckedExpression;
553
case
SyntaxKind
.UncheckedKeyword:
554
return
SyntaxKind
.UncheckedExpression;
555
case
SyntaxKind
.DefaultKeyword:
556
return
SyntaxKind
.DefaultExpression;
557
case
SyntaxKind
.TypeOfKeyword:
558
return
SyntaxKind
.TypeOfExpression;
559
case
SyntaxKind
.SizeOfKeyword:
560
return
SyntaxKind
.SizeOfExpression;
562
return
SyntaxKind
.None;
566
public static bool IsLiteralExpression(
SyntaxKind
token)
568
return GetLiteralExpression(token) !=
SyntaxKind
.None;
571
public static
SyntaxKind
GetLiteralExpression(
SyntaxKind
token)
575
SyntaxKind
.StringLiteralToken =>
SyntaxKind
.StringLiteralExpression,
576
SyntaxKind
.Utf8StringLiteralToken =>
SyntaxKind
.Utf8StringLiteralExpression,
577
SyntaxKind
.SingleLineRawStringLiteralToken =>
SyntaxKind
.StringLiteralExpression,
578
SyntaxKind
.Utf8SingleLineRawStringLiteralToken =>
SyntaxKind
.Utf8StringLiteralExpression,
579
SyntaxKind
.MultiLineRawStringLiteralToken =>
SyntaxKind
.StringLiteralExpression,
580
SyntaxKind
.Utf8MultiLineRawStringLiteralToken =>
SyntaxKind
.Utf8StringLiteralExpression,
581
SyntaxKind
.CharacterLiteralToken =>
SyntaxKind
.CharacterLiteralExpression,
582
SyntaxKind
.NumericLiteralToken =>
SyntaxKind
.NumericLiteralExpression,
583
SyntaxKind
.NullKeyword =>
SyntaxKind
.NullLiteralExpression,
584
SyntaxKind
.TrueKeyword =>
SyntaxKind
.TrueLiteralExpression,
585
SyntaxKind
.FalseKeyword =>
SyntaxKind
.FalseLiteralExpression,
586
SyntaxKind
.ArgListKeyword =>
SyntaxKind
.ArgListExpression,
587
_ =>
SyntaxKind
.None,
591
public static bool IsInstanceExpression(
SyntaxKind
token)
593
return GetInstanceExpression(token) !=
SyntaxKind
.None;
596
public static
SyntaxKind
GetInstanceExpression(
SyntaxKind
token)
600
case
SyntaxKind
.ThisKeyword:
601
return
SyntaxKind
.ThisExpression;
602
case
SyntaxKind
.BaseKeyword:
603
return
SyntaxKind
.BaseExpression;
605
return
SyntaxKind
.None;
609
public static bool IsBinaryExpression(
SyntaxKind
token)
611
return GetBinaryExpression(token) !=
SyntaxKind
.None;
614
public static bool IsBinaryExpressionOperatorToken(
SyntaxKind
token)
616
return GetBinaryExpression(token) !=
SyntaxKind
.None;
619
public static
SyntaxKind
GetBinaryExpression(
SyntaxKind
token)
623
case
SyntaxKind
.QuestionQuestionToken:
624
return
SyntaxKind
.CoalesceExpression;
625
case
SyntaxKind
.IsKeyword:
626
return
SyntaxKind
.IsExpression;
627
case
SyntaxKind
.AsKeyword:
628
return
SyntaxKind
.AsExpression;
629
case
SyntaxKind
.BarToken:
630
return
SyntaxKind
.BitwiseOrExpression;
631
case
SyntaxKind
.CaretToken:
632
return
SyntaxKind
.ExclusiveOrExpression;
633
case
SyntaxKind
.AmpersandToken:
634
return
SyntaxKind
.BitwiseAndExpression;
635
case
SyntaxKind
.EqualsEqualsToken:
636
return
SyntaxKind
.EqualsExpression;
637
case
SyntaxKind
.ExclamationEqualsToken:
638
return
SyntaxKind
.NotEqualsExpression;
639
case
SyntaxKind
.LessThanToken:
640
return
SyntaxKind
.LessThanExpression;
641
case
SyntaxKind
.LessThanEqualsToken:
642
return
SyntaxKind
.LessThanOrEqualExpression;
643
case
SyntaxKind
.GreaterThanToken:
644
return
SyntaxKind
.GreaterThanExpression;
645
case
SyntaxKind
.GreaterThanEqualsToken:
646
return
SyntaxKind
.GreaterThanOrEqualExpression;
647
case
SyntaxKind
.LessThanLessThanToken:
648
return
SyntaxKind
.LeftShiftExpression;
649
case
SyntaxKind
.GreaterThanGreaterThanToken:
650
return
SyntaxKind
.RightShiftExpression;
651
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanToken:
652
return
SyntaxKind
.UnsignedRightShiftExpression;
653
case
SyntaxKind
.PlusToken:
654
return
SyntaxKind
.AddExpression;
655
case
SyntaxKind
.MinusToken:
656
return
SyntaxKind
.SubtractExpression;
657
case
SyntaxKind
.AsteriskToken:
658
return
SyntaxKind
.MultiplyExpression;
659
case
SyntaxKind
.SlashToken:
660
return
SyntaxKind
.DivideExpression;
661
case
SyntaxKind
.PercentToken:
662
return
SyntaxKind
.ModuloExpression;
663
case
SyntaxKind
.AmpersandAmpersandToken:
664
return
SyntaxKind
.LogicalAndExpression;
665
case
SyntaxKind
.BarBarToken:
666
return
SyntaxKind
.LogicalOrExpression;
668
return
SyntaxKind
.None;
672
public static bool IsAssignmentExpression(
SyntaxKind
kind)
676
case
SyntaxKind
.CoalesceAssignmentExpression:
677
case
SyntaxKind
.OrAssignmentExpression:
678
case
SyntaxKind
.AndAssignmentExpression:
679
case
SyntaxKind
.ExclusiveOrAssignmentExpression:
680
case
SyntaxKind
.LeftShiftAssignmentExpression:
681
case
SyntaxKind
.RightShiftAssignmentExpression:
682
case
SyntaxKind
.UnsignedRightShiftAssignmentExpression:
683
case
SyntaxKind
.AddAssignmentExpression:
684
case
SyntaxKind
.SubtractAssignmentExpression:
685
case
SyntaxKind
.MultiplyAssignmentExpression:
686
case
SyntaxKind
.DivideAssignmentExpression:
687
case
SyntaxKind
.ModuloAssignmentExpression:
688
case
SyntaxKind
.SimpleAssignmentExpression:
695
public static bool IsAssignmentExpressionOperatorToken(
SyntaxKind
token)
699
case
SyntaxKind
.QuestionQuestionEqualsToken:
700
case
SyntaxKind
.BarEqualsToken:
701
case
SyntaxKind
.AmpersandEqualsToken:
702
case
SyntaxKind
.CaretEqualsToken:
703
case
SyntaxKind
.LessThanLessThanEqualsToken:
704
case
SyntaxKind
.GreaterThanGreaterThanEqualsToken:
705
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanEqualsToken:
706
case
SyntaxKind
.PlusEqualsToken:
707
case
SyntaxKind
.MinusEqualsToken:
708
case
SyntaxKind
.AsteriskEqualsToken:
709
case
SyntaxKind
.SlashEqualsToken:
710
case
SyntaxKind
.PercentEqualsToken:
711
case
SyntaxKind
.EqualsToken:
718
public static
SyntaxKind
GetAssignmentExpression(
SyntaxKind
token)
722
case
SyntaxKind
.BarEqualsToken:
723
return
SyntaxKind
.OrAssignmentExpression;
724
case
SyntaxKind
.AmpersandEqualsToken:
725
return
SyntaxKind
.AndAssignmentExpression;
726
case
SyntaxKind
.CaretEqualsToken:
727
return
SyntaxKind
.ExclusiveOrAssignmentExpression;
728
case
SyntaxKind
.LessThanLessThanEqualsToken:
729
return
SyntaxKind
.LeftShiftAssignmentExpression;
730
case
SyntaxKind
.GreaterThanGreaterThanEqualsToken:
731
return
SyntaxKind
.RightShiftAssignmentExpression;
732
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanEqualsToken:
733
return
SyntaxKind
.UnsignedRightShiftAssignmentExpression;
734
case
SyntaxKind
.PlusEqualsToken:
735
return
SyntaxKind
.AddAssignmentExpression;
736
case
SyntaxKind
.MinusEqualsToken:
737
return
SyntaxKind
.SubtractAssignmentExpression;
738
case
SyntaxKind
.AsteriskEqualsToken:
739
return
SyntaxKind
.MultiplyAssignmentExpression;
740
case
SyntaxKind
.SlashEqualsToken:
741
return
SyntaxKind
.DivideAssignmentExpression;
742
case
SyntaxKind
.PercentEqualsToken:
743
return
SyntaxKind
.ModuloAssignmentExpression;
744
case
SyntaxKind
.EqualsToken:
745
return
SyntaxKind
.SimpleAssignmentExpression;
746
case
SyntaxKind
.QuestionQuestionEqualsToken:
747
return
SyntaxKind
.CoalesceAssignmentExpression;
749
return
SyntaxKind
.None;
753
public static
SyntaxKind
GetCheckStatement(
SyntaxKind
keyword)
757
case
SyntaxKind
.CheckedKeyword:
758
return
SyntaxKind
.CheckedStatement;
759
case
SyntaxKind
.UncheckedKeyword:
760
return
SyntaxKind
.UncheckedStatement;
762
return
SyntaxKind
.None;
766
public static
SyntaxKind
GetAccessorDeclarationKind(
SyntaxKind
keyword)
770
case
SyntaxKind
.GetKeyword:
771
return
SyntaxKind
.GetAccessorDeclaration;
772
case
SyntaxKind
.SetKeyword:
773
return
SyntaxKind
.SetAccessorDeclaration;
774
case
SyntaxKind
.InitKeyword:
775
return
SyntaxKind
.InitAccessorDeclaration;
776
case
SyntaxKind
.AddKeyword:
777
return
SyntaxKind
.AddAccessorDeclaration;
778
case
SyntaxKind
.RemoveKeyword:
779
return
SyntaxKind
.RemoveAccessorDeclaration;
781
return
SyntaxKind
.None;
785
public static bool IsAccessorDeclaration(
SyntaxKind
kind)
789
case
SyntaxKind
.GetAccessorDeclaration:
790
case
SyntaxKind
.SetAccessorDeclaration:
791
case
SyntaxKind
.InitAccessorDeclaration:
792
case
SyntaxKind
.AddAccessorDeclaration:
793
case
SyntaxKind
.RemoveAccessorDeclaration:
800
public static bool IsAccessorDeclarationKeyword(
SyntaxKind
keyword)
804
case
SyntaxKind
.GetKeyword:
805
case
SyntaxKind
.SetKeyword:
806
case
SyntaxKind
.InitKeyword:
807
case
SyntaxKind
.AddKeyword:
808
case
SyntaxKind
.RemoveKeyword:
815
public static
SyntaxKind
GetSwitchLabelKind(
SyntaxKind
keyword)
819
case
SyntaxKind
.CaseKeyword:
820
return
SyntaxKind
.CaseSwitchLabel;
821
case
SyntaxKind
.DefaultKeyword:
822
return
SyntaxKind
.DefaultSwitchLabel;
824
return
SyntaxKind
.None;
828
public static
SyntaxKind
GetBaseTypeDeclarationKind(
SyntaxKind
kind)
830
return kind ==
SyntaxKind
.EnumKeyword ?
SyntaxKind
.EnumDeclaration : GetTypeDeclarationKind(kind);
834
public static
SyntaxKind
GetTypeDeclarationKind(
SyntaxKind
kind)
838
case
SyntaxKind
.ClassKeyword:
839
return
SyntaxKind
.ClassDeclaration;
840
case
SyntaxKind
.StructKeyword:
841
return
SyntaxKind
.StructDeclaration;
842
case
SyntaxKind
.InterfaceKeyword:
843
return
SyntaxKind
.InterfaceDeclaration;
844
case
SyntaxKind
.RecordKeyword:
845
return
SyntaxKind
.RecordDeclaration;
847
return
SyntaxKind
.None;
851
public static
SyntaxKind
GetKeywordKind(string text)
856
return
SyntaxKind
.BoolKeyword;
858
return
SyntaxKind
.ByteKeyword;
860
return
SyntaxKind
.SByteKeyword;
862
return
SyntaxKind
.ShortKeyword;
864
return
SyntaxKind
.UShortKeyword;
866
return
SyntaxKind
.IntKeyword;
868
return
SyntaxKind
.UIntKeyword;
870
return
SyntaxKind
.LongKeyword;
872
return
SyntaxKind
.ULongKeyword;
874
return
SyntaxKind
.DoubleKeyword;
876
return
SyntaxKind
.FloatKeyword;
878
return
SyntaxKind
.DecimalKeyword;
880
return
SyntaxKind
.StringKeyword;
882
return
SyntaxKind
.CharKeyword;
884
return
SyntaxKind
.VoidKeyword;
886
return
SyntaxKind
.ObjectKeyword;
888
return
SyntaxKind
.TypeOfKeyword;
890
return
SyntaxKind
.SizeOfKeyword;
892
return
SyntaxKind
.NullKeyword;
894
return
SyntaxKind
.TrueKeyword;
896
return
SyntaxKind
.FalseKeyword;
898
return
SyntaxKind
.IfKeyword;
900
return
SyntaxKind
.ElseKeyword;
902
return
SyntaxKind
.WhileKeyword;
904
return
SyntaxKind
.ForKeyword;
906
return
SyntaxKind
.ForEachKeyword;
908
return
SyntaxKind
.DoKeyword;
910
return
SyntaxKind
.SwitchKeyword;
912
return
SyntaxKind
.CaseKeyword;
914
return
SyntaxKind
.DefaultKeyword;
916
return
SyntaxKind
.LockKeyword;
918
return
SyntaxKind
.TryKeyword;
920
return
SyntaxKind
.ThrowKeyword;
922
return
SyntaxKind
.CatchKeyword;
924
return
SyntaxKind
.FinallyKeyword;
926
return
SyntaxKind
.GotoKeyword;
928
return
SyntaxKind
.BreakKeyword;
930
return
SyntaxKind
.ContinueKeyword;
932
return
SyntaxKind
.ReturnKeyword;
934
return
SyntaxKind
.PublicKeyword;
936
return
SyntaxKind
.PrivateKeyword;
938
return
SyntaxKind
.InternalKeyword;
940
return
SyntaxKind
.ProtectedKeyword;
942
return
SyntaxKind
.StaticKeyword;
944
return
SyntaxKind
.ReadOnlyKeyword;
946
return
SyntaxKind
.SealedKeyword;
948
return
SyntaxKind
.ConstKeyword;
950
return
SyntaxKind
.FixedKeyword;
952
return
SyntaxKind
.StackAllocKeyword;
954
return
SyntaxKind
.VolatileKeyword;
956
return
SyntaxKind
.NewKeyword;
958
return
SyntaxKind
.OverrideKeyword;
960
return
SyntaxKind
.AbstractKeyword;
962
return
SyntaxKind
.VirtualKeyword;
964
return
SyntaxKind
.EventKeyword;
966
return
SyntaxKind
.ExternKeyword;
968
return
SyntaxKind
.RefKeyword;
970
return
SyntaxKind
.OutKeyword;
972
return
SyntaxKind
.InKeyword;
974
return
SyntaxKind
.IsKeyword;
976
return
SyntaxKind
.AsKeyword;
978
return
SyntaxKind
.ParamsKeyword;
980
return
SyntaxKind
.ArgListKeyword;
982
return
SyntaxKind
.MakeRefKeyword;
984
return
SyntaxKind
.RefTypeKeyword;
986
return
SyntaxKind
.RefValueKeyword;
988
return
SyntaxKind
.ThisKeyword;
990
return
SyntaxKind
.BaseKeyword;
992
return
SyntaxKind
.NamespaceKeyword;
994
return
SyntaxKind
.UsingKeyword;
996
return
SyntaxKind
.ClassKeyword;
998
return
SyntaxKind
.StructKeyword;
1000
return
SyntaxKind
.InterfaceKeyword;
1002
return
SyntaxKind
.EnumKeyword;
1004
return
SyntaxKind
.DelegateKeyword;
1006
return
SyntaxKind
.CheckedKeyword;
1008
return
SyntaxKind
.UncheckedKeyword;
1010
return
SyntaxKind
.UnsafeKeyword;
1012
return
SyntaxKind
.OperatorKeyword;
1014
return
SyntaxKind
.ImplicitKeyword;
1016
return
SyntaxKind
.ExplicitKeyword;
1018
return
SyntaxKind
.None;
1022
public static
SyntaxKind
GetOperatorKind(string operatorMetadataName)
1028
return
SyntaxKind
.PlusToken;
1030
case WellKnownMemberNames.BitwiseAndOperatorName: return
SyntaxKind
.AmpersandToken;
1031
case WellKnownMemberNames.BitwiseOrOperatorName: return
SyntaxKind
.BarToken;
1036
return
SyntaxKind
.MinusMinusToken;
1040
return
SyntaxKind
.SlashToken;
1042
case WellKnownMemberNames.EqualityOperatorName: return
SyntaxKind
.EqualsEqualsToken;
1043
case WellKnownMemberNames.ExclusiveOrOperatorName: return
SyntaxKind
.CaretToken;
1047
return
SyntaxKind
.ExplicitKeyword;
1050
case WellKnownMemberNames.FalseOperatorName: return
SyntaxKind
.FalseKeyword;
1051
case WellKnownMemberNames.GreaterThanOperatorName: return
SyntaxKind
.GreaterThanToken;
1052
case WellKnownMemberNames.GreaterThanOrEqualOperatorName: return
SyntaxKind
.GreaterThanEqualsToken;
1053
case WellKnownMemberNames.ImplicitConversionName: return
SyntaxKind
.ImplicitKeyword;
1057
return
SyntaxKind
.PlusPlusToken;
1059
case WellKnownMemberNames.InequalityOperatorName: return
SyntaxKind
.ExclamationEqualsToken;
1061
case WellKnownMemberNames.LeftShiftOperatorName: return
SyntaxKind
.LessThanLessThanToken;
1062
case WellKnownMemberNames.LessThanOperatorName: return
SyntaxKind
.LessThanToken;
1063
case WellKnownMemberNames.LessThanOrEqualOperatorName: return
SyntaxKind
.LessThanEqualsToken;
1065
case WellKnownMemberNames.LogicalNotOperatorName: return
SyntaxKind
.ExclamationToken;
1066
case WellKnownMemberNames.ModulusOperatorName: return
SyntaxKind
.PercentToken;
1070
return
SyntaxKind
.AsteriskToken;
1072
case WellKnownMemberNames.OnesComplementOperatorName: return
SyntaxKind
.TildeToken;
1073
case WellKnownMemberNames.RightShiftOperatorName: return
SyntaxKind
.GreaterThanGreaterThanToken;
1074
case WellKnownMemberNames.UnsignedRightShiftOperatorName: return
SyntaxKind
.GreaterThanGreaterThanGreaterThanToken;
1078
return
SyntaxKind
.MinusToken;
1080
case WellKnownMemberNames.TrueOperatorName: return
SyntaxKind
.TrueKeyword;
1084
return
SyntaxKind
.MinusToken;
1086
case WellKnownMemberNames.UnaryPlusOperatorName: return
SyntaxKind
.PlusToken;
1088
return
SyntaxKind
.None;
1111
public static
SyntaxKind
GetPreprocessorKeywordKind(string text)
1116
return
SyntaxKind
.TrueKeyword;
1118
return
SyntaxKind
.FalseKeyword;
1120
return
SyntaxKind
.DefaultKeyword;
1122
return
SyntaxKind
.IfKeyword;
1124
return
SyntaxKind
.ElseKeyword;
1126
return
SyntaxKind
.ElifKeyword;
1128
return
SyntaxKind
.EndIfKeyword;
1130
return
SyntaxKind
.RegionKeyword;
1132
return
SyntaxKind
.EndRegionKeyword;
1134
return
SyntaxKind
.DefineKeyword;
1136
return
SyntaxKind
.UndefKeyword;
1138
return
SyntaxKind
.WarningKeyword;
1140
return
SyntaxKind
.ErrorKeyword;
1142
return
SyntaxKind
.LineKeyword;
1144
return
SyntaxKind
.PragmaKeyword;
1146
return
SyntaxKind
.HiddenKeyword;
1148
return
SyntaxKind
.ChecksumKeyword;
1150
return
SyntaxKind
.DisableKeyword;
1152
return
SyntaxKind
.RestoreKeyword;
1154
return
SyntaxKind
.ReferenceKeyword;
1156
return
SyntaxKind
.LoadKeyword;
1158
return
SyntaxKind
.NullableKeyword;
1160
return
SyntaxKind
.EnableKeyword;
1162
return
SyntaxKind
.WarningsKeyword;
1164
return
SyntaxKind
.AnnotationsKeyword;
1166
return
SyntaxKind
.None;
1170
public static IEnumerable<
SyntaxKind
> GetContextualKeywordKinds()
1172
for (int i = (int)
SyntaxKind
.YieldKeyword; i <= (int)
SyntaxKind
.ExtensionKeyword; i++)
1177
Debug.Assert(Enum.IsDefined(typeof(
SyntaxKind
), (
SyntaxKind
)i));
1178
yield return (
SyntaxKind
)i;
1183
public static bool IsContextualKeyword(
SyntaxKind
kind)
1187
case
SyntaxKind
.YieldKeyword:
1188
case
SyntaxKind
.PartialKeyword:
1189
case
SyntaxKind
.FromKeyword:
1190
case
SyntaxKind
.GroupKeyword:
1191
case
SyntaxKind
.JoinKeyword:
1192
case
SyntaxKind
.IntoKeyword:
1193
case
SyntaxKind
.LetKeyword:
1194
case
SyntaxKind
.ByKeyword:
1195
case
SyntaxKind
.WhereKeyword:
1196
case
SyntaxKind
.SelectKeyword:
1197
case
SyntaxKind
.GetKeyword:
1198
case
SyntaxKind
.SetKeyword:
1199
case
SyntaxKind
.AddKeyword:
1200
case
SyntaxKind
.RemoveKeyword:
1201
case
SyntaxKind
.OrderByKeyword:
1202
case
SyntaxKind
.AliasKeyword:
1203
case
SyntaxKind
.OnKeyword:
1204
case
SyntaxKind
.EqualsKeyword:
1205
case
SyntaxKind
.AscendingKeyword:
1206
case
SyntaxKind
.DescendingKeyword:
1207
case
SyntaxKind
.AssemblyKeyword:
1208
case
SyntaxKind
.ModuleKeyword:
1209
case
SyntaxKind
.TypeKeyword:
1210
case
SyntaxKind
.GlobalKeyword:
1211
case
SyntaxKind
.FieldKeyword:
1212
case
SyntaxKind
.MethodKeyword:
1213
case
SyntaxKind
.ParamKeyword:
1214
case
SyntaxKind
.PropertyKeyword:
1215
case
SyntaxKind
.TypeVarKeyword:
1216
case
SyntaxKind
.NameOfKeyword:
1217
case
SyntaxKind
.AsyncKeyword:
1218
case
SyntaxKind
.AwaitKeyword:
1219
case
SyntaxKind
.WhenKeyword:
1220
case
SyntaxKind
.UnderscoreToken:
1221
case
SyntaxKind
.VarKeyword:
1222
case
SyntaxKind
.OrKeyword:
1223
case
SyntaxKind
.AndKeyword:
1224
case
SyntaxKind
.NotKeyword:
1225
case
SyntaxKind
.WithKeyword:
1226
case
SyntaxKind
.InitKeyword:
1227
case
SyntaxKind
.RecordKeyword:
1228
case
SyntaxKind
.ManagedKeyword:
1229
case
SyntaxKind
.UnmanagedKeyword:
1230
case
SyntaxKind
.RequiredKeyword:
1231
case
SyntaxKind
.ScopedKeyword:
1232
case
SyntaxKind
.FileKeyword:
1233
case
SyntaxKind
.AllowsKeyword:
1234
case
SyntaxKind
.ExtensionKeyword:
1241
public static bool IsQueryContextualKeyword(
SyntaxKind
kind)
1245
case
SyntaxKind
.FromKeyword:
1246
case
SyntaxKind
.WhereKeyword:
1247
case
SyntaxKind
.SelectKeyword:
1248
case
SyntaxKind
.GroupKeyword:
1249
case
SyntaxKind
.IntoKeyword:
1250
case
SyntaxKind
.OrderByKeyword:
1251
case
SyntaxKind
.JoinKeyword:
1252
case
SyntaxKind
.LetKeyword:
1253
case
SyntaxKind
.OnKeyword:
1254
case
SyntaxKind
.EqualsKeyword:
1255
case
SyntaxKind
.ByKeyword:
1256
case
SyntaxKind
.AscendingKeyword:
1257
case
SyntaxKind
.DescendingKeyword:
1264
public static
SyntaxKind
GetContextualKeywordKind(string text)
1269
return
SyntaxKind
.YieldKeyword;
1271
return
SyntaxKind
.PartialKeyword;
1273
return
SyntaxKind
.FromKeyword;
1275
return
SyntaxKind
.GroupKeyword;
1277
return
SyntaxKind
.JoinKeyword;
1279
return
SyntaxKind
.IntoKeyword;
1281
return
SyntaxKind
.LetKeyword;
1283
return
SyntaxKind
.ByKeyword;
1285
return
SyntaxKind
.WhereKeyword;
1287
return
SyntaxKind
.SelectKeyword;
1289
return
SyntaxKind
.GetKeyword;
1291
return
SyntaxKind
.SetKeyword;
1293
return
SyntaxKind
.AddKeyword;
1295
return
SyntaxKind
.RemoveKeyword;
1297
return
SyntaxKind
.OrderByKeyword;
1299
return
SyntaxKind
.AliasKeyword;
1301
return
SyntaxKind
.OnKeyword;
1303
return
SyntaxKind
.EqualsKeyword;
1305
return
SyntaxKind
.AscendingKeyword;
1307
return
SyntaxKind
.DescendingKeyword;
1309
return
SyntaxKind
.AssemblyKeyword;
1311
return
SyntaxKind
.ModuleKeyword;
1313
return
SyntaxKind
.TypeKeyword;
1315
return
SyntaxKind
.FieldKeyword;
1317
return
SyntaxKind
.MethodKeyword;
1319
return
SyntaxKind
.ParamKeyword;
1321
return
SyntaxKind
.PropertyKeyword;
1323
return
SyntaxKind
.TypeVarKeyword;
1325
return
SyntaxKind
.GlobalKeyword;
1327
return
SyntaxKind
.AsyncKeyword;
1329
return
SyntaxKind
.AwaitKeyword;
1331
return
SyntaxKind
.WhenKeyword;
1333
return
SyntaxKind
.NameOfKeyword;
1335
return
SyntaxKind
.UnderscoreToken;
1337
return
SyntaxKind
.VarKeyword;
1339
return
SyntaxKind
.AndKeyword;
1341
return
SyntaxKind
.OrKeyword;
1343
return
SyntaxKind
.NotKeyword;
1345
return
SyntaxKind
.WithKeyword;
1347
return
SyntaxKind
.InitKeyword;
1349
return
SyntaxKind
.RecordKeyword;
1351
return
SyntaxKind
.ManagedKeyword;
1353
return
SyntaxKind
.UnmanagedKeyword;
1355
return
SyntaxKind
.RequiredKeyword;
1357
return
SyntaxKind
.ScopedKeyword;
1359
return
SyntaxKind
.FileKeyword;
1361
return
SyntaxKind
.AllowsKeyword;
1363
return
SyntaxKind
.ExtensionKeyword;
1365
return
SyntaxKind
.None;
1369
public static string GetText(
SyntaxKind
kind)
1373
case
SyntaxKind
.TildeToken:
1375
case
SyntaxKind
.ExclamationToken:
1377
case
SyntaxKind
.DollarToken:
1379
case
SyntaxKind
.PercentToken:
1381
case
SyntaxKind
.CaretToken:
1383
case
SyntaxKind
.AmpersandToken:
1385
case
SyntaxKind
.AsteriskToken:
1387
case
SyntaxKind
.OpenParenToken:
1389
case
SyntaxKind
.CloseParenToken:
1391
case
SyntaxKind
.MinusToken:
1393
case
SyntaxKind
.PlusToken:
1395
case
SyntaxKind
.EqualsToken:
1397
case
SyntaxKind
.OpenBraceToken:
1399
case
SyntaxKind
.CloseBraceToken:
1401
case
SyntaxKind
.OpenBracketToken:
1403
case
SyntaxKind
.CloseBracketToken:
1405
case
SyntaxKind
.BarToken:
1407
case
SyntaxKind
.BackslashToken:
1409
case
SyntaxKind
.ColonToken:
1411
case
SyntaxKind
.SemicolonToken:
1413
case
SyntaxKind
.DoubleQuoteToken:
1415
case
SyntaxKind
.SingleQuoteToken:
1417
case
SyntaxKind
.LessThanToken:
1419
case
SyntaxKind
.CommaToken:
1421
case
SyntaxKind
.GreaterThanToken:
1423
case
SyntaxKind
.DotToken:
1425
case
SyntaxKind
.QuestionToken:
1427
case
SyntaxKind
.HashToken:
1429
case
SyntaxKind
.SlashToken:
1431
case
SyntaxKind
.SlashGreaterThanToken:
1433
case
SyntaxKind
.LessThanSlashToken:
1435
case
SyntaxKind
.XmlCommentStartToken:
1437
case
SyntaxKind
.XmlCommentEndToken:
1439
case
SyntaxKind
.XmlCDataStartToken:
1441
case
SyntaxKind
.XmlCDataEndToken:
1443
case
SyntaxKind
.XmlProcessingInstructionStartToken:
1445
case
SyntaxKind
.XmlProcessingInstructionEndToken:
1449
case
SyntaxKind
.BarBarToken:
1451
case
SyntaxKind
.AmpersandAmpersandToken:
1453
case
SyntaxKind
.MinusMinusToken:
1455
case
SyntaxKind
.PlusPlusToken:
1457
case
SyntaxKind
.ColonColonToken:
1459
case
SyntaxKind
.QuestionQuestionToken:
1461
case
SyntaxKind
.MinusGreaterThanToken:
1463
case
SyntaxKind
.ExclamationEqualsToken:
1465
case
SyntaxKind
.EqualsEqualsToken:
1467
case
SyntaxKind
.EqualsGreaterThanToken:
1469
case
SyntaxKind
.LessThanEqualsToken:
1471
case
SyntaxKind
.LessThanLessThanToken:
1473
case
SyntaxKind
.LessThanLessThanEqualsToken:
1475
case
SyntaxKind
.GreaterThanEqualsToken:
1477
case
SyntaxKind
.GreaterThanGreaterThanToken:
1479
case
SyntaxKind
.GreaterThanGreaterThanEqualsToken:
1481
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanToken:
1483
case
SyntaxKind
.GreaterThanGreaterThanGreaterThanEqualsToken:
1485
case
SyntaxKind
.SlashEqualsToken:
1487
case
SyntaxKind
.AsteriskEqualsToken:
1489
case
SyntaxKind
.BarEqualsToken:
1491
case
SyntaxKind
.AmpersandEqualsToken:
1493
case
SyntaxKind
.PlusEqualsToken:
1495
case
SyntaxKind
.MinusEqualsToken:
1497
case
SyntaxKind
.CaretEqualsToken:
1499
case
SyntaxKind
.PercentEqualsToken:
1501
case
SyntaxKind
.QuestionQuestionEqualsToken:
1503
case
SyntaxKind
.DotDotToken:
1507
case
SyntaxKind
.BoolKeyword:
1509
case
SyntaxKind
.ByteKeyword:
1511
case
SyntaxKind
.SByteKeyword:
1513
case
SyntaxKind
.ShortKeyword:
1515
case
SyntaxKind
.UShortKeyword:
1517
case
SyntaxKind
.IntKeyword:
1519
case
SyntaxKind
.UIntKeyword:
1521
case
SyntaxKind
.LongKeyword:
1523
case
SyntaxKind
.ULongKeyword:
1525
case
SyntaxKind
.DoubleKeyword:
1527
case
SyntaxKind
.FloatKeyword:
1529
case
SyntaxKind
.DecimalKeyword:
1531
case
SyntaxKind
.StringKeyword:
1533
case
SyntaxKind
.CharKeyword:
1535
case
SyntaxKind
.VoidKeyword:
1537
case
SyntaxKind
.ObjectKeyword:
1539
case
SyntaxKind
.TypeOfKeyword:
1541
case
SyntaxKind
.SizeOfKeyword:
1543
case
SyntaxKind
.NullKeyword:
1545
case
SyntaxKind
.TrueKeyword:
1547
case
SyntaxKind
.FalseKeyword:
1549
case
SyntaxKind
.IfKeyword:
1551
case
SyntaxKind
.ElseKeyword:
1553
case
SyntaxKind
.WhileKeyword:
1555
case
SyntaxKind
.ForKeyword:
1557
case
SyntaxKind
.ForEachKeyword:
1559
case
SyntaxKind
.DoKeyword:
1561
case
SyntaxKind
.SwitchKeyword:
1563
case
SyntaxKind
.CaseKeyword:
1565
case
SyntaxKind
.DefaultKeyword:
1567
case
SyntaxKind
.TryKeyword:
1569
case
SyntaxKind
.CatchKeyword:
1571
case
SyntaxKind
.FinallyKeyword:
1573
case
SyntaxKind
.LockKeyword:
1575
case
SyntaxKind
.GotoKeyword:
1577
case
SyntaxKind
.BreakKeyword:
1579
case
SyntaxKind
.ContinueKeyword:
1581
case
SyntaxKind
.ReturnKeyword:
1583
case
SyntaxKind
.ThrowKeyword:
1585
case
SyntaxKind
.PublicKeyword:
1587
case
SyntaxKind
.PrivateKeyword:
1589
case
SyntaxKind
.InternalKeyword:
1591
case
SyntaxKind
.ProtectedKeyword:
1593
case
SyntaxKind
.StaticKeyword:
1595
case
SyntaxKind
.ReadOnlyKeyword:
1597
case
SyntaxKind
.SealedKeyword:
1599
case
SyntaxKind
.ConstKeyword:
1601
case
SyntaxKind
.FixedKeyword:
1603
case
SyntaxKind
.StackAllocKeyword:
1605
case
SyntaxKind
.VolatileKeyword:
1607
case
SyntaxKind
.NewKeyword:
1609
case
SyntaxKind
.OverrideKeyword:
1611
case
SyntaxKind
.AbstractKeyword:
1613
case
SyntaxKind
.VirtualKeyword:
1615
case
SyntaxKind
.EventKeyword:
1617
case
SyntaxKind
.ExternKeyword:
1619
case
SyntaxKind
.RefKeyword:
1621
case
SyntaxKind
.OutKeyword:
1623
case
SyntaxKind
.InKeyword:
1625
case
SyntaxKind
.IsKeyword:
1627
case
SyntaxKind
.AsKeyword:
1629
case
SyntaxKind
.ParamsKeyword:
1631
case
SyntaxKind
.ArgListKeyword:
1633
case
SyntaxKind
.MakeRefKeyword:
1635
case
SyntaxKind
.RefTypeKeyword:
1637
case
SyntaxKind
.RefValueKeyword:
1639
case
SyntaxKind
.ThisKeyword:
1641
case
SyntaxKind
.BaseKeyword:
1643
case
SyntaxKind
.NamespaceKeyword:
1645
case
SyntaxKind
.UsingKeyword:
1647
case
SyntaxKind
.ClassKeyword:
1649
case
SyntaxKind
.StructKeyword:
1651
case
SyntaxKind
.InterfaceKeyword:
1653
case
SyntaxKind
.EnumKeyword:
1655
case
SyntaxKind
.DelegateKeyword:
1657
case
SyntaxKind
.CheckedKeyword:
1659
case
SyntaxKind
.UncheckedKeyword:
1661
case
SyntaxKind
.UnsafeKeyword:
1663
case
SyntaxKind
.OperatorKeyword:
1665
case
SyntaxKind
.ImplicitKeyword:
1667
case
SyntaxKind
.ExplicitKeyword:
1669
case
SyntaxKind
.ElifKeyword:
1671
case
SyntaxKind
.EndIfKeyword:
1673
case
SyntaxKind
.RegionKeyword:
1675
case
SyntaxKind
.EndRegionKeyword:
1677
case
SyntaxKind
.DefineKeyword:
1679
case
SyntaxKind
.UndefKeyword:
1681
case
SyntaxKind
.WarningKeyword:
1683
case
SyntaxKind
.ErrorKeyword:
1685
case
SyntaxKind
.LineKeyword:
1687
case
SyntaxKind
.PragmaKeyword:
1689
case
SyntaxKind
.HiddenKeyword:
1691
case
SyntaxKind
.ChecksumKeyword:
1693
case
SyntaxKind
.DisableKeyword:
1695
case
SyntaxKind
.RestoreKeyword:
1697
case
SyntaxKind
.ReferenceKeyword:
1699
case
SyntaxKind
.LoadKeyword:
1701
case
SyntaxKind
.NullableKeyword:
1703
case
SyntaxKind
.EnableKeyword:
1705
case
SyntaxKind
.WarningsKeyword:
1707
case
SyntaxKind
.AnnotationsKeyword:
1711
case
SyntaxKind
.YieldKeyword:
1713
case
SyntaxKind
.PartialKeyword:
1715
case
SyntaxKind
.FromKeyword:
1717
case
SyntaxKind
.GroupKeyword:
1719
case
SyntaxKind
.JoinKeyword:
1721
case
SyntaxKind
.IntoKeyword:
1723
case
SyntaxKind
.LetKeyword:
1725
case
SyntaxKind
.ByKeyword:
1727
case
SyntaxKind
.WhereKeyword:
1729
case
SyntaxKind
.SelectKeyword:
1731
case
SyntaxKind
.GetKeyword:
1733
case
SyntaxKind
.SetKeyword:
1735
case
SyntaxKind
.AddKeyword:
1737
case
SyntaxKind
.RemoveKeyword:
1739
case
SyntaxKind
.OrderByKeyword:
1741
case
SyntaxKind
.AliasKeyword:
1743
case
SyntaxKind
.OnKeyword:
1745
case
SyntaxKind
.EqualsKeyword:
1747
case
SyntaxKind
.AscendingKeyword:
1749
case
SyntaxKind
.DescendingKeyword:
1751
case
SyntaxKind
.AssemblyKeyword:
1753
case
SyntaxKind
.ModuleKeyword:
1755
case
SyntaxKind
.TypeKeyword:
1757
case
SyntaxKind
.FieldKeyword:
1759
case
SyntaxKind
.MethodKeyword:
1761
case
SyntaxKind
.ParamKeyword:
1763
case
SyntaxKind
.PropertyKeyword:
1765
case
SyntaxKind
.TypeVarKeyword:
1767
case
SyntaxKind
.GlobalKeyword:
1769
case
SyntaxKind
.NameOfKeyword:
1771
case
SyntaxKind
.AsyncKeyword:
1773
case
SyntaxKind
.AwaitKeyword:
1775
case
SyntaxKind
.WhenKeyword:
1777
case
SyntaxKind
.InterpolatedStringStartToken:
1779
case
SyntaxKind
.InterpolatedStringEndToken:
1781
case
SyntaxKind
.InterpolatedVerbatimStringStartToken:
1783
case
SyntaxKind
.UnderscoreToken:
1785
case
SyntaxKind
.VarKeyword:
1787
case
SyntaxKind
.AndKeyword:
1789
case
SyntaxKind
.OrKeyword:
1791
case
SyntaxKind
.NotKeyword:
1793
case
SyntaxKind
.WithKeyword:
1795
case
SyntaxKind
.InitKeyword:
1797
case
SyntaxKind
.RecordKeyword:
1799
case
SyntaxKind
.ManagedKeyword:
1801
case
SyntaxKind
.UnmanagedKeyword:
1803
case
SyntaxKind
.RequiredKeyword:
1805
case
SyntaxKind
.ScopedKeyword:
1807
case
SyntaxKind
.FileKeyword:
1809
case
SyntaxKind
.AllowsKeyword:
1811
case
SyntaxKind
.ExtensionKeyword:
1818
public static bool IsTypeParameterVarianceKeyword(
SyntaxKind
kind)
1820
return kind ==
SyntaxKind
.OutKeyword || kind ==
SyntaxKind
.InKeyword;
1823
public static bool IsDocumentationCommentTrivia(
SyntaxKind
kind)
1825
return kind ==
SyntaxKind
.SingleLineDocumentationCommentTrivia ||
1826
kind ==
SyntaxKind
.MultiLineDocumentationCommentTrivia;