(expr: Json, out: Set<string>)
| 107 | return ((t ^ (t >>> 14)) >>> 0) / 4294967296; |
| 108 | }; |
| 109 | } |
| 110 | |
| 111 | function collectSymbols(expr: Json, out: Set<string>): void { |
| 112 | if (typeof expr === 'string') { |
| 113 | if (!KNOWN_CONSTANTS.has(expr)) out.add(expr); |
| 114 | return; |
| 115 | } |
| 116 | if (Array.isArray(expr)) { |
| 117 | // skip the operator position for known string heads |
| 118 | for (let i = 1; i < expr.length; i++) collectSymbols(expr[i], out); |
| 119 | } |
| 120 | } |
| 121 |
no test coverage detected