[][src]Struct grin_core::pow::lean::Lean

pub struct Lean { /* fields omitted */ }

Lean miner implementation aiming to be as short and simple as possible. As a consequence, it's a little less than 10 times slower than John Tromp's implementation, as it's not optimized for performance and reuses croaring which is likely sub-optimal for this task.

Methods

impl Lean[src]

pub fn new(edge_bits: u8) -> Lean[src]

Instantiates a new lean miner based on some Cuckatoo parameters

pub fn set_header_nonce(&mut self, header: Vec<u8>, nonce: u32)[src]

Sets the header and nonce to seed the graph

pub fn trim(&mut self)[src]

Trim edges in the Cuckatoo graph. This applies multiple trimming rounds and works well for Cuckatoo size above 18.

pub fn find_cycles(
    &self,
    ctx: CuckatooContext<u32>
) -> Result<Vec<Proof>, Error>
[src]

Finds the Cuckatoo Cycles on the remaining edges. Delegates the finding to a context, passing the trimmed edges iterator.

Auto Trait Implementations

impl Send for Lean

impl Unpin for Lean

impl Sync for Lean

impl UnwindSafe for Lean

impl RefUnwindSafe for Lean

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> UnsafeAny for T where
    T: Any

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Erased for T