MCPcopy
hub / github.com/BloombergGraphics/whatiscode / parseLeftHandSideExpression

Function parseLeftHandSideExpression

scripts/libs/esprima.js:2774–2794  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2772 }
2773
2774 function parseLeftHandSideExpression() {
2775 var expr, property, startToken;
2776 assert(state.allowIn, 'callee of new expression always allow in keyword.');
2777
2778 startToken = lookahead;
2779
2780 expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
2781
2782 for (;;) {
2783 if (match('[')) {
2784 property = parseComputedMember();
2785 expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
2786 } else if (match('.')) {
2787 property = parseNonComputedMember();
2788 expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
2789 } else {
2790 break;
2791 }
2792 }
2793 return expr;
2794 }
2795
2796 // 11.3 Postfix Expressions
2797

Callers 1

parseNewExpressionFunction · 0.85

Calls 7

assertFunction · 0.85
matchKeywordFunction · 0.85
parseNewExpressionFunction · 0.85
parsePrimaryExpressionFunction · 0.85
matchFunction · 0.85
parseComputedMemberFunction · 0.85
parseNonComputedMemberFunction · 0.85

Tested by

no test coverage detected