是否有可能将bison生成的解析器链接到水晶项目中?

时间:2017-11-25 17:56:09

标签: bison crystal-lang

我是Crystal-lang的新手,我想知道是否有可能在仿水晶项目中链接一个野牛生成的解析器,如果有的话,怎么办呢?

1 个答案:

答案 0 :(得分:0)

我终于找到了办法。 Bison和yacc的主要功能(yyparseyylex)可以通过提供的sintax轻松绑定并从Crystal调用。 有用的是在bison或yacc中提供一个C函数来设置解析器/词法分析器(例如设置词法分析器源文件)。

AST可以作为void指针重新执行,并通过水晶也需要的其他C函数进行操作。

也可以在C实现中声明两个函数指针,以便AST分配/释放内存,并且可以将它们设置为从Crystal连接到' connect' GC通过一个程序。