Crates.io | rimloc-validate |
lib.rs | rimloc-validate |
version | 0.1.0 |
created_at | 2025-09-25 18:18:52.066338+00 |
updated_at | 2025-09-25 18:18:52.066338+00 |
description | Validation helpers for RimLoc to catch duplicates/placeholders issues |
homepage | |
repository | https://github.com/0-danielviktorovich-0/RimLoc |
max_upload_size | |
id | 1854959 |
size | 22,261 |
Validation helpers for RimLoc to catch duplicate keys and placeholder mismatches.
[dependencies]
rimloc-validate = "0.1.0"
rimloc-core = "0.1.0"
Validate scanned units:
use rimloc_core::TransUnit;
use rimloc_validate::validate;
use std::path::PathBuf;
fn main() -> color_eyre::Result<()> {
let units = vec![TransUnit {
key: "Greeting".into(),
source: Some("Hello %s".into()),
path: PathBuf::from("/Mods/My/Languages/English/Keyed/A.xml"),
line: Some(3),
}];
let msgs = validate(&units)?;
for m in msgs {
eprintln!("{}:{} [{}] {}", m.path, m.line.unwrap_or(0), m.kind, m.message);
}
Ok(())
}