我一直在寻找一个免费的(如“免费啤酒”)库,它可以解析 C# 3.0 代码(实际上,带有 lambda 的 C# 2.0 可以做到)并为个人项目返回某种 AST/代码 DOM .但是,到目前为止,我所看到的大多数替代方案都不合适:
Microsoft.CSharp.CSharpCodeProvider.Parse
抛出一个NotImpementedException
;- Visual Studio's "exposed" code parser sucks ;
- Mono 的 C# 编译器的方法是难以理解的(而且几乎没有记录);
- C# Parser project at CodePlex仅解析 C# 2.0 代码,因此我们忘记了 lambda;
- SourceForge 上的另一个项目 claims to parse C# to CodeDOM ,但它已有 2000 天历史,所以我猜它不是 C# 3.0;
- ...它会持续到 Google 结果的几页。
那么...有没有免费的、可以工作的 C# 3.0 解析器,可以插入到另一个项目中?
最佳答案
看看http://antlrcsharp.codeplex.com/ 它是用于 Antlr 解析器生成器的 C# 4 语法。
关于c# - 有没有好的解析C#3.0代码的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3755894/