基于函数组合的递归下降解析库

funcparserlib的Python项目详细描述


说明

解析器组合器只是以解析器为其 参数并将其作为结果值返回。分析器组合器是:

  • 一等值
  • 非常稳定
  • 倾向于使代码非常紧凑
  • 类似于XBNF语法的可读符号

使用funcparserlib生成的解析器是纯python ll(*)解析器。意思是 很容易写出来而不去考虑外表 核心解析的东西。但是递归下降解析是相当缓慢的 方法与ll(k)或lr(k)算法进行比较。

因此funcparserlib的主域是解析小语言外部DSL(特定于域的语言)。

图书馆本身很小。它的源代码只有0.5kloc,有很多 包括的评论。它还具有最长的解析前缀错误报告功能 作为一个用于标记位置跟踪的小型lexer生成器。

文档

请参阅github上的Documentation部分。

0.3.6的新增功能

维修放行单。

  • python 3兼容性
  • #31修复了many()在某些情况下消耗过多令牌的问题
  • #14例外对象中提供了更多信息

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
iOS MDM注册配置文件请求/Profile使用java对证书进行签名   java如何调试GWT项目中的PHP文件   Mac和Windows之间的Java文件getFreeSpace差异   java从ArrayList进入JComboBox   ApacheKafka如何执行zookeeperserverstart。我的java程序中的bat文件?   JAXRS应用程序的java初始化   java如何为double覆盖compareTo方法?   使用进程动态运行java代码   sockets java。网SocketException:权限被拒绝openshift   java PorterduffXfermode:清除位图的一部分   其他线程中变量的java更改侦听器   java如何初始化接口实例以与父片段中的子片段通信   java Cordova插件在构建时出错,源代码1.6中不支持菱形运算符使用源代码7   java是学习编程的教育游戏吗?   在不同机器上使用JasperReports API运行代码时出现java问题   java Spring引导延迟Flyway序列化循环依赖   未为加密/解密初始化java密码