igumnoff / shiva

Shiva library: Implementation in Rust of a parser and generator for documents of any type
https://docs.rs/shiva
GNU General Public License v3.0
159 stars 10 forks source link

JSON parser and generator change from default Document struct to programmaticaly #93

Open evgenyigumnov opened 2 months ago

evgenyigumnov commented 2 months ago

examples

extern crate serde_json;

use serde_json::{Value, json};

fn main() {
    let data = r#"
        {
            "name": "John Doe",
            "age": 30,
            "phones": [
                "+1234567890",
                "+0987654321"
            ]
        }"#;

    let v: Value = serde_json::from_str(data).unwrap();

    println!("Name: {}", v["name"]);
    println!("Age: {}", v["age"]);
    println!("Tel:");
    for phone in v["phones"].as_array().unwrap() {
        println!("{}", phone);
    }
}
use serde_json::{Map, Value};

fn main() {
    // Пример JSON в виде строки
    let data = r#"
        {
            "name": "Jane Doe",
            "age": 25,
            "is_student": false
        }"#;

    let parsed: Map<String, Value> = serde_json::from_str(data).unwrap();

    if let Some(name) = parsed.get("name") {
        println!("Name: {}", name);
    }
}