Skip to main content

bed_view/
bed_view.rs

1//! Prints BED records as BED3+ records.
2
3use std::{
4    env,
5    fs::File,
6    io::{self, BufReader},
7};
8
9use noodles_bed as bed;
10
11fn main() -> Result<(), Box<dyn std::error::Error>> {
12    let src = env::args().nth(1).expect("missing src");
13
14    let mut reader = File::open(src)
15        .map(BufReader::new)
16        .map(bed::io::Reader::<3, _>::new)?;
17
18    let stdout = io::stdout().lock();
19    let mut writer = bed::io::Writer::<3, _>::new(stdout);
20
21    let mut record = bed::Record::default();
22
23    while reader.read_record(&mut record)? != 0 {
24        writer.write_record(&record)?;
25    }
26
27    Ok(())
28}