From b5aa889f7fced8ba2cc1698ae9696d7bd0ca8ab5 Mon Sep 17 00:00:00 2001 From: garhve Date: Tue, 20 Dec 2022 11:07:35 +0800 Subject: remove compiled binary --- .../guessing_game/target/doc/rand/seq/index.html | 18 --- .../target/doc/rand/seq/index/enum.IndexVec.html | 20 ---- .../doc/rand/seq/index/enum.IndexVecIntoIter.html | 42 ------- .../doc/rand/seq/index/enum.IndexVecIter.html | 42 ------- .../target/doc/rand/seq/index/fn.sample.html | 19 --- .../doc/rand/seq/index/fn.sample_weighted.html | 13 --- .../target/doc/rand/seq/index/index.html | 7 -- .../target/doc/rand/seq/index/sidebar-items.js | 1 - .../target/doc/rand/seq/sidebar-items.js | 1 - .../doc/rand/seq/struct.SliceChooseIter.html | 42 ------- .../target/doc/rand/seq/trait.IteratorRandom.html | 69 ----------- .../target/doc/rand/seq/trait.SliceRandom.html | 127 --------------------- 12 files changed, 401 deletions(-) delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVec.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIntoIter.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIter.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample_weighted.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/index.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/sidebar-items.js delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/sidebar-items.js delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/struct.SliceChooseIter.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.IteratorRandom.html delete mode 100644 rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.SliceRandom.html (limited to 'rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq') diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index.html deleted file mode 100644 index 7ae21e1..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index.html +++ /dev/null @@ -1,18 +0,0 @@ -rand::seq - Rust

Module rand::seq

source · []
Expand description

Sequence-related functionality

-

This module provides:

- -

Also see:

- -

In order to make results reproducible across 32-64 bit architectures, all -usize indices are sampled as a u32 where possible (also providing a -small performance boost in some cases).

-

Modules

Low-level API for sampling indices

Structs

An iterator over multiple slice elements.

Traits

Extension trait on iterators, providing random sampling methods.
Extension trait on slices, providing random mutation and sampling methods.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVec.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVec.html deleted file mode 100644 index 06d7c47..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVec.html +++ /dev/null @@ -1,20 +0,0 @@ -IndexVec in rand::seq::index - Rust
pub enum IndexVec {
-    // some variants omitted
-}
Expand description

A vector of indices.

-

Multiple internal representations are possible.

-

Implementations

Returns the number of indices

-

Returns true if the length is 0.

-

Return the value at the given index.

-

(Note: we cannot implement std::ops::Index because of lifetime -restrictions.)

-

Return result as a Vec<usize>. Conversion may or may not be trivial.

-

Iterate over the indices as a sequence of usize values

-

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
Converts to this type from the input type.

Convert into an iterator over the indices as a sequence of usize values

-
The type of the elements being iterated over.
Which kind of iterator are we turning this into?
This method tests for self and other values to be equal, and is used -by ==. Read more
This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

-

Calls U::from(self).

-

That is, this conversion is whatever the implementation of -From<T> for U chooses to do.

-
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIntoIter.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIntoIter.html deleted file mode 100644 index 19752f9..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIntoIter.html +++ /dev/null @@ -1,42 +0,0 @@ -IndexVecIntoIter in rand::seq::index - Rust
pub enum IndexVecIntoIter {
-    // some variants omitted
-}
Expand description

Return type of IndexVec::into_iter.

