#serde #json #value #resolve #resolver

json_value_resolve

Interface to resolve String to serde_json::Value

8 releases (4 stable)

1.0.4 Dec 17, 2021
1.0.2 Dec 16, 2021
0.1.2 Dec 6, 2021
0.1.1 Apr 29, 2020
0.1.0 Apr 4, 2020

#853 in Encoding

Download history 6/week @ 2023-10-16 9/week @ 2023-10-23 19/week @ 2023-10-30 17/week @ 2023-11-06 20/week @ 2023-11-13 29/week @ 2023-11-20 39/week @ 2023-11-27 14/week @ 2023-12-04 73/week @ 2023-12-11 72/week @ 2023-12-18 63/week @ 2023-12-25 40/week @ 2024-01-01 40/week @ 2024-01-08 36/week @ 2024-01-15 14/week @ 2024-01-22 44/week @ 2024-01-29

134 downloads per month
Used in chewdata

MIT/Apache

8KB
90 lines

json_value_resolve

Linter Actions Status semantic-release

Give an interface to resolve scalar to json_serde::Value.

Installation

[dependencies]
json_value_resolve = "1.0"

Usage

Resolve scalar to serde_json::value:

extern crate json_value_resolve;

use json_value_resolve::Resolve;

{
  let string_value = "-00010000".to_string();
  let json_value = Value::resolve(string_value);
  assert_eq!(-10000, json_value.as_i64().unwrap());
}

{
  let string_value = "-10.50".to_string();
  let json_value = Value::resolve(string_value);
  assert_eq!(-10.50, json_value.as_f64().unwrap());
}

{
  let string_value = "true".to_string();
  let json_value = Value::resolve(string_value);
  assert_eq!(true, json_value.as_bool().unwrap());
}

{
  let string_object = r#"{"field":"value"}"#.to_string();
  let json_value = Value::resolve(string_object);
  assert_eq!(r#"{"field":"value"}"#, json_value.to_string());
}

{
  let string_value = "null".to_string();
  let json_value = Value::resolve(string_value);
  assert_eq!((), json_value.as_null().unwrap());
}

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

Apache MIT

Dependencies

~360–760KB
~17K SLoC