unison-protocol 0.1.0-alpha2

🎵 Unison Protocol - KDL-based type-safe communication framework
use kdl::KdlDocument;

fn main() {
    let test_cases = vec![
        r#"field "test" type="string" required=true"#,
        r#"field "test" type="string" required=#true"#,
        r#"field "test" type="string" required="true""#,
    ];

    for (i, test) in test_cases.iter().enumerate() {
        println!("Test case {}: {}", i + 1, test);
        match test.parse::<KdlDocument>() {
            Ok(doc) => {
                if let Some(node) = doc.nodes().first() {
                    if let Some(val) = node.get("required") {
                        println!("  ✓ Parsed! required value: {:?}", val);
                        println!("    as_bool(): {:?}", val.as_bool());
                        println!("    as_string(): {:?}", val.as_string());
                    } else {
                        println!("  ✗ No 'required' property found");
                    }
                }
            }
            Err(e) => {
                println!("  ✗ Parse error: {}", e);
            }
        }
        println!();
    }
}