1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//! A [`Mapping`] of values.
//!
//! # Examples
//!
//! ```
//! use anyhow::Context;
//! use nondestructive::yaml;
//!
//! let doc = yaml::from_slice(
//! r#"
//! number1: 10
//! number2: 20
//! mapping:
//! inner: 400
//! string3: "I am a quoted string!"
//! "#
//! )?;
//!
//! let root = doc.as_ref().as_mapping().ok_or("missing root mapping")?;
//!
//! assert_eq!(root.get("number1").and_then(|v| v.as_u32()), Some(10));
//! assert_eq!(root.get("number2").and_then(|v| v.as_u32()), Some(20));
//!
//! let mapping = root.get("mapping").and_then(|v| v.as_mapping()).ok_or("missing inner mapping")?;
//! assert_eq!(mapping.get("inner").and_then(|v| v.as_u32()), Some(400));
//!
//! assert_eq!(root.get("string3").and_then(|v| v.as_str()), Some("I am a quoted string!"));
//! # Ok::<_, Box<dyn std::error::Error>>(())
//! ```
pub use Iter;
pub use Mapping;
pub use MappingMut;