-

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the exact remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
The type of the elements being iterated over.
Advances the iterator and returns the next value. Read more
Returns the bounds on the remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
Consumes the iterator, counting the number of iterations and returning it. Read more
Consumes the iterator, returning the last element. Read more
🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator by n elements. Read more
Returns the nth element of the iterator. Read more
Creates an iterator starting at the same point, but stepping by -the given amount at each iteration. Read more
Takes two iterators and creates a new iterator over both in sequence. Read more
‘Zips up’ two iterators into a single iterator of pairs. Read more
🔬This is a nightly-only experimental API. (iter_intersperse)
Creates a new iterator which places an item generated by separator -between adjacent items of the original iterator. Read more
Takes a closure and creates an iterator which calls that closure on each -element. Read more
Calls a closure on each element of an iterator. Read more
Creates an iterator which uses a closure to determine if an element -should be yielded. Read more
Creates an iterator that both filters and maps. Read more
Creates an iterator which gives the current iteration count as well as -the next value. Read more
Creates an iterator which can use the peek and peek_mut methods -to look at the next element of the iterator without consuming it. See -their documentation for more information. Read more
Creates an iterator that skips elements based on a predicate. Read more
Creates an iterator that yields elements based on a predicate. Read more
Creates an iterator that both yields elements based on a predicate and maps. Read more
Creates an iterator that skips the first n elements. Read more
Creates an iterator that yields the first n elements, or fewer -if the underlying iterator ends sooner. Read more
An iterator adapter similar to fold that holds internal state and -produces a new iterator. Read more
Creates an iterator that works like map, but flattens nested structure. Read more
Creates an iterator which ends after the first None. Read more
Does something with each element of an iterator, passing the value on. Read more
Borrows an iterator, rather than consuming it. Read more
Transforms an iterator into a collection. Read more
🔬This is a nightly-only experimental API. (iter_collect_into)
Collects all the items from an iterator into a collection. Read more
Consumes an iterator, creating two collections from it. Read more
🔬This is a nightly-only experimental API. (iter_is_partitioned)
Checks if the elements of this iterator are partitioned according to the given predicate, -such that all those that return true precede all those that return false. Read more
An iterator method that applies a function as long as it returns -successfully, producing a single, final value. Read more
An iterator method that applies a fallible function to each item in the -iterator, stopping at the first error and returning that error. Read more
Folds every element into an accumulator by applying an operation, -returning the final result. Read more
Reduces the elements to a single one, by repeatedly applying a reducing -operation. Read more
🔬This is a nightly-only experimental API. (iterator_try_reduce)
Reduces the elements to a single one by repeatedly applying a reducing operation. If the -closure returns a failure, the failure is propagated back to the caller immediately. Read more
Tests if every element of the iterator matches a predicate. Read more
Tests if any element of the iterator matches a predicate. Read more
Searches for an element of an iterator that satisfies a predicate. Read more
Applies function to the elements of iterator and returns -the first non-none result. Read more
🔬This is a nightly-only experimental API. (try_find)
Applies function to the elements of iterator and returns -the first true result or the first error. Read more
Searches for an element in an iterator, returning its index. Read more
Returns the element that gives the maximum value from the -specified function. Read more
Returns the element that gives the maximum value with respect to the -specified comparison function. Read more
Returns the element that gives the minimum value from the -specified function. Read more
Returns the element that gives the minimum value with respect to the -specified comparison function. Read more
Converts an iterator of pairs into a pair of containers. Read more
Creates an iterator which copies all of its elements. Read more
Creates an iterator which clones all of its elements. Read more
Repeats an iterator endlessly. Read more
🔬This is a nightly-only experimental API. (iter_array_chunks)
Returns an iterator over N elements of the iterator at a time. Read more
Sums the elements of an iterator. Read more
Iterates over the entire iterator, multiplying all the elements Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Lexicographically compares the elements of this Iterator with those -of another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Determines if the elements of this Iterator are equal to those of -another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Determines if the elements of this Iterator are equal to those of -another with respect to the specified equality function. Read more
Determines if the elements of this Iterator are unequal to those of -another. Read more
Determines if the elements of this Iterator are lexicographically -less than those of another. Read more
Determines if the elements of this Iterator are lexicographically -less or equal to those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than or equal to those of another. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given comparator function. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given key extraction -function. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

-

Calls U::from(self).

-

That is, this conversion is whatever the implementation of -From<T> for U chooses to do.

-
The type of the elements being iterated over.
Which kind of iterator are we turning this into?
Creates an iterator from a value. Read more
Choose one element at random from the iterator. Read more
Choose one element at random from the iterator. Read more
Collects values at random from the iterator into a supplied buffer -until that buffer is filled. Read more
Collects amount values at random from the iterator into a vector. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIter.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIter.html deleted file mode 100644 index 9fbd29c..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/enum.IndexVecIter.html +++ /dev/null @@ -1,42 +0,0 @@ -IndexVecIter in rand::seq::index - Rust
pub enum IndexVecIter<'a> {
-    // some variants omitted
-}
Expand description

Return type of IndexVec::iter.

-

Trait Implementations

