export function binOpExpressionOperatorPrecedence()

in src/powerquery-parser/language/constant/constantUtils.ts [134:176]


export function binOpExpressionOperatorPrecedence(operator: Constant.TBinOpExpressionOperator): number {
    switch (operator) {
        case Constant.KeywordConstant.Meta:
            return 110;

        case Constant.ArithmeticOperator.Multiplication:
        case Constant.ArithmeticOperator.Division:
            return 100;

        case Constant.ArithmeticOperator.Addition:
        case Constant.ArithmeticOperator.Subtraction:
        case Constant.ArithmeticOperator.And:
            return 90;

        case Constant.RelationalOperator.GreaterThan:
        case Constant.RelationalOperator.GreaterThanEqualTo:
        case Constant.RelationalOperator.LessThan:
        case Constant.RelationalOperator.LessThanEqualTo:
            return 80;

        case Constant.EqualityOperator.EqualTo:
        case Constant.EqualityOperator.NotEqualTo:
            return 70;

        case Constant.KeywordConstant.As:
            return 60;

        case Constant.KeywordConstant.Is:
            return 50;

        case Constant.LogicalOperator.And:
            return 40;

        case Constant.LogicalOperator.Or:
            return 30;

        case Constant.MiscConstant.NullCoalescingOperator:
            return 20;

        default:
            throw Assert.isNever(operator);
    }
}