Struct noodles_sam::header::reference_sequence::ReferenceSequence [−][src]
pub struct ReferenceSequence { /* fields omitted */ }
Expand description
A SAM header reference sequence.
The reference sequence describes a sequence a read possibly mapped to. Both the reference sequence name and length are guaranteed to be set.
A list of reference sequences creates a reference sequence dictionary.
Implementations
Creates a SAM header reference sequence builder.
Examples
use noodles_sam::header::ReferenceSequence;
let builder = ReferenceSequence::builder();
Creates a reference sequence with a name and length.
Examples
use noodles_sam::header::ReferenceSequence;
let reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
Returns the reference sequence name.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert_eq!(**reference_sequence.name(), "sq0");
Returns a mutable reference to the reference sequence name.
Examples
use noodles_sam::header::{reference_sequence::Name, ReferenceSequence};
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert_eq!(**reference_sequence.name(), "sq0");
*reference_sequence.name_mut() = "sq1".parse()?;
assert_eq!(**reference_sequence.name(), "sq1");
Returns the reference sequence length.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert_eq!(reference_sequence.len(), 13);
Returns a mutable reference to the reference sequence length.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert_eq!(reference_sequence.len(), 13);
*reference_sequence.len_mut() = 8;
assert_eq!(reference_sequence.len(), 8);
Returns the alternative locus.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.alternative_locus().is_none());
Returns the alternative names (aliases) of the reference sequence.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.alternative_names().is_none());
Returns the genome assembly ID.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.assembly_id().is_none());
Returns the description.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.description().is_none());
Returns the MD5 checksum.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.md5_checksum().is_none());
Returns the species.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.species().is_none());
Returns the molecule topology.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.molecule_topology().is_none());
Returns the URI.
Examples
use noodles_sam::header::ReferenceSequence;
let mut reference_sequence = ReferenceSequence::new("sq0".parse()?, 13)?;
assert!(reference_sequence.uri().is_none());
Returns the raw fields of the reference sequence.
This includes any field that is not specially handled by the structure itself. For example,
this will not include the name and length fields, as they are parsed and available as
Self::name
and Self::len
, respectively.
Examples
use noodles_sam::header::{reference_sequence::{self, Tag}, ReferenceSequence};
let name: reference_sequence::Name = "sq0".parse()?;
let zn = Tag::Other([b'z', b'n']);
let reference_sequence = ReferenceSequence::builder()
.set_name(name.clone())
.set_length(13)
.insert(zn, String::from("noodles"))
.build()?;
let fields = reference_sequence.fields();
assert_eq!(fields.len(), 1);
assert_eq!(fields.get(&zn), Some(&String::from("noodles")));
assert_eq!(fields.get(&Tag::Name), None);
assert_eq!(reference_sequence.name(), &name);
assert_eq!(fields.get(&Tag::Length), None);
assert_eq!(reference_sequence.len(), 13);
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ReferenceSequence
impl Send for ReferenceSequence
impl Sync for ReferenceSequence
impl Unpin for ReferenceSequence
impl UnwindSafe for ReferenceSequence
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.