()
| 6837 | } |
| 6838 | |
| 6839 | function parseFunctionTypeParams() { |
| 6840 | var ret = { params: [], rest: null }; |
| 6841 | while (lookahead.type === Token.Identifier) { |
| 6842 | ret.params.push(parseFunctionTypeParam()); |
| 6843 | if (!match(')')) { |
| 6844 | expect(','); |
| 6845 | } |
| 6846 | } |
| 6847 | |
| 6848 | if (match('...')) { |
| 6849 | lex(); |
| 6850 | ret.rest = parseFunctionTypeParam(); |
| 6851 | } |
| 6852 | return ret; |
| 6853 | } |
| 6854 | |
| 6855 | // The parsing of types roughly parallels the parsing of expressions, and |
| 6856 | // primary types are kind of like primary expressions...they're the |
no test coverage detected