Files
Neon-Desk/rust/crabrl-fork/examples/validate.rs
francy51 ea130d3299 Vendor crabrl-fork source and remove submodule linkage
- Replace `rust/crabrl-fork` gitlink with tracked source files
- Add workspace notes documenting why the fork is vendored
- Update ignore rules for vendored fork build artifacts
2026-03-17 19:55:38 -04:00

30 lines
654 B
Rust

//! Validation example
use crabrl::{Parser, Validator};
use std::env;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let args: Vec<String> = env::args().collect();
if args.len() != 2 {
eprintln!("Usage: {} <xbrl-file>", args[0]);
std::process::exit(1);
}
// Parse
let parser = Parser::new();
let doc = parser.parse_file(&args[1])?;
// Validate
let validator = Validator::new();
match validator.validate(&doc) {
Ok(_) => {
println!("✓ Document is valid");
}
Err(e) => {
println!("✗ Validation failed: {}", e);
}
}
Ok(())
}