joarwilk / flowgen

Generate flowtype definition files from TypeScript
Other
657 stars 87 forks source link

exporting a default anonymous function crashes #198

Open karmeleon opened 1 year ago

karmeleon commented 1 year ago

Input file:

export default function (): void;

Resulting error:

project-dir/node_modules/flowgen/node_modules/typescript/lib/typescript.js:156313
            this.assertHasRealPosition();
                 ^

TypeError: this.assertHasRealPosition is not a function
    at Array.NodeObject.getStart (project-dir/node_modules/flowgen/node_modules/typescript/lib/typescript.js:156313:18)
    at Object.error (project-dir/node_modules/flowgen/lib/logger.js:42:82)
    at parseNameFromNode (project-dir/node_modules/flowgen/lib/parse/ast.js:62:14)
    at collectNode (project-dir/node_modules/flowgen/lib/parse/index.js:51:74)
    at project-dir/node_modules/flowgen/lib/parse/index.js:108:34
    at Array.forEach (<anonymous>)
    at traverseNode (project-dir/node_modules/flowgen/lib/parse/index.js:108:21)
    at recursiveWalkTree (project-dir/node_modules/flowgen/lib/parse/index.js:219:3)
    at project-dir/node_modules/flowgen/lib/cli/compiler.js:35:49
    at project-dir/node_modules/flowgen/lib/env.js:17:14

Adding a name to the function like this causes flowgen to work as expected:

export default function someFn(): void;