pub struct BitVectorSubGenome<AlphabetType: Alphabet, BitStoreType = usize>where
BitStoreType: BitStore,{ /* private fields */ }Expand description
The subsequence of a genome sequence stored as vector of minimum-bit characters.
Trait Implementations§
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Borrow<BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Borrow<BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§fn borrow(&self) -> &BitVectorSubGenome<AlphabetType, BitStoreType>
fn borrow(&self) -> &BitVectorSubGenome<AlphabetType, BitStoreType>
Immutably borrows from an owned value. Read more
Source§impl<AlphabetType: Debug + Alphabet, BitStoreType> Debug for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Debug + Alphabet, BitStoreType> Debug for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> EditableGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> EditableGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§fn into_iter_u8(
self,
) -> Map<<Self as IntoIterator>::IntoIter, fn(<AlphabetType as Alphabet>::CharacterType) -> u8> ⓘ
fn into_iter_u8( self, ) -> Map<<Self as IntoIterator>::IntoIter, fn(<AlphabetType as Alphabet>::CharacterType) -> u8> ⓘ
Converts this genome sequence into an iterator over ASCII characters.
Source§fn extend_from_iter_u8<IteratorType: IntoIterator<Item = u8>>(
&mut self,
iter: IteratorType,
) -> Result<(), AlphabetError>
fn extend_from_iter_u8<IteratorType: IntoIterator<Item = u8>>( &mut self, iter: IteratorType, ) -> Result<(), AlphabetError>
Extends this genome from a sequence of ASCII characters.
Source§fn extend_from_slice_u8(&mut self, slice: &[u8]) -> Result<(), AlphabetError>
fn extend_from_slice_u8(&mut self, slice: &[u8]) -> Result<(), AlphabetError>
Extends this genome from a sequence of ASCII characters.
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> EditableSequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> EditableSequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§fn set(
&mut self,
index: usize,
character: <AlphabetType as Alphabet>::CharacterType,
)
fn set( &mut self, index: usize, character: <AlphabetType as Alphabet>::CharacterType, )
Replace the item at the given index with the given item.
Source§fn split_off(&mut self, at: usize) -> Self
fn split_off(&mut self, at: usize) -> Self
See Vec::split_off.
Source§fn resize(&mut self, new_len: usize, default: AlphabetType::CharacterType)
fn resize(&mut self, new_len: usize, default: AlphabetType::CharacterType)
Resize to contain the given number of items.
Empty spaces are filled with the given item.
Source§fn resize_with(
&mut self,
new_len: usize,
generator: impl FnMut() -> AlphabetType::CharacterType,
)
fn resize_with( &mut self, new_len: usize, generator: impl FnMut() -> AlphabetType::CharacterType, )
Resize to contain the given number of items.
Empty spaces are filled with the given items generated by
generator.Source§fn push(&mut self, character: AlphabetType::CharacterType)
fn push(&mut self, character: AlphabetType::CharacterType)
Insert the given item at the end of the sequence.
Source§fn splice(
&mut self,
range: Range<usize>,
replace_with: impl IntoIterator<Item = AlphabetType::CharacterType>,
)
fn splice( &mut self, range: Range<usize>, replace_with: impl IntoIterator<Item = AlphabetType::CharacterType>, )
See
Vec::splice. Read moreSource§fn extend_into<ExtensionItem, ExtensionSource>(
&mut self,
extension: ExtensionSource,
)where
ExtensionItem: Into<Item>,
ExtensionSource: IntoIterator<Item = ExtensionItem>,
fn extend_into<ExtensionItem, ExtensionSource>(
&mut self,
extension: ExtensionSource,
)where
ExtensionItem: Into<Item>,
ExtensionSource: IntoIterator<Item = ExtensionItem>,
Extend this sequence from a sequence of compatible items.
Source§impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
Source§fn as_genome_subsequence(
&self,
) -> &BitVectorSubGenome<AlphabetType, BitArrayType>
fn as_genome_subsequence( &self, ) -> &BitVectorSubGenome<AlphabetType, BitArrayType>
Get a reference to this genome as its subsequence type.
Source§fn is_valid(&self) -> bool
fn is_valid(&self) -> bool
Returns true if this genome is valid, i.e. it contains no invalid characters.
Source§fn reverse_complement_iter(
&self,
) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
fn reverse_complement_iter( &self, ) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
Returns an iterator over the reverse complement of this genome.
Panics if the iterator his an invalid character (see not valid).
Source§fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>(
&self,
) -> OwnedKmerIterator<'_, Self, KmerType>
fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>( &self, ) -> OwnedKmerIterator<'_, Self, KmerType>
Returns an iterator over the k-mers of this genome.
The k-mers are cloned from this genome.
Source§fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>(
&self,
) -> ReverseComplementSequence
fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>( &self, ) -> ReverseComplementSequence
Returns an owned copy of the reverse complement of this genome.
Panics if this genome is not valid.
Source§fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>(
&self,
) -> ResultSequence
fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>( &self, ) -> ResultSequence
Returns an owned copy of this genome.
Source§fn is_canonical(&self) -> bool
fn is_canonical(&self) -> bool
Returns true if the genome is canonical.
A canonical genome is lexicographically smaller or equal to its reverse complement.
Source§fn is_self_complemental(&self) -> bool
fn is_self_complemental(&self) -> bool
Returns true if the genome is self-complemental.
A self-complemental genome is equivalent to its reverse complement.
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§fn as_genome_subsequence(
&self,
) -> &BitVectorSubGenome<AlphabetType, BitStoreType>
fn as_genome_subsequence( &self, ) -> &BitVectorSubGenome<AlphabetType, BitStoreType>
Get a reference to this genome as its subsequence type.
Source§fn is_valid(&self) -> bool
fn is_valid(&self) -> bool
Returns true if this genome is valid, i.e. it contains no invalid characters.
Source§fn reverse_complement_iter(
&self,
) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
fn reverse_complement_iter( &self, ) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
Returns an iterator over the reverse complement of this genome.
Panics if the iterator his an invalid character (see not valid).
Source§fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>(
&self,
) -> OwnedKmerIterator<'_, Self, KmerType>
fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>( &self, ) -> OwnedKmerIterator<'_, Self, KmerType>
Returns an iterator over the k-mers of this genome.
The k-mers are cloned from this genome.
Source§fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>(
&self,
) -> ReverseComplementSequence
fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>( &self, ) -> ReverseComplementSequence
Returns an owned copy of the reverse complement of this genome.
Panics if this genome is not valid.
Source§fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>(
&self,
) -> ResultSequence
fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>( &self, ) -> ResultSequence
Returns an owned copy of this genome.
Source§fn is_canonical(&self) -> bool
fn is_canonical(&self) -> bool
Returns true if the genome is canonical.
A canonical genome is lexicographically smaller or equal to its reverse complement.
Source§fn is_self_complemental(&self) -> bool
fn is_self_complemental(&self) -> bool
Returns true if the genome is self-complemental.
A self-complemental genome is equivalent to its reverse complement.
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> GenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§fn is_valid(&self) -> bool
fn is_valid(&self) -> bool
Returns true if this genome is valid, i.e. it contains no invalid characters.
Source§fn as_genome_subsequence(&self) -> &GenomeSubsequence
fn as_genome_subsequence(&self) -> &GenomeSubsequence
Get a reference to this genome as its subsequence type.
Source§fn reverse_complement_iter(
&self,
) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
fn reverse_complement_iter( &self, ) -> ReverseComplementIterator<Self::Iterator<'_>, AlphabetType>
Returns an iterator over the reverse complement of this genome.
Panics if the iterator his an invalid character (see not valid).
Source§fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>(
&self,
) -> OwnedKmerIterator<'_, Self, KmerType>
fn cloned_k_mer_iter<const K: usize, KmerType: OwnedKmer<K, AlphabetType, GenomeSubsequence>>( &self, ) -> OwnedKmerIterator<'_, Self, KmerType>
Returns an iterator over the k-mers of this genome.
The k-mers are cloned from this genome.
Source§fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>(
&self,
) -> ReverseComplementSequence
fn convert_with_reverse_complement<ReverseComplementSequence: OwnedGenomeSequence<AlphabetType, ReverseComplementSubsequence>, ReverseComplementSubsequence: GenomeSequence<AlphabetType, ReverseComplementSubsequence> + ?Sized>( &self, ) -> ReverseComplementSequence
Returns an owned copy of the reverse complement of this genome.
Panics if this genome is not valid.
Source§fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>(
&self,
) -> ResultSequence
fn convert<ResultSequence: OwnedGenomeSequence<AlphabetType, ResultSubsequence>, ResultSubsequence: GenomeSequence<AlphabetType, ResultSubsequence> + ?Sized>( &self, ) -> ResultSequence
Returns an owned copy of this genome.
Source§fn is_canonical(&self) -> bool
fn is_canonical(&self) -> bool
Returns true if the genome is canonical.
A canonical genome is lexicographically smaller or equal to its reverse complement.
Source§fn is_self_complemental(&self) -> bool
fn is_self_complemental(&self) -> bool
Returns true if the genome is self-complemental.
A self-complemental genome is equivalent to its reverse complement.
Source§impl<AlphabetType: Hash + Alphabet, BitStoreType> Hash for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Hash + Alphabet, BitStoreType> Hash for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<Range<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<Range<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeFrom<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeFrom<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeFull> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeFull> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeInclusive<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeInclusive<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeTo<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeTo<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeToInclusive<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<RangeToInclusive<usize>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<usize> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Index<usize> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore> Kmer<K, AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitVectorSubGenome<AlphabetType, BitArrayType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore> Kmer<K, AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitVectorSubGenome<AlphabetType, BitArrayType>
Source§impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> OwnedGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> OwnedGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
Source§fn clone_as_reverse_complement(&self) -> Self
fn clone_as_reverse_complement(&self) -> Self
Returns the reverse complement of this genome.
Panics if this genome is not valid.
Source§fn from_iter_u8<T: IntoIterator<Item = u8>>(
iter: T,
) -> Result<Self, AlphabetError>
fn from_iter_u8<T: IntoIterator<Item = u8>>( iter: T, ) -> Result<Self, AlphabetError>
Constructs an owned genome sequence from an
IntoIter over ASCII characters.
If any character is not part of the alphabet, then None is returned.Source§fn from_slice_u8(slice: &[u8]) -> Result<Self, AlphabetError>
fn from_slice_u8(slice: &[u8]) -> Result<Self, AlphabetError>
Constructs an owned genome sequence from a slice of ASCII characters.
If any character is not part of the alphabet, then
None is returned.Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> OwnedGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> OwnedGenomeSequence<AlphabetType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§fn clone_as_reverse_complement(&self) -> Self
fn clone_as_reverse_complement(&self) -> Self
Returns the reverse complement of this genome.
Panics if this genome is not valid.
Source§fn from_iter_u8<T: IntoIterator<Item = u8>>(
iter: T,
) -> Result<Self, AlphabetError>
fn from_iter_u8<T: IntoIterator<Item = u8>>( iter: T, ) -> Result<Self, AlphabetError>
Constructs an owned genome sequence from an
IntoIter over ASCII characters.
If any character is not part of the alphabet, then None is returned.Source§fn from_slice_u8(slice: &[u8]) -> Result<Self, AlphabetError>
fn from_slice_u8(slice: &[u8]) -> Result<Self, AlphabetError>
Constructs an owned genome sequence from a slice of ASCII characters.
If any character is not part of the alphabet, then
None is returned.Source§impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> OwnedKmer<K, AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> OwnedKmer<K, AlphabetType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
Source§impl<AlphabetType: PartialEq + Alphabet, BitStoreType> PartialEq for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: PartialEq + Alphabet, BitStoreType> PartialEq for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§fn eq(&self, other: &BitVectorSubGenome<AlphabetType, BitStoreType>) -> bool
fn eq(&self, other: &BitVectorSubGenome<AlphabetType, BitStoreType>) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl<AlphabetType: Alphabet, BitStoreType> RefCast for BitVectorSubGenome<AlphabetType, BitStoreType>where
BitStoreType: BitStore,
impl<AlphabetType: Alphabet, BitStoreType> RefCast for BitVectorSubGenome<AlphabetType, BitStoreType>where
BitStoreType: BitStore,
Source§impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
Source§type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitArrayType>
where
Self: 'a,
AlphabetType::CharacterType: 'a
type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitArrayType> where Self: 'a, AlphabetType::CharacterType: 'a
The iterator type of the sequence.
Source§fn prefix(&self, len: usize) -> &Subsequence
fn prefix(&self, len: usize) -> &Subsequence
Returns a prefix with length
len of this sequence.
Panics if len >= self.len().Source§fn suffix(&self, len: usize) -> &Subsequence
fn suffix(&self, len: usize) -> &Subsequence
Returns a suffix with length
len of this sequence.
Panics if len >= self.len().Source§fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
Returns true if this is a proper subsequence of the given sequence.
Proper means that the sequences are not equal.
Source§fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
Returns true if this sequence contains the given item.
Source§fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged before the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty suffix of this sequence equals a non-empty prefix of the other sequence. Read more
Source§fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged after the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty prefix of this sequence equals a non-empty suffix of the other sequence. Read more
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
Source§type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitStoreType>
where
AlphabetType: 'a
type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitStoreType> where AlphabetType: 'a
The iterator type of the sequence.
Source§fn prefix(&self, len: usize) -> &Subsequence
fn prefix(&self, len: usize) -> &Subsequence
Returns a prefix with length
len of this sequence.
Panics if len >= self.len().Source§fn suffix(&self, len: usize) -> &Subsequence
fn suffix(&self, len: usize) -> &Subsequence
Returns a suffix with length
len of this sequence.
Panics if len >= self.len().Source§fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
Returns true if this is a proper subsequence of the given sequence.
Proper means that the sequences are not equal.
Source§fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
Returns true if this sequence contains the given item.
Source§fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged before the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty suffix of this sequence equals a non-empty prefix of the other sequence. Read more
Source§fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged after the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty prefix of this sequence equals a non-empty suffix of the other sequence. Read more
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> Sequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitStoreType>
where
AlphabetType: 'a
type Iterator<'a> = BitVectorSubGenomeIterator<'a, AlphabetType, BitStoreType> where AlphabetType: 'a
The iterator type of the sequence.
Source§fn prefix(&self, len: usize) -> &Subsequence
fn prefix(&self, len: usize) -> &Subsequence
Returns a prefix with length
len of this sequence.
Panics if len >= self.len().Source§fn suffix(&self, len: usize) -> &Subsequence
fn suffix(&self, len: usize) -> &Subsequence
Returns a suffix with length
len of this sequence.
Panics if len >= self.len().Source§fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
fn is_proper_subsequence_of(&self, other: &Self) -> boolwhere
Item: Eq,
Returns true if this is a proper subsequence of the given sequence.
Proper means that the sequences are not equal.
Source§fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
fn contains(&self, item: &Item) -> boolwhere
Item: Eq,
Returns true if this sequence contains the given item.
Source§fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn forward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged before the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty suffix of this sequence equals a non-empty prefix of the other sequence. Read more
Source§fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
fn backward_merge_iter_assume_mergeable<'a>(
&'a self,
suffix: &'a Self,
) -> Chain<Self::Iterator<'a>, Skip<Self::Iterator<'a>>>where
Item: Eq,
Returns an iterator over this sequence merged after the given other sequence under the assumption that the sequences can be merged this way.
A merge is possible if a non-empty prefix of this sequence equals a non-empty suffix of the other sequence. Read more
Source§impl<AlphabetType: Alphabet, BitStoreType: BitStore> ToOwned for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> ToOwned for BitVectorSubGenome<AlphabetType, BitStoreType>
Source§type Owned = BitVectorGenome<AlphabetType, BitStoreType>
type Owned = BitVectorGenome<AlphabetType, BitStoreType>
The resulting type after obtaining ownership.
Source§fn to_owned(&self) -> Self::Owned
fn to_owned(&self) -> Self::Owned
Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · Source§fn clone_into(&self, target: &mut Self::Owned)
fn clone_into(&self, target: &mut Self::Owned)
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<AlphabetType: Eq + Alphabet, BitStoreType> Eq for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<const K: usize, AlphabetType: Alphabet, BitArrayType: BitViewSized + BitStore + BitView<Store = BitArrayType>> OwnedSequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitArrayType>> for BitArrayKmer<K, AlphabetType, BitArrayType>
impl<AlphabetType: Alphabet, BitStoreType: BitStore> OwnedSequence<<AlphabetType as Alphabet>::CharacterType, BitVectorSubGenome<AlphabetType, BitStoreType>> for BitVectorGenome<AlphabetType, BitStoreType>
impl<AlphabetType: Alphabet, BitStoreType> StructuralPartialEq for BitVectorSubGenome<AlphabetType, BitStoreType>where
BitStoreType: BitStore,
Auto Trait Implementations§
impl<AlphabetType, BitStoreType> Freeze for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType, BitStoreType> RefUnwindSafe for BitVectorSubGenome<AlphabetType, BitStoreType>where
AlphabetType: RefUnwindSafe,
BitStoreType: RefUnwindSafe,
impl<AlphabetType, BitStoreType> Send for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType, BitStoreType = usize> !Sized for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType, BitStoreType> Sync for BitVectorSubGenome<AlphabetType, BitStoreType>
impl<AlphabetType, BitStoreType> Unpin for BitVectorSubGenome<AlphabetType, BitStoreType>where
AlphabetType: Unpin,
impl<AlphabetType, BitStoreType> UnwindSafe for BitVectorSubGenome<AlphabetType, BitStoreType>where
AlphabetType: UnwindSafe,
BitStoreType: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.