Enum miden_processor::AdviceSource
source · pub enum AdviceSource {
Value(Felt),
Map {
key: Word,
include_len: bool,
},
}Expand description
Specifies the source of the value(s) to be pushed onto the advice stack.
Variants§
Value(Felt)
Puts a single value onto the advice stack.
Map
Fetches a list of elements under the specified key from the advice map and pushes them onto the advice stack.
If include_len is set to true, this also pushes the number of elements ont the advice
stack.
Note: this operation doesn’t consume the map element so it can be called multiple times for the same key.
Example
Given an advice stack [a, b, c, ...], and a map x |-> [d, e, f]:
A call push_stack(AdviceSource::Map { key: x, include_len: false }) will result in
advice stack: [d, e, f, a, b, c, ...].
A call push_stack(AdviceSource::Map { key: x, include_len: true }) will result in
advice stack: [3, d, e, f, a, b, c, ...].
Errors
Returns an error if the key was not found in the key-value map.
Trait Implementations§
source§impl Clone for AdviceSource
impl Clone for AdviceSource
source§fn clone(&self) -> AdviceSource
fn clone(&self) -> AdviceSource
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for AdviceSource
impl Debug for AdviceSource
source§impl PartialEq<AdviceSource> for AdviceSource
impl PartialEq<AdviceSource> for AdviceSource
source§fn eq(&self, other: &AdviceSource) -> bool
fn eq(&self, other: &AdviceSource) -> bool
self and other values to be equal, and is used
by ==.