2 个不稳定版本

0.2.0 2024年8月23日
0.1.0 2024年8月16日

#1186 in 解析器实现

Download history 110/week @ 2024-08-14

110 每月下载

GPL-3.0-or-later

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

无运行时依赖

功能