Skip to main content

value

Macro value 

Source
macro_rules! value {
    ($($value:tt)+) => { ... };
}
Expand description

Constructs a Value from a JSON like literal.

use deser_value::value;

let id = 42;
let value = value!({
    "id": id,
    "name": "Jane",
    "tags": ["admin", null, 1.5],
    "nested": {"deep": true},
    // keys can be any value
    1: "one",
    (id + 1): "expression",
});
assert_eq!(value["nested"]["deep"], true);
assert_eq!(value[&value!(43)], "expression");

Values and keys can be any expression that converts into a value, keys can also be sequences and maps. Keys which are expressions made of more than one token (other than a leading minus) have to be put into parentheses.