Skip to main content

ReadSegment

Struct ReadSegment 

Source
pub struct ReadSegment {
    pub length: Option<usize>,
    pub kind: SegmentType,
}
Expand description

A single segment of a read structure: a segment type and an optional fixed length.

Segments are typically obtained by parsing a ReadStructure; the positions of the segment’s bases within a read are tracked by the enclosing ReadStructure, not here.

Fields§

§length: Option<usize>

The optional length of this segment. None means this is the indefinite-length (+) segment; its concrete span is resolved by the enclosing ReadStructure at extract time (it runs from just after the preceding segments up to just before the following segments, so in 8B+M10T the +M segment covers everything between byte 8 and read_len - 10). At most one segment per read structure may be indefinite.

§kind: SegmentType

The segment type.

Implementations§

Source§

impl ReadSegment

Source

pub fn length(&self) -> Option<usize>

Returns the length of the read segment, or None for an indefinite-length (+) segment.

Source

pub fn has_length(&self) -> bool

Returns true if the read segment has a defined length (i.e. is not +).

Trait Implementations§

Source§

impl Clone for ReadSegment

Source§

fn clone(&self) -> ReadSegment

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ReadSegment

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for ReadSegment

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the ReadSegment as a string.

Source§

impl FromStr for ReadSegment

Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Builds a ReadSegment from a string representation. The character representation of SegmentType must be the last character, while the leading character(s) either a non-zero integer, or the any-length character.

§Errors

Returns Err if the string was too short, if the length could not be parsed, or if the segment type could not be recognized.

Source§

type Err = ReadStructureError

The associated error which can be returned from parsing.
Source§

impl Hash for ReadSegment

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ReadSegment

Source§

fn eq(&self, other: &ReadSegment) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ReadSegment

Source§

impl Eq for ReadSegment

Source§

impl StructuralPartialEq for ReadSegment

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.