65 references to ParseTypeMode
Microsoft.CodeAnalysis.CSharp (65)
Parser\LanguageParser.cs (63)
4995
var type = this.ParseType(mode:
ParseTypeMode
.Parameter);
7226
return ScanType(forPattern ?
ParseTypeMode
.DefinitePattern :
ParseTypeMode
.Normal, out lastTokenOfType);
7253
private ScanTypeFlags ScanType(
ParseTypeMode
mode, out SyntaxToken lastTokenOfType)
7255
Debug.Assert(mode !=
ParseTypeMode
.NewExpression);
7338
if (result == ScanTypeFlags.NotType || mode ==
ParseTypeMode
.DefinitePattern && this.CurrentToken.Kind != SyntaxKind.OpenBracketToken)
7370
case
ParseTypeMode
.FirstElementOfPossibleTupleLiteral:
7371
case
ParseTypeMode
.AfterTupleComma:
7380
case
ParseTypeMode
.DefinitePattern:
7625
private TypeSyntax ParseType(
ParseTypeMode
mode =
ParseTypeMode
.Normal)
7632
ParseTypeCore(
ParseTypeMode
.AfterRef));
7638
private TypeSyntax ParseTypeCore(
ParseTypeMode
mode)
7643
case
ParseTypeMode
.AfterIs:
7646
case
ParseTypeMode
.DefinitePattern:
7649
case
ParseTypeMode
.AfterOut:
7652
case
ParseTypeMode
.AfterTupleComma:
7655
case
ParseTypeMode
.FirstElementOfPossibleTupleLiteral:
7658
case
ParseTypeMode
.NewExpression:
7659
case
ParseTypeMode
.AsExpression:
7660
case
ParseTypeMode
.Normal:
7661
case
ParseTypeMode
.Parameter:
7662
case
ParseTypeMode
.AfterRef:
7692
case
ParseTypeMode
.AfterIs:
7693
case
ParseTypeMode
.DefinitePattern:
7694
case
ParseTypeMode
.AfterTupleComma:
7695
case
ParseTypeMode
.FirstElementOfPossibleTupleLiteral:
7703
case
ParseTypeMode
.Normal:
7704
case
ParseTypeMode
.Parameter:
7705
case
ParseTypeMode
.AfterOut:
7706
case
ParseTypeMode
.AfterRef:
7707
case
ParseTypeMode
.AsExpression:
7708
case
ParseTypeMode
.NewExpression:
7742
TypeSyntax typeParsedSoFar,
ParseTypeMode
mode)
7767
if (mode ==
ParseTypeMode
.AfterIs && this.CurrentToken.Kind is SyntaxKind.OpenBracketToken)
7806
case
ParseTypeMode
.AfterIs:
7807
case
ParseTypeMode
.DefinitePattern:
7808
case
ParseTypeMode
.AsExpression:
7888
case
ParseTypeMode
.NewExpression:
8028
private TypeSyntax ParseUnderlyingType(
ParseTypeMode
mode, NameOptions options = NameOptions.None)
8036
token = this.AddError(token, mode ==
ParseTypeMode
.Parameter ? ErrorCode.ERR_NoVoidParameter : ErrorCode.ERR_NoVoidHere);
8059
mode ==
ParseTypeMode
.NewExpression ? ErrorCode.ERR_BadNewExpr : ErrorCode.ERR_TypeExpected);
9797
var variable = ParseExpressionOrDeclaration(
ParseTypeMode
.Normal, permitTupleDesignation: true);
9866
private ExpressionSyntax ParseExpressionOrDeclaration(
ParseTypeMode
mode, bool permitTupleDesignation)
9873
private bool IsPossibleDeclarationExpression(
ParseTypeMode
mode, bool permitTupleDesignation, out bool isScoped)
9875
Debug.Assert(mode is
ParseTypeMode
.Normal or
ParseTypeMode
.FirstElementOfPossibleTupleLiteral or
ParseTypeMode
.AfterTupleComma);
9893
case
ParseTypeMode
.FirstElementOfPossibleTupleLiteral:
9901
case
ParseTypeMode
.AfterTupleComma:
9935
case
ParseTypeMode
.FirstElementOfPossibleTupleLiteral:
9937
case
ParseTypeMode
.AfterTupleComma:
11557
return ParseDeclarationExpression(
ParseTypeMode
.Normal, isScoped: false);
11644
operatorExpressionKind, leftOperand, operatorToken, this.ParseType(
ParseTypeMode
.AsExpression));
11951
private DeclarationExpressionSyntax ParseDeclarationExpression(
ParseTypeMode
mode, bool isScoped)
12044
return ParseDeclarationExpression(
ParseTypeMode
.Normal, isScoped: false);
12654
? ParseExpressionOrDeclaration(
ParseTypeMode
.Normal, permitTupleDesignation: false)
12883
var expression = this.ParseExpressionOrDeclaration(
ParseTypeMode
.FirstElementOfPossibleTupleLiteral, permitTupleDesignation: true);
12901
this.ParseExpressionOrDeclaration(
ParseTypeMode
.FirstElementOfPossibleTupleLiteral, permitTupleDesignation: true)));
12919
var expression = ParseExpressionOrDeclaration(
ParseTypeMode
.AfterTupleComma, permitTupleDesignation: true);
12925
ParseExpressionOrDeclaration(
ParseTypeMode
.AfterTupleComma, permitTupleDesignation: true));
13417
type = this.ParseType(
ParseTypeMode
.NewExpression);
14002
? ParseType(
ParseTypeMode
.Parameter)
Parser\LanguageParser_Patterns.cs (2)
236
afterIs ?
ParseTypeMode
.AfterIs :
ParseTypeMode
.DefinitePattern);