String(String),
Boolean(bool),
List(List),
- Object(Box<Object>),
+ Object(Object),
Null,
}
/// Returns None otherwise.
pub fn as_object<'a>(&'a self) -> Option<&'a Object> {
match self {
- &Object(ref map) => Some(&**map),
+ &Object(ref map) => Some(map),
_ => None
}
}
fn build_object(&mut self) -> Result<Json, BuilderError> {
self.bump();
- let mut values = box TreeMap::new();
+ let mut values = TreeMap::new();
loop {
match self.token {
for (key, value) in self.iter() {
d.insert((*key).clone(), value.to_json());
}
- Object(box d)
+ Object(d)
}
}
for (key, value) in self.iter() {
d.insert((*key).clone(), value.to_json());
}
- Object(box d)
+ Object(d)
}
}
}
fn mk_object(items: &[(String, Json)]) -> Json {
- let mut d = box TreeMap::new();
+ let mut d = TreeMap::new();
for item in items.iter() {
match *item {
let mut tree_map = TreeMap::new();
tree_map.insert("a".to_string(), Number(1.0_f64));
tree_map.insert("b".to_string(), Number(2.0_f64));
- Object(box tree_map)
+ Object(tree_map)
};
assert_eq!(list2.to_json(), list2);