重新排列令牌是lexers的工作吗?

问题描述

我正在为自定义文件格式编写一个解析器,该解析器由跨越多行的不确定数量的数据结构组成。构成每个单独结构的线应保证是连续的,但可以以任何顺序出现。为了能够组装该结构,在每行的开始处写入该结构中数据的偏移量。

我写了一个词法分析器,它生成三种类型的令牌:data_offsetdataend_of_line。但这意味着现在由我的解析器决定放弃data_offsetend_of_line令牌,并重新排列行,我觉得这不合适。

我应该写一个生成structure令牌的词法分析器,该令牌表示除去偏移量和EOL并重新组装成正确顺序的结构吗?

编辑:

如果有人偶然发现了这篇文章,我最终要做的是一个经典的词法分析器/解析器,该工具仅标记文件并构建AST,然后我实现了一个“分析器”,可以处理已解析的数据,对其进行重新排列等...“每个人都从事他的生意”

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)