Node

Struct Node 

Source
pub struct Node {
    pub start: usize,
    pub end: usize,
    pub edges: [Option<usize>; 257],
    pub suffix_link: Option<usize>,
}
Expand description

A node in the SuffixTree

Fields§

§start: usize

The index in the data where the edge leading to this node starts.

§end: usize

The index in the data where the edge leading to this node ends.

§edges: [Option<usize>; 257]

The potential sub nodes under this one. Each index in the array represent on of the possible byte value. The index 256 is reserved for the end of data. Each element value is an index in the SuffixTree::nodes(struct.SuffixTree.html#nodes.v) vector.

§suffix_link: Option<usize>

Suffix link (see Ukkonen’s algorithm).

Implementations§

Source§

impl Node

Source

pub fn new(start: usize, end: usize) -> Node

Allocate a new node with a leading edge [start..end].

Source

pub fn edge_length(&self) -> usize

Returns this node leading edge length.

Auto Trait Implementations§

§

impl Freeze for Node

§

impl RefUnwindSafe for Node

§

impl Send for Node

§

impl Sync for Node

§

impl Unpin for Node

§

impl UnwindSafe for Node

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> 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, 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.