Struct noodles_sam::record::builder::Builder[][src]

pub struct Builder { /* fields omitted */ }
Expand description

A SAM record builder.

Implementations

Creates a SAM record builder.

Typically, Record::builder is used instead of calling this.

Examples
use noodles_sam as sam;
let builder = sam::Record::builder();

Sets a SAM record read name.

Examples
use noodles_sam as sam;

let record = sam::Record::builder()
    .set_read_name("r0".parse()?)
    .build()?;

assert_eq!(record.read_name().map(|name| name.as_str()), Some("r0"));
Ok::<(), Box<dyn std::error::Error>>(())

Sets SAM record flags.

Examples
use noodles_sam::{self as sam, record::Flags};

let record = sam::Record::builder()
    .set_flags(Flags::PAIRED | Flags::READ_1)
    .build()?;

assert_eq!(record.flags(), Flags::PAIRED | Flags::READ_1);

Sets a SAM record reference sequence name.

Examples
use noodles_sam as sam;

let record = sam::Record::builder()
    .set_reference_sequence_name("sq0".parse()?)
    .build()?;

assert_eq!(record.reference_sequence_name().map(|name| name.as_str()), Some("sq0"));
Ok::<(), Box<dyn std::error::Error>>(())

Sets a SAM record position.

This value is 1-based.

Examples
use noodles_sam::{self as sam, record::Position};

let record = sam::Record::builder()
    .set_position(Position::try_from(13)?)
    .build()?;

assert_eq!(record.position().map(i32::from), Some(13));

Sets a SAM record mapping quality.

Examples
use noodles_sam::{self as sam, record::MappingQuality};

let record = sam::Record::builder()
    .set_mapping_quality(MappingQuality::from(34))
    .build()?;

assert_eq!(*record.mapping_quality(), Some(34));

Sets a SAM record CIGAR.

Examples
use noodles_sam::{self as sam, record::cigar::{op::Kind, Op}};

let record = sam::Record::builder()
    .set_cigar("36M".parse()?)
    .build()?;

assert_eq!(**record.cigar(), [Op::new(Kind::Match, 36)]);
Ok::<(), Box<dyn std::error::Error>>(())

Sets a SAM record mate reference sequence name.

This value is 1-based.

Examples
use noodles_sam as sam;

let record = sam::Record::builder()
    .set_mate_reference_sequence_name("sq0".parse()?)
    .build()?;

assert_eq!(record.mate_reference_sequence_name().map(|name| name.as_str()), Some("sq0"));
Ok::<(), Box<dyn std::error::Error>>(())

Sets a SAM record mate position.

Examples
use noodles_sam::{self as sam, record::Position};

let record = sam::Record::builder()
    .set_mate_position(Position::try_from(17)?)
    .build()?;

assert_eq!(record.mate_position().map(i32::from), Some(17));

Sets a SAM record template length.

Examples
use noodles_sam as sam;
let record = sam::Record::builder().set_template_length(36).build()?;
assert_eq!(record.template_length(), 36);

Sets a SAM record sequence.

Examples
use noodles_sam::{self as sam, record::sequence::Base};

let record = sam::Record::builder()
    .set_cigar("4M".parse()?)
    .set_sequence("ACGT".parse()?)
    .set_quality_scores("NDLS".parse()?)
    .build()?;

assert_eq!(**record.sequence(), [Base::A, Base::C, Base::G, Base::T]);
Ok::<(), Box<dyn std::error::Error>>(())

Sets SAM record quality scores.

Examples
use noodles_sam::{self as sam, record::quality_scores::Score};

let record = sam::Record::builder()
    .set_cigar("2M".parse()?)
    .set_sequence("AC".parse()?)
    .set_quality_scores("ND".parse()?)
    .build()?;

assert_eq!(**record.quality_scores(), [
    Score::try_from('N')?,
    Score::try_from('D')?,
]);
Ok::<(), Box<dyn std::error::Error>>(())

Sets SAM record data.

Examples
use noodles_sam::{self as sam, record::{data, Data}};

let record = sam::Record::default();
assert!(record.data().is_empty());

let data = Data::try_from(vec![data::Field::new(
    data::field::Tag::AlignmentHitCount,
    data::field::Value::Int(1),
)])?;
let record = sam::Record::builder().set_data(data).build()?;
assert_eq!(record.data().to_string(), "NH:i:1");

Builds a SAM record.

Example
use noodles_sam as sam;
let record = sam::Record::builder().build()?;

Trait Implementations

Formats the value using the given formatter. Read more

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

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.