版权所有 © 2015 Abel Sinkovics
在 Boost 软件许可 1.0 版本下发布。(请参阅随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)
Metaparse 是一个用于模板元程序的解析器生成器库。此库的目的是支持创建在编译时解析的解析器。此库旨在用于为 C++ 创建嵌入式领域特定语言。生成的解析器的输入是一个编译时字符串,请参阅 string
。解析过程的结果要么是错误,要么是解析器编写者指定的任何其他结果。
该库类似于 Boost.Spirit,但是虽然用 Spirit 构建的解析器在运行时解析,但用 Metaparse 构建的解析器在编译时解析。用 Metaparse 构建的解析器可以输出
有关更多详细信息,请参阅“可以从编译时字符串构建什么?”部分。
基于 C++11 功能,该库可以提供用于定义输入字符串的高级实用程序,该库的其余部分也适用于基于 C++98 的编译器。请注意,如果您使用 GCC 或 Clang 通过 Boost.Build 构建测试和示例,则编译器将不会启用 C++11(或更高版本)。要在 C++11 模式下构建测试和示例,您需要运行 b2 cxxflags="-std=c++11"
。
外部教程可以在 https://github.com/sabel83/metaparse_tutorial#metaparse-tutorial 找到