#repeat #tandem #parser #tfr

trfr

解析Tandem Repeat Finder .dat文件

3个版本

0.1.2 2024年1月22日
0.1.1 2024年1月22日
0.1.0 2024年1月22日

#1217 in 解析器实现

MIT许可证

17KB
325

trfr

trfrcrate仅用于解析命令行工具Tandem Repeat Finder(或trf)的输出。

输出是通过传递--d标志来创建可解析的表格(而不是标准HTML输出)。有关trf的源代码和引用,请参阅此处

API遵循大多数主流Rust API的规范(特别是BurntSushi的)。它是一个迭代器API。

示例

use std::{error::Error, io, process};

fn example() -> Result<(), Box<dyn Error>> {
    // Build the trfr reader
    // and assuming you are parsing with `-d` flag only
    let mut rdr = trfr::Reader::from_reader(io::stdin(), trfr::Flag::D);
    for result in rdr.records() {
        let record = result?;
        println!("{:?}", record);
    }
    Ok(())
}

fn main() {
    if let Err(err) = example() {
        println!("error running example: {}", err);
        process::exit(1);
    }
}

lib.rs:

trfrcrate仅用于解析命令行工具Tandem Repeat Finder(或trf)的输出。

输出是通过传递--d标志来创建可解析的表格(而不是标准HTML输出)。有关trf的源代码和引用,请参阅此处

API遵循大多数主流Rust API的规范(特别是BurntSushi的)。它是一个迭代器API。

示例

use std::{error::Error, io, process};

fn example() -> Result<(), Box<dyn Error>> {
// Build the trfr reader
// and assuming you are parsing with `-d` flag only
let mut rdr = trfr::Reader::from_reader(io::stdin(), trfr::Flag::D);
for result in rdr.records() {
let record = result?;
println!("{:?}", record);
}
Ok(())
}

fn main() {
if let Err(err) = example() {
println!("error running example: {}", err);
process::exit(1);
}
}

无运行时依赖