当前位置:  软件>C/C++软件

词法/语法分析框架 chrysanthemum

    来源:    发布时间:2015-01-22

    本文导语:  chrysanthemum (中文名“菊花”)是一个由C++写成的小巧灵活、高度可伸缩、模块化、高性能的词法/语法分析框架。chrysanthemum 是一个纯模板库,包含头文件即可使用,且无任何第三方依赖。chrysanthemum 不同于YACC和ANLTR等词法/语法...

chrysanthemum (中文名“菊花”)是一个由C++写成的小巧灵活、高度可伸缩、模块化、高性能的词法/语法分析框架。
chrysanthemum 是一个纯模板库,包含头文件即可使用,且无任何第三方依赖。

chrysanthemum 不同于YACC和ANLTR等词法/语法分析工具(根据文法文件生成解析器代码),它是一个纯模板库,利用
C++的表达式模板,模板元编程等技术,使用一系列简介、小巧、灵活的核心类,自动推导并构建出任意复杂的文本解析对象,
而且chrysanthemum 允许灵活的嵌入C++函数对象作为语义动作,因此具有很好的灵活性和伸缩性。

chrysanthemum 能够极大的简化语法分析器的编写工作,使用户可以在C++环境中“书写”BNF范式从而
快速的构造出对应的词法/文法分析器。同时chrysanthemum尽最大努力保证分析器的性能,力求达到
近似于纯手工代码的效率。

chrysanthemum 大量使用使用表达式模板技术、模板元编程、C++0X新标准 和 函数式编程思想。


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
chrysanthemum 完全以C++0X新标准写成,因此只能用于对C++0X支持比较好的编译器中,MSVC系列因没有提供可变模板参数的支持,////
无法使用。目前仅在GCC4.5和GCC4.6环境下测试通过,WINDOWS环境可以选择使用MINGW。                                     ////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////
注意:编译时请加上 -std=c++0x 参数以打开C++0X支持//////////////
////////////////////////////////////////////////////////////////

chrysanthemum 很大程度上受到 Joel de Guzman 所编写的boost.spirit库的启发,但是力求更灵活,更高效,且更具收缩性。

本版本(V 0.2.1版)是chrysanthemum第一个正式对外发布的版本,必然存在许多不足和缺陷。如果您有好的建议或问题请发送至ioriiod0@gmail.com


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C#词法分析器之词法分析的使用详解
  • 词法分析器生成工具 Quex
  • 回文构词法 Salad
  • 词法扫描和分析 Flawfinder
  • 词法分析器生成工具 Lex
  • 谁有java写的词法分析程序.象pl0那样的.
  • 词法分析器生成器 JLex
  • 词法分析工具 ANTLR
  • 词法分析工具 ANTLR Ruby
  • LEX词法分析器怎么用?
  • C#词法分析器之输入缓冲和代码定位的应用分析
  • 词法分析器 Arsenal
  • C#词法分析器之正则表达式的使用
  • C#词法分析器之构造NFA详解
  • C#词法分析器之转换DFA详解


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3