pub trait TableGenerator<T: Table>:
Debug
+ Default
+ Clone
+ Send
+ Sync
+ Sized
+ 'static {
// Required method
fn generate(&self, seed: &PosSeed) -> T;
// Provided method
fn generate_parallel(&self, seed: &PosSeed) -> T { ... }
}Expand description
Stateful table generator with better performance.
Prefer cloning it over creating multiple separate generators.
Required Methods§
Sourcefn generate(&self, seed: &PosSeed) -> T
fn generate(&self, seed: &PosSeed) -> T
Generate a new table with 32 bytes seed.
There is also Self::generate_parallel() that can achieve lower latency.
Provided Methods§
Sourcefn generate_parallel(&self, seed: &PosSeed) -> T
fn generate_parallel(&self, seed: &PosSeed) -> T
Generate a new table with 32 bytes seed using parallelism.
This implementation will trade efficiency of CPU and memory usage for lower latency, prefer
Self::generate() unless lower latency is critical.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementors§
impl TableGenerator<ChiaTable> for ChiaTableGenerator
Available on crate feature
alloc only.impl TableGenerator<ShimTable> for ShimTableGenerator
Available on crate feature
alloc only.