Formats the value using the given formatter. Read more
Returns the exact remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
The type of the elements being iterated over.
Advances the iterator and returns the next value. Read more
Returns the bounds on the remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
Consumes the iterator, counting the number of iterations and returning it. Read more
Consumes the iterator, returning the last element. Read more
🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator by n elements. Read more
Returns the nth element of the iterator. Read more
Creates an iterator starting at the same point, but stepping by -the given amount at each iteration. Read more
Takes two iterators and creates a new iterator over both in sequence. Read more
‘Zips up’ two iterators into a single iterator of pairs. Read more
🔬This is a nightly-only experimental API. (iter_intersperse)
Creates a new iterator which places an item generated by separator -between adjacent items of the original iterator. Read more
Takes a closure and creates an iterator which calls that closure on each -element. Read more
Calls a closure on each element of an iterator. Read more
Creates an iterator which uses a closure to determine if an element -should be yielded. Read more
Creates an iterator that both filters and maps. Read more
Creates an iterator which gives the current iteration count as well as -the next value. Read more
Creates an iterator which can use the peek and peek_mut methods -to look at the next element of the iterator without consuming it. See -their documentation for more information. Read more
Creates an iterator that skips elements based on a predicate. Read more
Creates an iterator that yields elements based on a predicate. Read more
Creates an iterator that both yields elements based on a predicate and maps. Read more
Creates an iterator that skips the first n elements. Read more
Creates an iterator that yields the first n elements, or fewer -if the underlying iterator ends sooner. Read more
An iterator adapter similar to fold that holds internal state and -produces a new iterator. Read more
Creates an iterator that works like map, but flattens nested structure. Read more
Creates an iterator which ends after the first None. Read more
Does something with each element of an iterator, passing the value on. Read more
Borrows an iterator, rather than consuming it. Read more
Transforms an iterator into a collection. Read more
🔬This is a nightly-only experimental API. (iter_collect_into)
Collects all the items from an iterator into a collection. Read more
Consumes an iterator, creating two collections from it. Read more
🔬This is a nightly-only experimental API. (iter_is_partitioned)
Checks if the elements of this iterator are partitioned according to the given predicate, -such that all those that return true precede all those that return false. Read more
An iterator method that applies a function as long as it returns -successfully, producing a single, final value. Read more
An iterator method that applies a fallible function to each item in the -iterator, stopping at the first error and returning that error. Read more
Folds every element into an accumulator by applying an operation, -returning the final result. Read more
Reduces the elements to a single one, by repeatedly applying a reducing -operation. Read more
🔬This is a nightly-only experimental API. (iterator_try_reduce)
Reduces the elements to a single one by repeatedly applying a reducing operation. If the -closure returns a failure, the failure is propagated back to the caller immediately. Read more
Tests if every element of the iterator matches a predicate. Read more
Tests if any element of the iterator matches a predicate. Read more
Searches for an element of an iterator that satisfies a predicate. Read more
Applies function to the elements of iterator and returns -the first non-none result. Read more
🔬This is a nightly-only experimental API. (try_find)
Applies function to the elements of iterator and returns -the first true result or the first error. Read more
Searches for an element in an iterator, returning its index. Read more
Returns the element that gives the maximum value from the -specified function. Read more
Returns the element that gives the maximum value with respect to the -specified comparison function. Read more
Returns the element that gives the minimum value from the -specified function. Read more
Returns the element that gives the minimum value with respect to the -specified comparison function. Read more
Converts an iterator of pairs into a pair of containers. Read more
Creates an iterator which copies all of its elements. Read more
Creates an iterator which clones all of its elements. Read more
🔬This is a nightly-only experimental API. (iter_array_chunks)
Returns an iterator over N elements of the iterator at a time. Read more
Sums the elements of an iterator. Read more
Iterates over the entire iterator, multiplying all the elements Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Lexicographically compares the elements of this Iterator with those -of another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Determines if the elements of this Iterator are equal to those of -another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Determines if the elements of this Iterator are equal to those of -another with respect to the specified equality function. Read more
Determines if the elements of this Iterator are unequal to those of -another. Read more
Determines if the elements of this Iterator are lexicographically -less than those of another. Read more
Determines if the elements of this Iterator are lexicographically -less or equal to those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than or equal to those of another. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given comparator function. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given key extraction -function. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

-

Calls U::from(self).

-

