6 个版本

0.2.7 2022年4月19日
0.2.6 2022年4月15日
0.1.5 2022年4月14日

1686解析器实现

MIT 许可证

13KB
252

INIp

📝 使用 Rust 编写的 INI 解析库。

摘要

  1. 功能
  2. 安装
  3. 示例
  4. 规则
  5. 贡献
  6. 许可证

功能

功能 实现了吗?
部分支持 ✔️
禁用条目识别 ✔️
支持部分嵌套
多行支持

安装

将此添加到您的 Cargo.toml

inip = "0.2.7"

示例

; file.ini
[section]
full_name = "Hicaro"
use inip::Parser;

fn main() {
    let parsed_file = Parser::parse("file.ini").unwrap();
    assert_eq!(parsed_file["section"]["full_name"], "Hicaro".to_string());
}

您可以在 examples 中阅读有效和无效的示例。

规则

  1. 注释行以 ; 开头,或者它应该是行的第一个非空白字符。

    ; this is a comment
          ; This is another comment
    # this is not a comment
    
  2. 所有值都必须用引号括起来

    有效

    [section]
    name = "John Doe"
    

    无效

    [section]
    name = John Doe
    
  3. 所有键名必须只有一个单词

    有效

    [credentials]
    full_name = "John Doe"
    

    无效

    [credentials]
    full name = "John Doe"
    

    如果您的键名想用多个单词,可以使用您想要的任何样式,但不要使用空格来分隔。

  4. 使用 ; 禁用条目识别

    [credentials]
    ; full_name = "John Doe"
    

贡献

如果您发现这个库有任何问题,请通过打开一个说明问题的 issue 来告诉我。

许可证

该项目受 MIT 许可证的许可。

无运行时依赖