[−][src]Struct consistent_hash_ring::RingBuilder
A builder for Ring
.
Implementations
impl<T: Hash + Eq + Clone, S: BuildHasher> RingBuilder<T, S>
[src]
pub fn new(hasher: S) -> Self
[src]
Returns a new RingBuilder
with the specified BuildHasher
.
pub fn vnodes(self, vnodes: usize) -> Self
[src]
Specifies the number of vnodes for each node.
The default is 10.
pub fn weighted_node(self, node: T, vnodes: usize) -> Self
[src]
Ensure that the built Ring
contains node with the specified number of
vnodes (regardless of the default vnode count).
pub fn weighted_nodes(self, weighted_nodes: &[(T, usize)]) -> Self
[src]
Ensure that the built Ring
contains all nodes in the provided slice with
the associated number of vnodes (regardless of the default vnode count).
pub fn weighted_nodes_iter<I>(self, weighted_nodes: I) -> Self where
I: Iterator<Item = (T, usize)>,
[src]
I: Iterator<Item = (T, usize)>,
Ensure that the built Ring
contains all nodes in the provided iterator with
the associated number of vnodes (regardless of the default vnode count).
pub fn node(self, node: T) -> Self
[src]
Ensure that the built Ring
contains the provided node.
pub fn nodes(self, nodes: &[T]) -> Self
[src]
Ensure that the built Ring
contains all nodes in the provided slice.
pub fn nodes_iter<I>(self, nodes: I) -> Self where
I: Iterator<Item = T>,
[src]
I: Iterator<Item = T>,
Ensure that the built Ring
contains all nodes in the provided iterator.
pub fn build(self) -> Ring<T, S>
[src]
Build the Ring
.
Trait Implementations
impl<T: Clone, S: Clone> Clone for RingBuilder<T, S> where
T: Hash + Eq + Clone,
S: BuildHasher,
[src]
T: Hash + Eq + Clone,
S: BuildHasher,
fn clone(&self) -> RingBuilder<T, S>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T: Hash + Eq + Clone> Default for RingBuilder<T>
[src]
Auto Trait Implementations
impl<T, S> RefUnwindSafe for RingBuilder<T, S> where
S: RefUnwindSafe,
T: RefUnwindSafe,
S: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, S> Send for RingBuilder<T, S> where
S: Send,
T: Send,
S: Send,
T: Send,
impl<T, S> Sync for RingBuilder<T, S> where
S: Sync,
T: Sync,
S: Sync,
T: Sync,
impl<T, S> Unpin for RingBuilder<T, S> where
S: Unpin,
T: Unpin,
S: Unpin,
T: Unpin,
impl<T, S> UnwindSafe for RingBuilder<T, S> where
S: UnwindSafe,
T: UnwindSafe,
S: UnwindSafe,
T: UnwindSafe,
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>,