Trait noodles_sam::RecordExt [−][src]
pub trait RecordExt {
fn reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>;
fn alignment_start(&self) -> Option<Position>;
fn alignment_span(&self) -> Result<u32>;
fn mate_reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>;
fn alignment_end(&self) -> Option<Result<Position>> { ... }
}
Expand description
SAM(-like) record extensions.
Required methods
fn reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>
fn reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>
Returns the associated reference sequence.
fn alignment_start(&self) -> Option<Position>
fn alignment_start(&self) -> Option<Position>
Returns the start position.
fn alignment_span(&self) -> Result<u32>
fn alignment_span(&self) -> Result<u32>
Calculates the alignment span over the reference sequence.
fn mate_reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>
fn mate_reference_sequence<'rs>(
&self,
reference_sequences: &'rs ReferenceSequences
) -> Option<Result<&'rs ReferenceSequence>>
Returns the associated reference sequence of the mate.
Provided methods
fn alignment_end(&self) -> Option<Result<Position>>
fn alignment_end(&self) -> Option<Result<Position>>
Calculates the end position.
Examples
use noodles_sam::{
self as sam,
record::{cigar::{op::Kind, Op}, Cigar, Position},
RecordExt,
};
let record = sam::Record::builder()
.set_position(Position::try_from(8)?)
.set_cigar(Cigar::from(vec![Op::new(Kind::Match, 5)]))
.build()?;
let actual = record.alignment_end().transpose()?;
let expected = Position::try_from(12).map(Some)?;
assert_eq!(actual, expected);