(parentNode, parameters)
| 113774 | emitList(parentNode, parameters, 2576 /* ListFormat.Parameters */); |
| 113775 | } |
| 113776 | function canEmitSimpleArrowHead(parentNode, parameters) { |
| 113777 | var parameter = ts.singleOrUndefined(parameters); |
| 113778 | return parameter |
| 113779 | && parameter.pos === parentNode.pos // may not have parsed tokens between parent and parameter |
| 113780 | && ts.isArrowFunction(parentNode) // only arrow functions may have simple arrow head |
| 113781 | && !parentNode.type // arrow function may not have return type annotation |
| 113782 | && !ts.some(parentNode.decorators) // parent may not have decorators |
| 113783 | && !ts.some(parentNode.modifiers) // parent may not have modifiers |
| 113784 | && !ts.some(parentNode.typeParameters) // parent may not have type parameters |
| 113785 | && !ts.some(parameter.decorators) // parameter may not have decorators |
| 113786 | && !ts.some(parameter.modifiers) // parameter may not have modifiers |
| 113787 | && !parameter.dotDotDotToken // parameter may not be rest |
| 113788 | && !parameter.questionToken // parameter may not be optional |
| 113789 | && !parameter.type // parameter may not have a type annotation |
| 113790 | && !parameter.initializer // parameter may not have an initializer |
| 113791 | && ts.isIdentifier(parameter.name); // parameter name must be identifier |
| 113792 | } |
| 113793 | function emitParametersForArrow(parentNode, parameters) { |
| 113794 | if (canEmitSimpleArrowHead(parentNode, parameters)) { |
| 113795 | emitList(parentNode, parameters, 2576 /* ListFormat.Parameters */ & ~2048 /* ListFormat.Parenthesis */); |
no test coverage detected