79 references to Precedence
Microsoft.CodeAnalysis.CSharp (79)
Parser\LanguageParser.cs (64)
4243var refKeyword = this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 5428var refKeyword = isLocalOrField && !isConst && this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 9547: this.ParseSubExpression(Precedence.Expression); 9959ParseWhenClause(Precedence.Expression), 10387private WhenClauseSyntax ParseWhenClause(Precedence precedence) 10754return this.ParseSubExpression(Precedence.Expression); 10817return IsPossibleAnonymousMethodExpression() || IsPossibleLambdaExpression(Precedence.Expression); 10908private static Precedence GetPrecedence(SyntaxKind op) 10913return Precedence.Expression; 10917return Precedence.Lambda; 10931return Precedence.Assignment; 10934return Precedence.Coalescing; 10936return Precedence.ConditionalOr; 10938return Precedence.ConditionalAnd; 10940return Precedence.LogicalOr; 10942return Precedence.LogicalXor; 10944return Precedence.LogicalAnd; 10947return Precedence.Equality; 10955return Precedence.Relational; 10958return Precedence.Switch; 10962return Precedence.Shift; 10965return Precedence.Additive; 10969return Precedence.Multiplicative; 10985return Precedence.Unary; 10987return Precedence.Cast; 10989return Precedence.PointerIndirection; 10991return Precedence.AddressOf; 10993return Precedence.Range; 10995return Precedence.Expression; 11034return Precedence.Primary; 11116private ExpressionSyntax ParseSubExpression(Precedence precedence) 11131private ExpressionSyntax ParseSubExpressionCore(Precedence precedence) 11147ExpressionSyntax parseUnaryOrPrimaryExpression(Precedence precedence) 11168? this.ParseSubExpression(Precedence.Range) 11196return precedence <= Precedence.Coalescing 11216private ExpressionSyntax ParseExpressionContinued(ExpressionSyntax unaryOrPrimaryExpression, Precedence precedence) 11236if (this.CurrentToken.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional) 11241ExpressionSyntax? tryExpandExpression(ExpressionSyntax leftOperand, Precedence precedence) 11252var newPrecedence = GetPrecedence(operatorExpressionKind); 11307? this.ParseSubExpression(Precedence.Range) 11518Debug.Assert(GetPrecedence(operatorExpressionKind) == Precedence.Assignment); 11524!this.IsPossibleLambdaExpression(Precedence.Assignment)) 11532rhs = this.ParseSubExpression(Precedence.Assignment); 11609this.ParseSubExpression(Precedence.Coalescing)); 11623private ExpressionSyntax ParsePrimaryExpression(Precedence precedence) 11632ExpressionSyntax parsePrimaryExpressionWithoutPostfix(Precedence precedence) 11894private bool IsPossibleDeconstructionLeft(Precedence precedence) 11896if (precedence > Precedence.Assignment || !(this.CurrentToken.IsIdentifierVar() || IsPredefinedType(this.CurrentToken.Kind))) 12256this.IsPossibleLambdaExpression(Precedence.Expression))) 12281: ParseSubExpression(Precedence.Expression); 12327this.ParseSubExpression(Precedence.Expression), 12336this.ParseSubExpression(Precedence.Expression), 12350this.ParseSubExpression(Precedence.Expression), 12359this.ParseSubExpression(Precedence.Expression), 12365private bool ScanParenthesizedLambda(Precedence precedence) 12375private bool ScanImplicitlyTypedLambdaOrSimpleExplicitlyTypedParenthesizedLambda(Precedence precedence) 12379if (precedence > Precedence.Lambda) 12406private bool ScanExplicitlyTypedLambda(Precedence precedence) 12410if (precedence > Precedence.Lambda) 12502this.ParseSubExpression(Precedence.Cast)); 12694private bool IsPossibleLambdaExpression(Precedence precedence) 12696if (precedence > Precedence.Lambda) 13776private QueryExpressionSyntax ParseQueryExpression(Precedence precedence) 13781if (precedence > Precedence.Assignment)
Parser\LanguageParser_Patterns.cs (15)
53private PatternSyntax ParsePattern(Precedence precedence, bool afterIs = false, bool inSwitchArmPattern = false) 58private PatternSyntax ParseDisjunctivePattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern) 104private PatternSyntax ParseConjunctivePattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern) 158private PatternSyntax ParseNegatedPattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern) 172private PatternSyntax ParsePrimaryPattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern) 209Debug.Assert(precedence < Precedence.Shift); 212this.ParseSubExpression(Precedence.Relational)); 242bool CanTokenFollowTypeInPattern(Precedence precedence) 269private PatternSyntax? ParsePatternContinued(TypeSyntax? type, Precedence precedence, bool inSwitchArmPattern) 438var pattern = ParsePattern(Precedence.Conditional, inSwitchArmPattern: true); 507PatternSyntax pattern = ParsePattern(Precedence.Conditional); 516pattern = ParsePattern(Precedence.Conditional); 596var pattern = ParsePattern(Precedence.Coalescing, inSwitchArmPattern: true); 606ParseWhenClause(Precedence.Coalescing), 642static @this => @this.ParsePattern(Precedence.Conditional),