(inp: string, macro: string, rest: string)
| 2981 | // byte-for-byte the same length and identical *except* the macro is gone — |
| 2982 | // every downstream line/column stays exact. |
| 2983 | const check = (inp: string, macro: string, rest: string) => { |
| 2984 | const out = blankCppExportMacros(inp); |
| 2985 | expect(out.length).toBe(inp.length); // every byte offset preserved |
| 2986 | expect(out).not.toContain(macro); // the macro token is blanked |
| 2987 | expect(out.replace(/ +/g, ' ')).toBe(rest); // nothing else changed |
| 2988 | }; |
| 2989 | // Generalizes across the export-macro space: UE _API, Qt/Boost _EXPORT, |
| 2990 | // LLVM _ABI, bare API. |
| 2991 | check( |
no test coverage detected