# json_value_resolve [![Linter](https://github.com/jmfiaschi/json_value_resolve/workflows/Lint/badge.svg)](https://github.com/jmfiaschi/json_value_resolve/actions/workflows/lint.yml) [![Actions Status](https://github.com/jmfiaschi/json_value_resolve/workflows/CI/badge.svg)](https://github.com/jmfiaschi/json_value_resolve/actions/workflows/ci.yml) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release) Give an interface to resolve scalar to json_serde::Value. ## Installation ```Toml [dependencies] json_value_resolve = "1.0" ``` ## Usage Resolve scalar to serde_json::value: ```rust 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()); } ``` ## Useful link * [Benchmark report](https://jmfiaschi.github.io/json_value_resolve/bench/main/) * [Package](https://crates.io/crates/json_value_resolve) ## 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](https://choosealicense.com/licenses/apache-2.0/) [MIT](https://choosealicense.com/licenses/mit/)