我的用例是生成和解析AT命令
我正在寻找类似于Boost.Spirit或https://github.com/ColinH/PEGTL的东西,但对嵌入式环境(mbed OS)友好,并且不需要像前面提到的那样强大。 mbed OS ATParser以另一种方式摆动,对我的品味来说有点太弱/扫描(对于ATParser人来说没有任何不确定性)
Boost.Spirit我无法在这种环境下进行编译,除了有点复杂之外,我还因为类似的原因尝试使用PEGTL而犹豫不决。
下面的项目也许你在寻找:
CMDB:一个命令解释器,支持使用的已定义命令,子系统,宏,帮助和参数解析。
看起来我正在自己动手。如果它不符合stackoverflow规则,我会在这里发布链接。
不是特定于AT,但这看起来很有希望:embedded-commandline。
要使用它,看起来像你:
Outputter
的类,它为您的平台实现putchar()
和puts()
成员函数。 (您将对类的实例的引用传递给DumbLineEditor
和CommandManager
构造函数。)Command
派生的类,并为每个命令实现execute()
成员函数。CommandManager
。使用每个派生的CommandManager::addCommand()
s的实例调用Command
。DumbLineEditor
,将对CommandManager
和Outputter
的引用传递给它的构造函数。