Struct noodles::sam::header::reference_sequence::builder::Builder [−][src]
pub struct Builder { /* fields omitted */ }
Expand description
A SAM header reference sequence builder.
Implementations
Sets a reference sequence name.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.build()?;
assert_eq!(reference_sequence.name(), "sq0");
Sets a reference sequence length.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.build()?;
assert_eq!(reference_sequence.len(), 13);
Sets an alternative locus.
Examples
use noodles_sam::header::{reference_sequence::AlternativeLocus, ReferenceSequence};
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_alternative_locus(AlternativeLocus::Unknown)
.build()?;
assert_eq!(
reference_sequence.alternative_locus(),
Some(&AlternativeLocus::Unknown)
);
Sets alternative names.
Examples
use noodles_sam::header::{
reference_sequence::AlternativeNames,
ReferenceSequence,
};
let alternative_names: AlternativeNames = "0,SQ.0".parse()?;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_alternative_names(alternative_names.clone())
.build()?;
assert_eq!(reference_sequence.alternative_names(), Some(&alternative_names));
Sets a genome assembly ID.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_assembly_id("ref")
.build()?;
assert_eq!(reference_sequence.assembly_id(), Some("ref"));
Sets a description.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_description("noodles")
.build()?;
assert_eq!(reference_sequence.description(), Some("noodles"));
Sets an MD5 checksum.
Examples
use noodles_sam::header::{reference_sequence::Md5Checksum, ReferenceSequence};
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_md5_checksum(Md5Checksum::from([
0xd7, 0xeb, 0xa3, 0x11, 0x42, 0x1b, 0xbc, 0x9d,
0x3a, 0xda, 0x44, 0x70, 0x9d, 0xd6, 0x15, 0x34,
]))
.build()?;
assert_eq!(reference_sequence.md5_checksum(), Some(Md5Checksum::from([
0xd7, 0xeb, 0xa3, 0x11, 0x42, 0x1b, 0xbc, 0x9d,
0x3a, 0xda, 0x44, 0x70, 0x9d, 0xd6, 0x15, 0x34,
])));
Sets a species.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_species("human")
.build()?;
assert_eq!(reference_sequence.species(), Some("human"));
Sets a molecule topology.
Examples
use noodles_sam::header::{reference_sequence::MoleculeTopology, ReferenceSequence};
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_molecule_topology(MoleculeTopology::Linear)
.build()?;
assert_eq!(reference_sequence.molecule_topology(), Some(MoleculeTopology::Linear));
Sets a URI.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.set_uri("file:///tmp/ref.fasta")
.build()?;
assert_eq!(reference_sequence.uri(), Some("file:///tmp/ref.fasta"));
Inserts a tag-raw value pair.
Examples
use noodles_sam::header::{reference_sequence::Tag, ReferenceSequence};
let zn = Tag::Other(String::from("zn"));
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.insert(zn.clone(), String::from("noodles"))
.build()?;
assert_eq!(
reference_sequence.fields().get(&zn),
Some(&String::from("noodles"))
);
Builds a reference sequence.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::builder()
.set_name("sq0")
.set_length(13)
.build()?;