That is, this conversion is whatever the implementation of -From<T> for U chooses to do.

-
The type of the elements being iterated over.
Which kind of iterator are we turning this into?
Creates an iterator from a value. Read more
Choose one element at random from the iterator. Read more
Choose one element at random from the iterator. Read more
Collects values at random from the iterator into a supplied buffer -until that buffer is filled. Read more
Collects amount values at random from the iterator into a vector. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample.html deleted file mode 100644 index 54c0197..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample.html +++ /dev/null @@ -1,19 +0,0 @@ -sample in rand::seq::index - Rust
pub fn sample<R>(rng: &mut R, length: usize, amount: usize) -> IndexVecwhere
    R: Rng + ?Sized,
Expand description

Randomly sample exactly amount distinct indices from 0..length, and -return them in random order (fully shuffled).

-

This method is used internally by the slice sampling methods, but it can -sometimes be useful to have the indices themselves so this is provided as -an alternative.

-

The implementation used is not specified; we automatically select the -fastest available algorithm for the length and amount parameters -(based on detailed profiling on an Intel Haswell CPU). Roughly speaking, -complexity is O(amount), except that when amount is small, performance -is closer to O(amount^2), and when length is close to amount then -O(length).

-

Note that performance is significantly better over u32 indices than over -u64 indices. Because of this we hide the underlying type behind an -abstraction, IndexVec.

-

If an allocation-free no_std function is required, it is suggested -to adapt the internal sample_floyd implementation.

-

Panics if amount > length.

-
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample_weighted.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample_weighted.html deleted file mode 100644 index 2fc77d7..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/fn.sample_weighted.html +++ /dev/null @@ -1,13 +0,0 @@ -sample_weighted in rand::seq::index - Rust
pub fn sample_weighted<R, F, X>(
    rng: &mut R,
    length: usize,
    weight: F,
    amount: usize
) -> Result<IndexVec, WeightedError>where
    R: Rng + ?Sized,
    F: Fn(usize) -> X,
    X: Into<f64>,
Expand description

Randomly sample exactly amount distinct indices from 0..length, and -return them in an arbitrary order (there is no guarantee of shuffling or -ordering). The weights are to be provided by the input function weights, -which will be called once for each index.

-

This method is used internally by the slice sampling methods, but it can -sometimes be useful to have the indices themselves so this is provided as -an alternative.

-

This implementation uses O(length + amount) space and O(length) time -if the “nightly” feature is enabled, or O(length) space and -O(length + amount * log length) time otherwise.

-

Panics if amount > length.

-
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/index.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/index.html deleted file mode 100644 index d4ca1c7..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/index.html +++ /dev/null @@ -1,7 +0,0 @@ -rand::seq::index - Rust
Expand description

Low-level API for sampling indices

-

Enums

A vector of indices.
Return type of IndexVec::into_iter.
Return type of IndexVec::iter.

Functions

Randomly sample exactly amount distinct indices from 0..length, and -return them in random order (fully shuffled).
Randomly sample exactly amount distinct indices from 0..length, and -return them in an arbitrary order (there is no guarantee of shuffling or -ordering). The weights are to be provided by the input function weights, -which will be called once for each index.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/sidebar-items.js b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/sidebar-items.js deleted file mode 100644 index e458a98..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/index/sidebar-items.js +++ /dev/null @@ -1 +0,0 @@ -window.SIDEBAR_ITEMS = {"enum":[["IndexVec","A vector of indices."],["IndexVecIntoIter","Return type of `IndexVec::into_iter`."],["IndexVecIter","Return type of `IndexVec::iter`."]],"fn":[["sample","Randomly sample exactly `amount` distinct indices from `0..length`, and return them in random order (fully shuffled)."],["sample_weighted","Randomly sample exactly `amount` distinct indices from `0..length`, and return them in an arbitrary order (there is no guarantee of shuffling or ordering). The weights are to be provided by the input function `weights`, which will be called once for each index."]]}; \ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/sidebar-items.js b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/sidebar-items.js deleted file mode 100644 index 5a30717..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/sidebar-items.js +++ /dev/null @@ -1 +0,0 @@ -window.SIDEBAR_ITEMS = {"mod":[["index","Low-level API for sampling indices"]],"struct":[["SliceChooseIter","An iterator over multiple slice elements."]],"trait":[["IteratorRandom","Extension trait on iterators, providing random sampling methods."],["SliceRandom","Extension trait on slices, providing random mutation and sampling methods."]]}; \ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/struct.SliceChooseIter.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/struct.SliceChooseIter.html deleted file mode 100644 index a0f84e7..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/struct.SliceChooseIter.html +++ /dev/null @@ -1,42 +0,0 @@ -SliceChooseIter in rand::seq - Rust
pub struct SliceChooseIter<'a, S: ?Sized + 'a, T: 'a> { /* private fields */ }
Expand description

