function isStartOfExpression()

in packages/core/nano/src/parser.ts [547:573]


function isStartOfExpression(kind: SyntaxKind): boolean {
    switch (kind) {
        case SyntaxKind.NumberLiteral:
        case SyntaxKind.TrueKeyword:
        case SyntaxKind.FalseKeyword:
        case SyntaxKind.StringLiteral:
        case SyntaxKind.Identifier:
        case SyntaxKind.OpenParenToken:
        case SyntaxKind.PlusToken:
        case SyntaxKind.MinusToken:

        // These cases are for error handling so that we look ahead
        // and create the binOp node with missing children.
        case SyntaxKind.CaretToken:
        case SyntaxKind.AsteriskToken:
        case SyntaxKind.SlashToken:
        case SyntaxKind.EqualsToken:
        case SyntaxKind.LessThanToken:
        case SyntaxKind.GreaterThanToken:
        case SyntaxKind.LessThanEqualsToken:
        case SyntaxKind.GreaterThanEqualsToken:
        case SyntaxKind.NotEqualsToken:
            return true;
        default:
            return false;
    }
}