fn sample_msg() -> &'static [u8] {
b"\
UNA:+.? '\
UNH+1+ORDERS:D:11A:UN'\
UNH+1+ORDERS:D:11A:UN'\
BGM+220+PO-4711+9'\
DTM+137:20260401:102'\
NAD+BY+4000001000002::9'\
NAD+SU+4000001000001::9'\
UNT+5+1'"
}
fn main() -> Result<(), edifact_rs::EdifactError> {
let target_bytes = 10_000_000usize; let message = sample_msg();
let repetitions = (target_bytes / message.len()) + 1;
let payload = message.repeat(repetitions);
let mut segment_count = 0usize;
for segment in edifact_rs::from_bytes(&payload) {
segment?; segment_count += 1;
}
println!(
"payload_bytes={} segment_count={}",
payload.len(),
segment_count
);
Ok(())
}