An iterator over multiple slice elements.

-

This struct is created by -SliceRandom::choose_multiple.

-

Trait Implementations

Formats the value using the given formatter. Read more
Returns the exact remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
The type of the elements being iterated over.
Advances the iterator and returns the next value. Read more
Returns the bounds on the remaining length of the iterator. Read more
🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
Consumes the iterator, counting the number of iterations and returning it. Read more
Consumes the iterator, returning the last element. Read more
🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator by n elements. Read more
Returns the nth element of the iterator. Read more
Creates an iterator starting at the same point, but stepping by -the given amount at each iteration. Read more
Takes two iterators and creates a new iterator over both in sequence. Read more
‘Zips up’ two iterators into a single iterator of pairs. Read more
🔬This is a nightly-only experimental API. (iter_intersperse)
Creates a new iterator which places an item generated by separator -between adjacent items of the original iterator. Read more
Takes a closure and creates an iterator which calls that closure on each -element. Read more
Calls a closure on each element of an iterator. Read more
Creates an iterator which uses a closure to determine if an element -should be yielded. Read more
Creates an iterator that both filters and maps. Read more
Creates an iterator which gives the current iteration count as well as -the next value. Read more
Creates an iterator which can use the peek and peek_mut methods -to look at the next element of the iterator without consuming it. See -their documentation for more information. Read more
Creates an iterator that skips elements based on a predicate. Read more
Creates an iterator that yields elements based on a predicate. Read more
Creates an iterator that both yields elements based on a predicate and maps. Read more
Creates an iterator that skips the first n elements. Read more
Creates an iterator that yields the first n elements, or fewer -if the underlying iterator ends sooner. Read more
An iterator adapter similar to fold that holds internal state and -produces a new iterator. Read more
Creates an iterator that works like map, but flattens nested structure. Read more
Creates an iterator which ends after the first None. Read more
Does something with each element of an iterator, passing the value on. Read more
Borrows an iterator, rather than consuming it. Read more
Transforms an iterator into a collection. Read more
🔬This is a nightly-only experimental API. (iter_collect_into)
Collects all the items from an iterator into a collection. Read more
Consumes an iterator, creating two collections from it. Read more
🔬This is a nightly-only experimental API. (iter_is_partitioned)
Checks if the elements of this iterator are partitioned according to the given predicate, -such that all those that return true precede all those that return false. Read more
An iterator method that applies a function as long as it returns -successfully, producing a single, final value. Read more
An iterator method that applies a fallible function to each item in the -iterator, stopping at the first error and returning that error. Read more
Folds every element into an accumulator by applying an operation, -returning the final result. Read more
Reduces the elements to a single one, by repeatedly applying a reducing -operation. Read more
🔬This is a nightly-only experimental API. (iterator_try_reduce)
Reduces the elements to a single one by repeatedly applying a reducing operation. If the -closure returns a failure, the failure is propagated back to the caller immediately. Read more
Tests if every element of the iterator matches a predicate. Read more
Tests if any element of the iterator matches a predicate. Read more
Searches for an element of an iterator that satisfies a predicate. Read more
Applies function to the elements of iterator and returns -the first non-none result. Read more
🔬This is a nightly-only experimental API. (try_find)
Applies function to the elements of iterator and returns -the first true result or the first error. Read more
Searches for an element in an iterator, returning its index. Read more
Returns the element that gives the maximum value from the -specified function. Read more
Returns the element that gives the maximum value with respect to the -specified comparison function. Read more
Returns the element that gives the minimum value from the -specified function. Read more
Returns the element that gives the minimum value with respect to the -specified comparison function. Read more
Converts an iterator of pairs into a pair of containers. Read more
Creates an iterator which copies all of its elements. Read more
Creates an iterator which clones all of its elements. Read more
🔬This is a nightly-only experimental API. (iter_array_chunks)
Returns an iterator over N elements of the iterator at a time. Read more
Sums the elements of an iterator. Read more
Iterates over the entire iterator, multiplying all the elements Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Lexicographically compares the elements of this Iterator with those -of another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Lexicographically compares the elements of this Iterator with those -of another with respect to the specified comparison function. Read more
Determines if the elements of this Iterator are equal to those of -another. Read more
🔬This is a nightly-only experimental API. (iter_order_by)
Determines if the elements of this Iterator are equal to those of -another with respect to the specified equality function. Read more
Determines if the elements of this Iterator are unequal to those of -another. Read more
Determines if the elements of this Iterator are lexicographically -less than those of another. Read more
Determines if the elements of this Iterator are lexicographically -less or equal to those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than those of another. Read more
Determines if the elements of this Iterator are lexicographically -greater than or equal to those of another. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given comparator function. Read more
🔬This is a nightly-only experimental API. (is_sorted)
Checks if the elements of this iterator are sorted using the given key extraction -function. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

