我将TypeScript LanguageService API与自定义转换器一起使用来对AST进行突变。我希望能够生成自定义诊断,以便以有意义的方式报告错误。我该怎么做?
CustomTransformer API不允许报告诊断--- this appears to be intentional。
Diagnostics对象本身没有任何公共构造函数。 (内部,编译器使用file.path
系列函数,但这些函数被标记为内部函数,不在公共API中。)
LanguageService和TransformationContext看起来都没有任何挂钩,允许我注册创建自己的诊断程序的方法,甚至没有任何挂钩到编译器的方法,因此我可以在适当的位置手动遍历AST如果我想自己做这个阶段。
除了上面引用的链接之外,我找不到任何谈论这个问题的人,也没有一个参考。我发现无法相信TypeScript API某种程度上不支持此功能,因为产生错误本质上就是编译器的用途。这表明我正在寻找完全错误的位置。
那么,我要寻找什么 ?我该怎么办?