[][src]Struct bio::data_structures::fmindex::FMIndex

pub struct FMIndex<DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> { /* fields omitted */ }

The Fast Index in Minute space (FM-Index, Ferragina and Manzini, 2000) for finding suffix array intervals matching a given pattern.

Methods

impl<DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> FMIndex<DBWT, DLess, DOcc>[src]

pub fn new(bwt: DBWT, less: DLess, occ: DOcc) -> Self[src]

Construct a new instance of the FM index.

Arguments

  • bwt - the BWT
  • less - the less array of the BWT
  • occ - the occurence array of the BWT

Trait Implementations

impl<DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> FMIndexable for FMIndex<DBWT, DLess, DOcc>[src]

fn bwt(&self) -> &BWT[src]

Provide a reference to the underlying BWT.

Perform backward search, yielding suffix array interval denoting exact occurrences of the given pattern of length m in the text. Complexity: O(m). Read more

impl<DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> From<FMIndex<DBWT, DLess, DOcc>> for FMDIndex<DBWT, DLess, DOcc>[src]

fn from(fmindex: FMIndex<DBWT, DLess, DOcc>) -> FMDIndex<DBWT, DLess, DOcc>[src]

Construct a new instance of the FMD index (see Heng Li (2012) Bioinformatics). This expects a BWT that was created from a text over the DNA alphabet with N (alphabets::dna::n_alphabet()) consisting of the concatenation with its reverse complement, separated by the sentinel symbol $. I.e., let T be the original text and R be its reverse complement. Then, the expected text is T$R$. Further, multiple concatenated texts are allowed, e.g. T1$R1$T2$R2$T3$R3$.

impl<DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> Serialize for FMIndex<DBWT, DLess, DOcc> where
    DBWT: Serialize,
    DLess: Serialize,
    DOcc: Serialize
[src]

impl<'de, DBWT: Borrow<BWT>, DLess: Borrow<Less>, DOcc: Borrow<Occ>> Deserialize<'de> for FMIndex<DBWT, DLess, DOcc> where
    DBWT: Deserialize<'de>,
    DLess: Deserialize<'de>,
    DOcc: Deserialize<'de>, 
[src]

Auto Trait Implementations

impl<DBWT, DLess, DOcc> Send for FMIndex<DBWT, DLess, DOcc> where
    DBWT: Send,
    DLess: Send,
    DOcc: Send

impl<DBWT, DLess, DOcc> Unpin for FMIndex<DBWT, DLess, DOcc> where
    DBWT: Unpin,
    DLess: Unpin,
    DOcc: Unpin

impl<DBWT, DLess, DOcc> Sync for FMIndex<DBWT, DLess, DOcc> where
    DBWT: Sync,
    DLess: Sync,
    DOcc: Sync

impl<DBWT, DLess, DOcc> UnwindSafe for FMIndex<DBWT, DLess, DOcc> where
    DBWT: UnwindSafe,
    DLess: UnwindSafe,
    DOcc: UnwindSafe

impl<DBWT, DLess, DOcc> RefUnwindSafe for FMIndex<DBWT, DLess, DOcc> where
    DBWT: RefUnwindSafe,
    DLess: RefUnwindSafe,
    DOcc: RefUnwindSafe

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]