Struct noodles_vcf::AsyncWriter
source · pub struct AsyncWriter<W>where
W: AsyncWrite,{ /* private fields */ }
Expand description
An async VCF writer.
If the inner writer is buffered, a call to Self::shutdown
must be made before the writer is
dropped.
Implementations§
source§impl<W> Writer<W>where
W: AsyncWrite + Unpin,
impl<W> Writer<W>where
W: AsyncWrite + Unpin,
sourcepub fn new(inner: W) -> Self
pub fn new(inner: W) -> Self
Creates an async VCF writer.
§Examples
use noodles_vcf as vcf;
let writer = vcf::AsyncWriter::new(Vec::new());
sourcepub fn get_ref(&self) -> &W
pub fn get_ref(&self) -> &W
Returns a reference to the underlying writer.
§Examples
use noodles_vcf as vcf;
let writer = vcf::AsyncWriter::new(Vec::new());
assert!(writer.get_ref().is_empty());
sourcepub fn get_mut(&mut self) -> &mut W
pub fn get_mut(&mut self) -> &mut W
Returns a mutable reference to the underlying writer.
§Examples
use noodles_vcf as vcf;
let mut writer = vcf::AsyncWriter::new(Vec::new());
assert!(writer.get_mut().is_empty());
sourcepub fn into_inner(self) -> W
pub fn into_inner(self) -> W
Returns the underlying writer.
§Examples
use noodles_vcf as vcf;
let writer = vcf::AsyncWriter::new(Vec::new());
assert!(writer.into_inner().is_empty());
sourcepub async fn shutdown(&mut self) -> Result<()>
pub async fn shutdown(&mut self) -> Result<()>
Shuts down the output stream.
§Examples
use noodles_vcf as vcf;
let mut writer = vcf::AsyncWriter::new(Vec::new());
writer.shutdown().await?;
sourcepub async fn write_header(&mut self, header: &Header) -> Result<()>
pub async fn write_header(&mut self, header: &Header) -> Result<()>
Writes a VCF header.
§Examples
use noodles_vcf as vcf;
let mut writer = vcf::AsyncWriter::new(Vec::new());
let header = vcf::Header::default();
writer.write_header(&header).await?;
sourcepub async fn write_record(&mut self, record: &Record) -> Result<()>
pub async fn write_record(&mut self, record: &Record) -> Result<()>
Writes a VCF record.
§Examples
use noodles_vcf::{self as vcf, record::Position};
let record = vcf::Record::builder()
.set_chromosome("sq0".parse()?)
.set_position(Position::from(1))
.set_reference_bases("A".parse()?)
.build()?;
let mut writer = vcf::AsyncWriter::new(Vec::new());
writer.write_record(&record).await?;
Auto Trait Implementations§
impl<W> RefUnwindSafe for Writer<W>where
W: RefUnwindSafe,
impl<W> Send for Writer<W>where
W: Send,
impl<W> Sync for Writer<W>where
W: Sync,
impl<W> Unpin for Writer<W>where
W: Unpin,
impl<W> UnwindSafe for Writer<W>where
W: 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