struct HintLabels {
    alphabet: Vec<char>,
    indices: Vec<usize>,
    split_point: usize,
}
Expand description

Generator for creating new hint labels.

Fields§

§alphabet: Vec<char>

Full character set available.

§indices: Vec<usize>

Alphabet indices for the next label.

§split_point: usize

Point separating the alphabet’s head and tail characters.

To make identification of the tail character easy, part of the alphabet cannot be used for any other position.

All characters in the alphabet before this index will be used for the last character, while the rest will be used for everything else.

Implementations§

source§

impl HintLabels

source

fn new(alphabet: impl Into<String>, split_ratio: f32) -> Self

Create a new label generator.

The split_ratio should be a number between 0.0 and 1.0 representing the percentage of elements in the alphabet which are reserved for the tail of the hint label.

source

fn next(&mut self) -> Vec<char>

Get the characters for the next label.

source

fn increment(&mut self)

Increment the character sequence.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · 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 Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.