c++ - Boost Spirit 和 Boost Phoenix 问题

标签 c++ functional-programming dsl boost-spirit boost-phoenix

一个。是否可以定义精神规则的局部变量是使用传递到规则中的参数默认构造的?我有具有循环依赖性的 AST 构建器对象,我想用对父对象的引用来初始化子对象,父对象通过引用传递给 子解析器的规则。示例:rule< Iterator, void(Parent & p), locals<child> > child_parser;

注意:上面有一些方法可以做我想做的。我只对上面提到的特定方法感兴趣,因为这是最干净的方法。

两个。如何将指针传递给惰性凤凰占位符?它不能像&_r1那么简单或 &arg1

注意:此问题已单独提出here , 你可以在那里回答。

三。 lambda/phoenix 合并进展如何,合并何时发生?

p.s.,预先感谢 Hartmut 回答我的问题 :D

最佳答案

1) 没有办法做到这一点,尽管这是一个不错的主意并且值得研究。 2)回答here 3)Phoenix V3 mini-review已于3月2日结束,结果已公布here .

关于c++ - Boost Spirit 和 Boost Phoenix 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5211538/

相关文章:

c++ - 不允许出现奇怪的不完整类型错误

c++ - 如何将以微秒为单位的纪元时间转换为可读格式

parsing - 在 Haskell 中使用 Alex 制作解析骰子卷的词法分析器

java - ANTLR - 语法和树语法之间的 token 枚举不匹配

javascript - 将两个数组合并为所有可能组合的数组的算法

c# - 如何在 NEST 和 Elastic Search 中基于字段进行聚合?

c++ - 迭代器模式——循环引用

c++ - 如何显式实例化模板函数?

ruby - 能不能像函数式编程一样处理Ruby的方法,比如memoizing一个函数?

scala - 套接字连接的惯用异常处理