Skip to content
/ gb-io Public

A Rust library for parsing, writing and manipulating Genbank sequence files

License

Notifications You must be signed in to change notification settings

dlesl/gb-io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gb-io

crates.io link docs.rs link

This is a library for parsing and working with Genbank (.gb) files written in Rust. It supports reading, writing, and extracting parts of a sequence while retaining feature annotations.

It should be able to handle most files out there. Feedback, improvements, and details of any .gb files it chokes on are welcome!

Example

Reverse complement a sequence, retaining feature annotations.

extern crate gb_io;

use std::fs::File;
use std::io;

use gb_io::reader::SeqReader;

fn main() {
    let file = File::open("mg1655.gb").unwrap();
    let stdout = io::stdout();
    for seq in SeqReader::new(file) {
        let seq = seq.unwrap();
        let rc = seq.revcomp();
        rc.write(stdout.lock()).unwrap();
    }
}

Python bindings

Martin Larralde has written Python bindings for gb-io's parser.

About

A Rust library for parsing, writing and manipulating Genbank sequence files

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages