[−][src]Enum adapton::catalog::collections::trie::Trie
Probablistically Balanced Trie Rough implementation of probabilistic tries from OOPSLA 2015 paper.
See also: Tries in OCaml
Variants
Nil(BS)
Leaf(BS, X)
Trait Implementations
impl<X: Clone> Clone for Trie<X>
[src]
impl<X: Debug> Debug for Trie<X>
[src]
impl<X: Eq> Eq for Trie<X>
[src]
impl<X: Debug + Hash + PartialEq + Eq + Clone + 'static> Hash for Trie<X>
[src]
fn hash<H: Hasher>(&self, state: &mut H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<X: PartialEq> PartialEq<Trie<X>> for Trie<X>
[src]
impl<X> StructuralEq for Trie<X>
[src]
impl<X> StructuralPartialEq for Trie<X>
[src]
impl<X: Debug + Hash + PartialEq + Eq + Clone + 'static> TrieElim<X> for Trie<X>
[src]
fn find(trie: &Self, elt: &X, i: i64) -> Option<X>
[src]
fn is_empty(trie: &Self) -> bool
[src]
fn split_atomic(trie: Self) -> Self
[src]
fn elim<Res, NilC, LeafC, BinC, RootC, NameC>(
trie: Self,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(BS) -> Res,
LeafC: FnOnce(BS, X) -> Res,
BinC: FnOnce(BS, Self, Self) -> Res,
RootC: FnOnce(Meta, Self) -> Res,
NameC: FnOnce(Name, Self) -> Res,
[src]
trie: Self,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(BS) -> Res,
LeafC: FnOnce(BS, X) -> Res,
BinC: FnOnce(BS, Self, Self) -> Res,
RootC: FnOnce(Meta, Self) -> Res,
NameC: FnOnce(Name, Self) -> Res,
fn elim_arg<Arg, Res, NilC, LeafC, BinC, RootC, NameC>(
trie: Self,
arg: Arg,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(BS, Arg) -> Res,
LeafC: FnOnce(BS, X, Arg) -> Res,
BinC: FnOnce(BS, Self, Self, Arg) -> Res,
RootC: FnOnce(Meta, Self, Arg) -> Res,
NameC: FnOnce(Name, Self, Arg) -> Res,
[src]
trie: Self,
arg: Arg,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(BS, Arg) -> Res,
LeafC: FnOnce(BS, X, Arg) -> Res,
BinC: FnOnce(BS, Self, Self, Arg) -> Res,
RootC: FnOnce(Meta, Self, Arg) -> Res,
NameC: FnOnce(Name, Self, Arg) -> Res,
fn elim_ref<Res, NilC, LeafC, BinC, RootC, NameC>(
trie: &Self,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(&BS) -> Res,
LeafC: FnOnce(&BS, &X) -> Res,
BinC: FnOnce(&BS, &Self, &Self) -> Res,
RootC: FnOnce(&Meta, &Self) -> Res,
NameC: FnOnce(&Name, &Self) -> Res,
[src]
trie: &Self,
nil: NilC,
leaf: LeafC,
bin: BinC,
root: RootC,
name: NameC
) -> Res where
NilC: FnOnce(&BS) -> Res,
LeafC: FnOnce(&BS, &X) -> Res,
BinC: FnOnce(&BS, &Self, &Self) -> Res,
RootC: FnOnce(&Meta, &Self) -> Res,
NameC: FnOnce(&Name, &Self) -> Res,
impl<X: Debug + Hash + PartialEq + Eq + Clone + 'static> TrieIntro<X> for Trie<X>
[src]
fn nil(bs: BS) -> Self
[src]
fn leaf(bs: BS, x: X) -> Self
[src]
fn bin(bs: BS, l: Self, r: Self) -> Self
[src]
fn root(meta: Meta, trie: Self) -> Self
[src]
fn name(nm: Name, trie: Self) -> Self
[src]
fn art(art: Art<Self>) -> Self
[src]
fn empty(meta: Meta) -> Self
[src]
fn singleton(meta: Meta, nm: Name, elt: X) -> Self
[src]
fn extend(nm: Name, trie: Self, elt: X) -> Self
[src]
Auto Trait Implementations
impl<X> !RefUnwindSafe for Trie<X>
impl<X> !Send for Trie<X>
impl<X> !Sync for Trie<X>
impl<X> Unpin for Trie<X> where
X: Unpin,
X: Unpin,
impl<X> !UnwindSafe for Trie<X>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,