(code: string)
| 79 | * @returns |
| 80 | */ |
| 81 | export function code2expression(code: string) { |
| 82 | if (!code) { |
| 83 | return; |
| 84 | } |
| 85 | |
| 86 | if (code.endsWith(';')) { |
| 87 | code = code.slice(0, -1); |
| 88 | } |
| 89 | |
| 90 | let expNode; |
| 91 | try { |
| 92 | expNode = t.cloneNode(parseExpression(code, babelParserConfig), false, true); |
| 93 | } catch (err) { |
| 94 | logger.error('invalid code', err); |
| 95 | // expNode = t.identifier('undefined'); |
| 96 | } |
| 97 | return expNode; |
| 98 | } |
| 99 | |
| 100 | /** |
| 101 | * 表达式代码片段转为 ast 树 |
no test coverage detected