2 个不稳定版本
| 新 0.2.0 | 2024年8月23日 |
|---|---|
| 0.1.0 | 2024年8月16日 |
#1186 in 解析器实现
110 每月下载
31KB
505 行
Minparser
简单解析函数
lib.rs:
简单解析工具
此 crate 是一个集合,其中包含不同 crate 需要实现解析器时共享的对象和算法。
【断言】模块包含一些有用的函数,用于分析 ASCII 和 Unicode 字符。其中一些函数是标准库中定义的函数的包装。
Position 是一个对象,用于标识一个(文本)文件及其内部的位置,表示为 行索引 和 列索引。[位置] 对象的主要作用是唯一标识文件中的单个字符或(文本)标记,以便用户可以轻松找到它。
Pos<T> 只是一个包含一个 T 对象和一个 Position 对象的对象。通常将 T 设置为等于 char 或自定义标记类型。
DefLine 是一种“迭代器”,它返回 Pos<Option<char>, FILE> 而不是 Option<char>。此外,它还定义了许多用于从文本源解析标记的有用函数。
此 crate 假设单个 \n 字符将文本文件中的行分开。如果您需要处理使用 \r\n 作为行分隔符的 char 迭代器(或同时使用 \n 和 \r\n),则可以使用 NLIterator 迭代器包装器自动丢弃任何 \r 字符,使 \r\n 变为 \n。