noodles_cram::crai

Struct Writer

Source
pub struct Writer<W>
where W: Write,
{ /* private fields */ }
Expand description

A CRAM index writer.

Implementations§

Source§

impl<W> Writer<W>
where W: Write,

Source

pub fn new(inner: W) -> Self

Creates a CRAM index writer.

§Examples
use noodles_cram::crai;
let writer = crai::Writer::new(Vec::new());
Source

pub fn get_ref(&self) -> &W

Returns a reference to the underlying writer.

§Examples
use noodles_cram::crai;
let writer = crai::Writer::new(Vec::new());
assert!(writer.get_ref().is_empty());
Source

pub fn finish(self) -> Result<W>

Attempts to finish the output stream and returns the underlying writer.

This is typically only manually called if the underlying stream is needed before the writer is dropped.

§Examples
use noodles_cram::crai;
let writer = crai::Writer::new(Vec::new());
let empty_gz = [31, 139, 8, 0, 0, 0, 0, 0, 0, 255, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0];
assert_eq!(writer.finish()?, empty_gz);
Source

pub fn write_index(&mut self, index: &[Record]) -> Result<()>

Writes a CRAM index.

§Examples
use noodles_core::Position;
use noodles_cram::crai;

let mut writer = crai::Writer::new(Vec::new());

let index = vec![crai::Record::new(
    Some(0),
    Position::new(10946),
    6765,
    17711,
    233,
    317811,
)];

writer.write_index(&index)?;

Auto Trait Implementations§

§

impl<W> Freeze for Writer<W>
where W: Freeze,

§

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> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.