gpt4 book ai didi

macros - nom 的 "$i"宏参数从何而来?

转载 作者:行者123 更新时间:2023-11-29 07:50:28 24 4
gpt4 key购买 nike

我试图了解 Rust 宏捕获是如何工作的,并且正在查看 nom解析器库。

位置 nom/src/bytes.rs声明用 ($i:expr, $tag: expr) 捕获的宏 tag!。然而,在所有使用 tag! 的地方,它只与一个参数一起使用,即 tag!("+")。示例:nom-lua52/op.rs .我读过 tutorials关于宏,但是这个构造似乎很特别。

似乎输入 $i 是某种隐式

最佳答案

诀窍是 tag!() 宏调用在 value! 宏内,它将匹配 tag! 并传递它是一个附加参数。这在文件 implementing tag! 中进行了描述.

关于macros - nom 的 "$i"宏参数从何而来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51367781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com