一个简单的语言的语法(三):做些小调整,并将生成目标换到CSharp2 - 编程入门网
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-06-14
e ) programReturn.Tree;
// Generate DOT diagram if -dot option is given
if ( generateDot ) {
var dotgen = new DOTTreeGenerator( );
var astDot = dotgen.ToDOT( ast );
Console.WriteLine( astDot );
} else {
Console.WriteLine( ast.ToStringTree( ) );
}
}
}
一个简单的语言的语法(三):做些小调整,并将生成目标换到CSharp2(5)时间:2011-10-07 javaeye RednaxelaFX因为使用了DOTTreeGenerator,编译时记得在引用Antlr3.Runtime.dll之外,还需要引用 Antlr3.Utility.dll与StringTemplate.dll。 继续使用前两篇用过的Jerry代码为例子: C代码 // line comment // declare variables with/without initializers int i = 1, j; int x = i + 2 * 3 - 4 / ( 6 - - 7 ); int array[2][3] = { { 0, 1, 2 }, { 3, 4, 6 } }; /* block comment */ while (i < 10) i = i + 1; while (!x > 0 && i < 10) { x = x - 1; if (i < 5) break; else read i; } write x - j; 通过上面的程序,可以得到这样的AST: 上面的程序生成的是.dot文件(输出到标准输出流上)。使用Graphviz的dot,将这个文件以 Java代码 dot JerrySample.dot -Tpng -o JerrySample.png 这样的命令来转换,就能得到PNG图像。 本篇就到这里。下一篇看看遍历AST用的基本tree grammar。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于一个简单的语言的语法(三):做些小调整,并将生成目标换到CSharp2 - 编程入门网的所有评论