(type, value, noComma)
| 386 | return maybeoperatorNoComma(type, value, false); |
| 387 | } |
| 388 | function maybeoperatorNoComma(type, value, noComma) { |
| 389 | var me = noComma == false ? maybeoperatorComma : maybeoperatorNoComma; |
| 390 | var expr = noComma == false ? expression : expressionNoComma; |
| 391 | if (value == "=>") return cont(pushcontext, noComma ? arrowBodyNoComma : arrowBody, popcontext); |
| 392 | if (type == "operator") { |
| 393 | if (/\+\+|--/.test(value)) return cont(me); |
| 394 | if (value == "?") return cont(expression, expect(":"), expr); |
| 395 | return cont(expr); |
| 396 | } |
| 397 | if (type == "quasi") { return pass(quasi, me); } |
| 398 | if (type == ";") return; |
| 399 | if (type == "(") return contCommasep(expressionNoComma, ")", "call", me); |
| 400 | if (type == ".") return cont(property, me); |
| 401 | if (type == "[") return cont(pushlex("]"), maybeexpression, expect("]"), poplex, me); |
| 402 | } |
| 403 | function quasi(type, value) { |
| 404 | if (type != "quasi") return pass(); |
| 405 | if (value.slice(value.length - 2) != "${") return cont(quasi); |
no test coverage detected