This commit is contained in:
Martin Algesten
2018-06-16 10:50:23 +02:00
parent d1cf9fde3b
commit 5b237066e5
7 changed files with 171 additions and 64 deletions

View File

@@ -247,32 +247,32 @@ macro_rules! json_internal {
//////////////////////////////////////////////////////////////////////////
(null) => {
$crate::Value::Null
$crate::SerdeValue::Null
};
(true) => {
$crate::Value::Bool(true)
$crate::SerdeValue::Bool(true)
};
(false) => {
$crate::Value::Bool(false)
$crate::SerdeValue::Bool(false)
};
([]) => {
$crate::Value::Array(vec![])
$crate::SerdeValue::Array(vec![])
};
([ $($tt:tt)+ ]) => {
$crate::Value::Array(json_internal!(@array [] $($tt)+))
$crate::SerdeValue::Array(json_internal!(@array [] $($tt)+))
};
({}) => {
$crate::Value::Object($crate::Map::new())
$crate::SerdeValue::Object($crate::SerdeMap::new())
};
({ $($tt:tt)+ }) => {
$crate::Value::Object({
let mut object = $crate::Map::new();
$crate::SerdeValue::Object({
let mut object = $crate::SerdeMap::new();
json_internal!(@object object () ($($tt)+) ($($tt)+));
object
})
@@ -281,6 +281,6 @@ macro_rules! json_internal {
// Any Serialize type: numbers, strings, struct literals, variables etc.
// Must be below every other rule.
($other:expr) => {
$crate::to_value(&$other).unwrap()
$crate::serde_to_value(&$other).unwrap()
};
}