#value #universal #pest #type #properties

path-value

通过路径访问通用类型和属性

2 个版本

0.1.5 2021年7月24日
0.1.4 2020年8月21日

#1215数据结构

33 每月下载量
ddns-rs 中使用

自定义许可证

140KB
2K SLoC

path-value

Rust Build Status Crate Status Docs Status

path-value 是一个 Rust 通用类型 库,用于通过 路径 访问 Value 中的属性。

快速开始

use path_value::Value;

fn main() {
    let mut value_origin = Value::default();

    value_origin.set("/test/bool", true).unwrap();
    value_origin.set("/test/str", "i am string").unwrap();

    println!("{}", value_origin.get::<bool, _, _>("/test/bool").unwrap().unwrap());
    println!("{}", value_origin.get::<String, _, _>("/test/str").unwrap().unwrap());

    println!("\nAfter merge\n");

    let mut value_new = Value::default();

    value_new.set("/test/bool", false).unwrap();
    value_new.set("/test/i32", 1000_i32).unwrap();

    value_origin.merge(value_new).unwrap();

    println!("{}", value_origin.get::<bool, _, _>("/test/bool").unwrap().unwrap());
    println!("{}", value_origin.get::<String, _, _>("/test/str").unwrap().unwrap());
    println!("{}", value_origin.get::<i32, _, _>("/test/i32").unwrap().unwrap());
}

路径语法

/<path>/<path>[index]

Path Grammar

<path>[index]

表示访问元素数组

文档

许可证

MIT

依赖项

~2.7–3.5MB
~74K SLoC