()
| 2995 | // 11.12 Conditional Operator |
| 2996 | |
| 2997 | function parseConditionalExpression() { |
| 2998 | var expr, previousAllowIn, consequent, alternate, startToken; |
| 2999 | |
| 3000 | startToken = lookahead; |
| 3001 | |
| 3002 | expr = parseBinaryExpression(); |
| 3003 | if (match('?')) { |
| 3004 | lex(); |
| 3005 | previousAllowIn = state.allowIn; |
| 3006 | state.allowIn = true; |
| 3007 | consequent = parseAssignmentExpression(); |
| 3008 | state.allowIn = previousAllowIn; |
| 3009 | expect(':'); |
| 3010 | alternate = parseAssignmentExpression(); |
| 3011 | |
| 3012 | expr = new WrappingNode(startToken).finishConditionalExpression(expr, consequent, alternate); |
| 3013 | } |
| 3014 | |
| 3015 | return expr; |
| 3016 | } |
| 3017 | |
| 3018 | // [ES6] 14.2 Arrow Function |
| 3019 |
no test coverage detected