Struct noodles_fasta::AsyncReader
source · pub struct AsyncReader<R> { /* private fields */ }
Expand description
An async FASTA reader.
Implementations§
source§impl<R> Reader<R>where
R: AsyncBufRead + Unpin,
impl<R> Reader<R>where R: AsyncBufRead + Unpin,
sourcepub fn new(inner: R) -> Self
pub fn new(inner: R) -> Self
Creates an async FASTA reader.
Examples
use noodles_fasta as fasta;
let data = [];
let mut reader = fasta::AsyncReader::new(&data[..]);
sourcepub async fn read_definition(&mut self, buf: &mut String) -> Result<usize>
pub async fn read_definition(&mut self, buf: &mut String) -> Result<usize>
Reads a raw definition line.
Examples
use noodles_fasta as fasta;
let data = b">sq0\nACGT\n>sq1\nNNNN\nNNNN\nNN\n";
let mut reader = fasta::AsyncReader::new(&data[..]);
let mut buf = String::new();
reader.read_definition(&mut buf).await?;
assert_eq!(buf, ">sq0");
sourcepub async fn read_sequence(&mut self, buf: &mut Vec<u8>) -> Result<usize>
pub async fn read_sequence(&mut self, buf: &mut Vec<u8>) -> Result<usize>
Reads a sequence.
Examples
use noodles_fasta as fasta;
let data = b">sq0\nACGT\n>sq1\nNNNN\nNNNN\nNN\n";
let mut reader = fasta::AsyncReader::new(&data[..]);
reader.read_definition(&mut String::new()).await?;
let mut buf = Vec::new();
reader.read_sequence(&mut buf).await?;
assert_eq!(buf, b"ACGT");