-

Calls U::from(self).

-

That is, this conversion is whatever the implementation of -From<T> for U chooses to do.

-
The type of the elements being iterated over.
Which kind of iterator are we turning this into?
Creates an iterator from a value. Read more
Choose one element at random from the iterator. Read more
Choose one element at random from the iterator. Read more
Collects values at random from the iterator into a supplied buffer -until that buffer is filled. Read more
Collects amount values at random from the iterator into a vector. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.IteratorRandom.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.IteratorRandom.html deleted file mode 100644 index bc64a98..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.IteratorRandom.html +++ /dev/null @@ -1,69 +0,0 @@ -IteratorRandom in rand::seq - Rust
pub trait IteratorRandom: Iterator + Sized {
-    fn choose<R>(self, rng: &mut R) -> Option<Self::Item>
    where
        R: Rng + ?Sized
, - { ... } - fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>
    where
        R: Rng + ?Sized
, - { ... } - fn choose_multiple_fill<R>(self, rng: &mut R, buf: &mut [Self::Item]) -> usize
    where
        R: Rng + ?Sized
, - { ... } - fn choose_multiple<R>(self, rng: &mut R, amount: usize) -> Vec<Self::Item>
    where
        R: Rng + ?Sized
, - { ... } -}
Expand description

Extension trait on iterators, providing random sampling methods.

-

This trait is implemented on all iterators I where I: Iterator + Sized -and provides methods for -choosing one or more elements. You must use this trait:

- -
use rand::seq::IteratorRandom;
-
-let mut rng = rand::thread_rng();
-
-let faces = "😀😎😐😕😠😢";
-println!("I am {}!", faces.chars().choose(&mut rng).unwrap());
-

Example output (non-deterministic):

-
I am 😀!
-

Provided Methods

Choose one element at random from the iterator.

-

Returns None if and only if the iterator is empty.

-

This method uses Iterator::size_hint for optimisation. With an -accurate hint and where Iterator::nth is a constant-time operation -this method can offer O(1) performance. Where no size hint is -available, complexity is O(n) where n is the iterator length. -Partial hints (where lower > 0) also improve performance.

-

Note that the output values and the number of RNG samples used -depends on size hints. In particular, Iterator combinators that don’t -change the values yielded but change the size hints may result in -choose returning different elements. If you want consistent results -and RNG usage consider using IteratorRandom::choose_stable.

-

Choose one element at random from the iterator.

-

Returns None if and only if the iterator is empty.

-

This method is very similar to choose except that the result -only depends on the length of the iterator and the values produced by -rng. Notably for any iterator of a given length this will make the -same requests to rng and if the same sequence of values are produced -the same index will be selected from self. This may be useful if you -need consistent results no matter what type of iterator you are working -with. If you do not need this stability prefer choose.

-

Note that this method still uses Iterator::size_hint to skip -constructing elements where possible, however the selection and rng -calls are the same in the face of this optimization. If you want to -force every element to be created regardless call .inspect(|e| ()).

-

Collects values at random from the iterator into a supplied buffer -until that buffer is filled.

-

Although the elements are selected randomly, the order of elements in -the buffer is neither stable nor fully random. If random ordering is -desired, shuffle the result.

-

