book_cookbook_json_names/
book_cookbook_json_names.rs

1use trivet::{
2    parse_from_stdin,
3    parsers::json::{JSONParser, JSON},
4    ParseResult,
5};
6
7pub fn main() -> ParseResult<()> {
8    let mut parser = parse_from_stdin();
9    let mut jp = JSONParser::new();
10    let doc = jp.parse_value_ws(&mut parser)?;
11
12    // Look for and print any element for name at the top level, but only if the
13    // input is a JSON object.
14    if let JSON::Object(map) = doc {
15        if let Some(value) = map.get("name") {
16            println!("name is {}", value);
17        }
18    }
19    Ok(())
20}