例如我有 通用标签

我可以获取Foo类AST并在编译时将Bar重写为 通用标签

有帮助吗?

解决方案

Roslyn目前不直接支持编译时重写,但是绝对支持语法和语义转换。实际上,请看一下CTP中包含的“ ImplementNotifyPropertyChanged”示例,以了解您要执行的操作。该示例是作为设计时转换和IDE功能实现的,但是您可以提取逻辑并将其变成类似预构建任务的任务,该任务在编译之前会重写文件。

其他提示

我认为在当前发布的CTP中这是不可能的,因为编译器作为服务存在,但是没有像Nemerle那样可以让您插入编译过程的东西。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top