Crate winter_utils

Source
Expand description

This crate contains utility traits, functions, and macros used by other crates of Winterfell STARK prover and verifier.

Modules§

iterators
Components needed for parallel iterators.

Macros§

batch_iter_mut
Applies a procedure to the provided slice either in a single thread or multiple threads based on whether concurrent feature is enabled.
iter
Returns either a regular or a parallel iterator depending on whether concurrent feature is enabled.
iter_mut
Returns either a regular or a parallel mutable iterator depending on whether concurrent feature is enabled.

Structs§

ReadAdapter
An adapter of ByteReader to any type that implements std::io::Read
SliceReader
Implements ByteReader trait for a slice of bytes.

Enums§

DeserializationError
Defines errors which can occur during deserialization.

Traits§

AsBytes
Defines a zero-copy representation of Self as a sequence of bytes.
ByteReader
Defines how primitive values are to be read from Self.
ByteWriter
Defines how primitive values are to be written into Self.
Deserializable
Defines how to deserialize Self from bytes.
Randomizable
Defines how Self can be read from a sequence of random bytes.
Serializable
Defines how to serialize Self into bytes.

Functions§

flatten_slice_elements
Transmutes a slice of n arrays each of length N, into a slice of N * n elements.
flatten_vector_elements
Transmutes a vector of n arrays each of length N, into a vector of N * n elements.
group_slice_elements
Transmutes a slice of n elements into a slice of n / N elements, each of which is an array of N elements.
transpose_slice
Transposes a slice of n elements into a matrix with N columns and n/N rows.
uninit_vector
Returns a vector of the specified length with un-initialized memory.