[−][src]Struct restricted_tuple::Generator
Generator for yielding restricted tuple
Methods
impl<'a, T: 'a + Clone> Generator<'a, T>
[src]
pub fn new(
cache: &mut CountingFunctionCache,
sets: &'a [Vec<T>]
) -> Generator<'a, T>
[src]
cache: &mut CountingFunctionCache,
sets: &'a [Vec<T>]
) -> Generator<'a, T>
Creates a generator.
Example
let sets: Vec<Vec<u32>> = vec![vec![10, 20], vec![30, 40]]; let mut cache = CountingFunctionCache::default(); let generator = Generator::new(&mut cache, &sets);
pub fn generate(&self, length: usize, value: BigUint) -> Vec<T>
[src]
Generates a restricted tuple with given length and value.
Panics
Panics when no restricted tuple can be generated. This could happen if the length is smaller than the number of sets, or if there is any empty set in the provided sets, or the provided sets itself is empty.
Trait Implementations
Auto Trait Implementations
impl<'a, T> Sync for Generator<'a, T> where
T: Sync,
T: Sync,
impl<'a, T> Send for Generator<'a, T> where
T: Sync,
T: Sync,
impl<'a, T> Unpin for Generator<'a, T>
impl<'a, T> RefUnwindSafe for Generator<'a, T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<'a, T> UnwindSafe for Generator<'a, T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
Blanket Implementations
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> From<T> for 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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,