Returns the number of elements added to the buffer. This equals the length -of the buffer unless the iterator contains insufficient elements, in which -case this equals the number of elements available.

-

Complexity is O(n) where n is the length of the iterator. -For slices, prefer SliceRandom::choose_multiple.

-

Collects amount values at random from the iterator into a vector.

-

This is equivalent to choose_multiple_fill except for the result type.

-

Although the elements are selected randomly, the order of elements in -the buffer is neither stable nor fully random. If random ordering is -desired, shuffle the result.

-

The length of the returned vector equals amount unless the iterator -contains insufficient elements, in which case it equals the number of -elements available.

-

Complexity is O(n) where n is the length of the iterator. -For slices, prefer SliceRandom::choose_multiple.

-

Implementors

\ No newline at end of file diff --git a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.SliceRandom.html b/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.SliceRandom.html deleted file mode 100644 index aeed0b0..0000000 --- a/rust/theBook/chapter-2-guessing-game/guessing_game/target/doc/rand/seq/trait.SliceRandom.html +++ /dev/null @@ -1,127 +0,0 @@ -SliceRandom in rand::seq - Rust
pub trait SliceRandom {
-    type Item;
-
-    fn choose<R>(&self, rng: &mut R) -> Option<&Self::Item>
    where
        R: Rng + ?Sized
; - fn choose_mut<R>(&mut self, rng: &mut R) -> Option<&mut Self::Item>
    where
        R: Rng + ?Sized
; - fn choose_multiple<R>(
        &self,
        rng: &mut R,
        amount: usize
    ) -> SliceChooseIter<'_, Self, Self::Item>Notable traits for SliceChooseIter<'a, S, T>impl<'a, S: Index<usize, Output = T> + ?Sized + 'a, T: 'a> Iterator for SliceChooseIter<'a, S, T> type Item = &'a T;
    where
        R: Rng + ?Sized
; - fn choose_weighted<R, F, B, X>(
        &self,
        rng: &mut R,
        weight: F
    ) -> Result<&Self::Item, WeightedError>
    where
        R: Rng + ?Sized,
        F: Fn(&Self::Item) -> B,
        B: SampleBorrow<X>,
        X: SampleUniform + for<'a> AddAssign<&'a X> + PartialOrd<X> + Clone + Default
; - fn choose_weighted_mut<R, F, B, X>(
        &mut self,
        rng: &mut R,
        weight: F
    ) -> Result<&mut Self::Item, WeightedError>
    where
        R: Rng + ?Sized,
        F: Fn(&Self::Item) -> B,
        B: SampleBorrow<X>,
        X: SampleUniform + for<'a> AddAssign<&'a X> + PartialOrd<X> + Clone + Default
; - fn choose_multiple_weighted<R, F, X>(
        &self,
        rng: &mut R,
        amount: usize,
        weight: F
    ) -> Result<SliceChooseIter<'_, Self, Self::Item>, WeightedError>
    where
        R: Rng + ?Sized,
        F: Fn(&Self::Item) -> X,
        X: Into<f64>
; - fn shuffle<R>(&mut self, rng: &mut R)
    where
        R: Rng + ?Sized
; - fn partial_shuffle<R>(
        &mut self,
        rng: &mut R,
        amount: usize
    ) -> (&mut [Self::Item], &mut [Self::Item])
    where
        R: Rng + ?Sized
; -}
Expand description

Extension trait on slices, providing random mutation and sampling methods.

-

This trait is implemented on all [T] slice types, providing several -methods for choosing and shuffling elements. You must use this trait:

- -
use rand::seq::SliceRandom;
-
-let mut rng = rand::thread_rng();
-let mut bytes = "Hello, random!".to_string().into_bytes();
-bytes.shuffle(&mut rng);
-let str = String::from_utf8(bytes).unwrap();
-println!("{}", str);
-

Example output (non-deterministic):

-
l,nmroHado !le
-

Required Associated Types

The element type.

-

Required Methods

Returns a reference to one random element of the slice, or None if the -slice is empty.

-

For slices, complexity is O(1).

-
Example
-
use rand::thread_rng;
-use rand::seq::SliceRandom;
-
-let choices = [1, 2, 4, 8, 16, 32];
-let mut rng = thread_rng();
-println!("{:?}", choices.choose(&mut rng));
-assert_eq!(choices[..0].choose(&mut rng), None);
-

