noodles_sam::header::record::value::map::builder

Struct Builder

Source
pub struct Builder<I>
where I: Inner,
{ /* private fields */ }
Expand description

A SAM header record map value builder.

Implementations§

Source§

impl<I> Builder<I>
where I: Inner,

Source

pub fn insert<V>(self, key: Other<I::StandardTag>, value: V) -> Self
where V: Into<BString>,

Inserts a key-value pair into the other fields.

§Examples
use bstr::BString;
use noodles_sam::header::record::value::{map::{Header, Tag}, Map};

let nd = match Tag::try_from([b'n', b'd']) {
    Ok(Tag::Other(tag)) => tag,
    _ => unreachable!(),
};

let header = Map::<Header>::builder().insert(nd, "noodles").build()?;

assert_eq!(header.other_fields().get(b"nd"), Some(&BString::from("noodles")));
Source

pub fn build(self) -> Result<Map<I>, BuildError>

Builds a SAM header record map value.

§Examples
use noodles_sam::header::record::value::{map::Header, Map};
let header = Map::<Header>::builder().build()?;
Source§

impl Builder<Header>

Source

pub fn set_version(self, version: Version) -> Self

Sets a format version.

§Examples
use noodles_sam::header::record::value::{
    map::{self, header::Version},
    Map,
};

let version = Version::new(1, 6);
let header = Map::<map::Header>::builder().set_version(version).build()?;
assert_eq!(header.version(), version);
Source§

impl Builder<ReferenceSequence>

Source

pub fn set_length(self, length: NonZeroUsize) -> Self

Sets a reference sequence length.

§Examples
use std::num::NonZeroUsize;

use noodles_sam::header::record::value::{map::ReferenceSequence, Map};

let length = NonZeroUsize::try_from(13)?;

let reference_sequence = Map::<ReferenceSequence>::builder()
    .set_length(length)
    .build()?;

assert_eq!(reference_sequence.length(), length);

Trait Implementations§

Source§

impl<I> Default for Builder<I>
where I: Inner,

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<I> Freeze for Builder<I>
where <I as Inner>::Builder: Freeze,

§

impl<I> RefUnwindSafe for Builder<I>

§

impl<I> Send for Builder<I>
where <I as Inner>::Builder: Send, <I as Inner>::StandardTag: Send,

§

impl<I> Sync for Builder<I>
where <I as Inner>::Builder: Sync, <I as Inner>::StandardTag: Sync,

§

impl<I> Unpin for Builder<I>
where <I as Inner>::Builder: Unpin, <I as Inner>::StandardTag: Unpin,

§

impl<I> UnwindSafe for Builder<I>

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, 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.