24 个版本 (14 个破坏性版本)
0.15.0 | 2024 年 5 月 8 日 |
---|---|
0.14.0 | 2024 年 1 月 25 日 |
0.13.0 | 2023 年 12 月 14 日 |
0.12.0 | 2023 年 6 月 15 日 |
0.1.2 | 2021 年 7 月 30 日 |
在 解析器实现 中排名 2854
每月下载 4,777 次
用于 83 个 仓库(直接使用 16 个)
27KB
535 行
noodles
noodles 尝试提供符合规范(当适用时)的用于处理各种生物信息学文件格式的库的实现。它目前支持 BAM 1.6、BCF 2.2、BED、BGZF、CRAM 3.0/3.1、CSI、FASTA、FASTQ、GFF3、GTF 2.2、htsget 1.3、refget 2.0、SAM 1.6、tabix 和 VCF 4.3/4.4。
用法
noodles 发布在 crates.io。早期版本可以在项目中使用,但请注意,API 仍然被视为实验性的。
noodles 按文件格式分为多个仓库。为了方便,可以将顶层元仓库 noodles
添加到项目的依赖列表中;并将格式列为 功能。例如,要使用 BAM 格式,添加 noodles
仓库并启用 bam
功能。
cargo add noodles --features bam
然后可以通过其重导出的名称导入已启用的功能,例如
use noodles::bam;
功能标志
单个仓库可能具有可选的功能,可以使用功能标志启用。
async
:启用与 Tokio 的异步 I/O。(BAM、BCF、BGZF、CRAM、CSI、FASTA、FASTQ、GFF、SAM、tabix 和 VCF)libdeflate
:使用 libdeflate 编码和解码 DEFLATE 流。(BGZF 和 CRAM)
示例
每个仓库可能都有自己的示例目录,所有示例都可以作为应用程序运行。克隆仓库后,运行 cargo run --release --example
以获取可用的示例列表。使用示例名称作为选项参数并将程序参数附加到命令中,例如
cargo run --release --example bam_write > sample.bam
cargo run --release --example bam_read_header sample.bam
lib.rs
:
noodles-core 包含面条库之间的共享结构和行为。
依赖项
~0.6–1MB
~16K SLoC