gpt4 book ai didi

c# - Roslyn 是否有内置的 "simplifications"?

转载 作者:太空狗 更新时间:2023-10-29 17:50:58 26 4
gpt4 key购买 nike

是否有任何内置方法可以使用 Roslyn 执行与 C# 编译器相同的编译时转换,例如用于将迭代器、初始化器、lambda、LINQ 等转换为基本 C# 代码?

最佳答案

Roslyn 编译器 API 旨在(除了将源代码转换为 IL 之外)让您构建源代码分析和转换工具。

但是,lambda 和迭代器并没有始终可以使用源指定的翻译。它们使用内部绑定(bind)节点抽象进行建模,其中包括只能使用 IL 表示的附加编译器特定规则。

在 C# 中将 LINQ 翻译成源代码是可能的,因为它被指定为源代码翻译(无论编译器是否真的那样做。)但是,没有专门执行此操作的编译器 API。如果有,它可能会显示为服务层 API 而不是编译器 API。

关于c# - Roslyn 是否有内置的 "simplifications"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11494171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com