pub struct Writer<W: Write> { /* private fields */ }
Expand description
Writes Transcript
s into a BufWriter
to be used as gene annotation
by SpliceAI
Examples
use atglib::tests;;
use atglib::spliceai::Writer;
use atglib::models::TranscriptWrite;
let transcripts = vec![tests::transcripts::standard_transcript()];
let output = Vec::new(); // substitute this with proper IO (io::stdout())
let mut writer = Writer::new(output);
writer.write_transcript_vec(&transcripts);
assert_eq!(
writer.into_inner().unwrap(), // this is our actual output
b"#NAME\tCHROM\tSTRAND\tTX_START\tTX_END\tEXON_START\tEXON_END
Test-Gene\tchr1\t+\t11\t55\t11,21,31,41,51,\t15,25,35,45,55,
"
);
Implementations§
source§impl<W: Write> Writer<W>
impl<W: Write> Writer<W>
sourcepub fn new(writer: W) -> Self
pub fn new(writer: W) -> Self
Creates a new generic Writer for any `std::io::Read`` object
Use this method when you want to write to stdout or a remote source, e.g. via HTTP
pub fn with_capacity(capacity: usize, writer: W) -> Self
pub fn flush(&mut self) -> Result<(), AtgError>
pub fn into_inner(self) -> Result<W, AtgError>
pub fn write_header(&mut self) -> Result<(), Error>
Trait Implementations§
source§impl<W: Write> TranscriptWrite for Writer<W>
impl<W: Write> TranscriptWrite for Writer<W>
source§fn writeln_single_transcript(
&mut self,
transcript: &Transcript
) -> Result<(), Error>
fn writeln_single_transcript( &mut self, transcript: &Transcript ) -> Result<(), Error>
Writes a single transcript formatted for SpliceAI with an extra newline
fn write_single_transcript( &mut self, transcript: &Transcript ) -> Result<(), Error>
fn write_transcripts(&mut self, transcripts: &Transcripts) -> Result<(), Error>
fn write_transcript_vec( &mut self, transcripts: &[Transcript] ) -> Result<(), Error>
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