Skip to content

nsmaciej/serde_wat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scary macros for serde_json

[Documentation](http://mgoszcz2.github.io/serde_wat/serde_wat/index.html) | [Crate](https://crates.io/crates/serde_wat)

Wat

Macros for easily accessing serde_json Values in JavaScript like fashion

# Cargo.toml
[dependencies]
serde_wat = "0.1"

Usage

#[macro_use] extern crate serde_wat;
extern crate serde_json;

use serde_json::from_str;
use serde_json::value::Value;

let a: Value = from_str(r#"{"b": {"c": 42}}"#).unwrap();
// Access unwrapping
assert_eq!(wat!(a.b.c as i64), 42);
// Safe access
assert_eq!(wat!(a.b as &str?), None);
// Testing
assert_eq!(wat!(a is bool), false);

Examples

wat!(a.b.c as i64);
wat!(a as &mut Vec?);
wat!(a as &str);
wat!(a.b is i64);
wat!(a.b is &Map?);
wat!(a is &Map);
wat!(a.0 as bool);

Releases

No releases published

Packages

No packages published

Languages