Returns a mutable reference to one random element of the slice, or -None if the slice is empty.

-

For slices, complexity is O(1).

-

Chooses amount elements from the slice at random, without repetition, -and in random order. The returned iterator is appropriate both for -collection into a Vec and filling an existing buffer (see example).

-

In case this API is not sufficiently flexible, use index::sample.

-

For slices, complexity is the same as index::sample.

-
Example
-
use rand::seq::SliceRandom;
-
-let mut rng = &mut rand::thread_rng();
-let sample = "Hello, audience!".as_bytes();
-
-// collect the results into a vector:
-let v: Vec<u8> = sample.choose_multiple(&mut rng, 3).cloned().collect();
-
-// store in a buffer:
-let mut buf = [0u8; 5];
-for (b, slot) in sample.choose_multiple(&mut rng, buf.len()).zip(buf.iter_mut()) {
-    *slot = *b;
-}
-

Similar to choose, but where the likelihood of each outcome may be -specified.

-

The specified function weight maps each item x to a relative -likelihood weight(x). The probability of each item being selected is -therefore weight(x) / s, where s is the sum of all weight(x).

-

For slices of length n, complexity is O(n). -See also choose_weighted_mut, distributions::weighted.

-
Example
-
use rand::prelude::*;
-
-let choices = [('a', 2), ('b', 1), ('c', 1)];
-let mut rng = thread_rng();
-// 50% chance to print 'a', 25% chance to print 'b', 25% chance to print 'c'
-println!("{:?}", choices.choose_weighted(&mut rng, |item| item.1).unwrap().0);
-

Similar to choose_mut, but where the likelihood of each outcome may -be specified.

-

The specified function weight maps each item x to a relative -likelihood weight(x). The probability of each item being selected is -therefore weight(x) / s, where s is the sum of all weight(x).

-

For slices of length n, complexity is O(n). -See also choose_weighted, distributions::weighted.

-

Similar to choose_multiple, but where the likelihood of each element’s -inclusion in the output may be specified. The elements are returned in an -arbitrary, unspecified order.

-

The specified function weight maps each item x to a relative -likelihood weight(x). The probability of each item being selected is -therefore weight(x) / s, where s is the sum of all weight(x).

-

If all of the weights are equal, even if they are all zero, each element has -an equal likelihood of being selected.

-

The complexity of this method depends on the feature partition_at_index. -If the feature is enabled, then for slices of length n, the complexity -is O(n) space and O(n) time. Otherwise, the complexity is O(n) space and -O(n * log amount) time.

-
Example
-
use rand::prelude::*;
-
-let choices = [('a', 2), ('b', 1), ('c', 1)];
-let mut rng = thread_rng();
-// First Draw * Second Draw = total odds
-// -----------------------
-// (50% * 50%) + (25% * 67%) = 41.7% chance that the output is `['a', 'b']` in some order.
-// (50% * 50%) + (25% * 67%) = 41.7% chance that the output is `['a', 'c']` in some order.
-// (25% * 33%) + (25% * 33%) = 16.6% chance that the output is `['b', 'c']` in some order.
-println!("{:?}", choices.choose_multiple_weighted(&mut rng, 2, |item| item.1).unwrap().collect::<Vec<_>>());
-

Shuffle a mutable slice in place.

-

For slices of length n, complexity is O(n).

-
Example
-
use rand::seq::SliceRandom;
-use rand::thread_rng;
-
-let mut rng = thread_rng();
-let mut y = [1, 2, 3, 4, 5];
-println!("Unshuffled: {:?}", y);
-y.shuffle(&mut rng);
-println!("Shuffled:   {:?}", y);
-

Shuffle a slice in place, but exit early.

-

Returns two mutable slices from the source slice. The first contains -amount elements randomly permuted. The second has the remaining -elements that are not fully shuffled.

-

This is an efficient method to select amount elements at random from -the slice, provided the slice may be mutated.

-

If you only need to choose elements randomly and amount > self.len()/2 -then you may improve performance by taking -amount = values.len() - amount and using only the second slice.

-

If amount is greater than the number of elements in the slice, this -will perform a full shuffle.

-

For slices, complexity is O(m) where m = amount.

-

Implementations on Foreign Types

Implementors

\ No newline at end of file -- cgit v1.2.3-70-g09d2