()
| 8570 | } |
| 8571 | |
| 8572 | function parseClassImplements() { |
| 8573 | var id, implemented = [], marker, typeParameters; |
| 8574 | if (strict) { |
| 8575 | expectKeyword('implements'); |
| 8576 | } else { |
| 8577 | expectContextualKeyword('implements'); |
| 8578 | } |
| 8579 | while (index < length) { |
| 8580 | marker = markerCreate(); |
| 8581 | id = parseVariableIdentifier(); |
| 8582 | if (match('<')) { |
| 8583 | typeParameters = parseTypeParameterInstantiation(); |
| 8584 | } else { |
| 8585 | typeParameters = null; |
| 8586 | } |
| 8587 | implemented.push(markerApply(marker, delegate.createClassImplements( |
| 8588 | id, |
| 8589 | typeParameters |
| 8590 | ))); |
| 8591 | if (!match(',')) { |
| 8592 | break; |
| 8593 | } |
| 8594 | expect(','); |
| 8595 | } |
| 8596 | return implemented; |
| 8597 | } |
| 8598 | |
| 8599 | function parseClassExpression() { |
| 8600 | var id, implemented, previousYieldAllowed, superClass = null, |
no test coverage detected