Struct noodles_fastq::AsyncReader
source · pub struct AsyncReader<R> { /* private fields */ }
Expand description
An async FASTQ 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 FASTQ reader.
Examples
use noodles_fastq as fastq;
let data = [];
let reader = fastq::AsyncReader::new(&data[..]);
sourcepub async fn read_record(&mut self, record: &mut Record) -> Result<usize>
pub async fn read_record(&mut self, record: &mut Record) -> Result<usize>
Reads a FASTQ record.
Examples
use noodles_fastq as fastq;
let data = b"@r0\nATCG\n+\nNDLS\n";
let mut reader = fastq::AsyncReader::new(&data[..]);
let mut record = fastq::Record::default();
reader.read_record(&mut record).await?;
assert_eq!(record.name(), b"r0");
assert_eq!(record.sequence(), b"ATCG");
assert_eq!(record.quality_scores(), b"NDLS");
sourcepub fn records(&mut self) -> impl Stream<Item = Result<Record>> + '_
pub fn records(&mut self) -> impl Stream<Item = Result<Record>> + '_
Returns an (async) stream over records starting from the current (input) stream position.
Examples
use futures::TryStreamExt;
use noodles_fastq as fastq;
let data = b"@r0\nATCG\n+\nNDLS\n";
let mut reader = fastq::AsyncReader::new(&data[..]);
let mut records = reader.records();
while let Some(record) = records.try_next().await? {
// ...
}
Auto Trait Implementations§
impl<R> RefUnwindSafe for Reader<R>where
R: RefUnwindSafe,
impl<R> Send for Reader<R>where
R: Send,
impl<R> Sync for Reader<R>where
R: Sync,
impl<R> Unpin for Reader<R>where
R: Unpin,
impl<R> UnwindSafe for Reader<R>where
R: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more