pub async fn from_xml_files_concurrent<'a, I, P>(
paths: I,
config: &FromXmlConfig,
concurrency: usize,
) -> Vec<Result<Document, String>>Expand description
Process multiple XML files concurrently
Returns results in the same order as input paths.
§Examples
use hedl_xml::async_api::from_xml_files_concurrent;
use hedl_xml::FromXmlConfig;
let paths = vec!["file1.xml", "file2.xml", "file3.xml"];
let config = FromXmlConfig::default();
let results = from_xml_files_concurrent(&paths, &config, 4).await;
for (path, result) in paths.iter().zip(results.iter()) {
match result {
Ok(doc) => println!("{}: {} items", path, doc.root.len()),
Err(e) => eprintln!("{}: error - {}", path, e),
}
}§Arguments
paths- Iterator of file paths to processconfig- Configuration for XML parsingconcurrency- Maximum number of concurrent operations