pub struct ReadInput {
pub data_type: DataType,
pub input_source: InputSource,
}
Expand description
Move an element of type DataType
from standard-in or secret-in’s token stream to the stack
Fields§
§data_type: DataType
§input_source: InputSource
Trait Implementations§
Source§impl BasicSnippet for ReadInput
impl BasicSnippet for ReadInput
fn inputs(&self) -> Vec<(DataType, String)>
fn outputs(&self) -> Vec<(DataType, String)>
fn entrypoint(&self) -> String
fn code(&self, _library: &mut Library) -> Vec<LabelledInstruction>
fn annotated_code(&self, library: &mut Library) -> Vec<LabelledInstruction>
fn link_for_isolated_run(&self) -> Vec<LabelledInstruction>
Source§fn init_stack_for_isolated_run(&self) -> Vec<BFieldElement>
fn init_stack_for_isolated_run(&self) -> Vec<BFieldElement>
Intial stack on program start, when the snippet runs in isolation.
fn stack_diff(&self) -> isize
Source§impl Procedure for ReadInput
impl Procedure for ReadInput
Source§fn rust_shadow(
&self,
stack: &mut Vec<BFieldElement>,
_memory: &mut HashMap<BFieldElement, BFieldElement>,
nondeterminism: &NonDeterminism,
public_input: &[BFieldElement],
_sponge: &mut Option<VmHasher>,
) -> Vec<BFieldElement>
fn rust_shadow( &self, stack: &mut Vec<BFieldElement>, _memory: &mut HashMap<BFieldElement, BFieldElement>, nondeterminism: &NonDeterminism, public_input: &[BFieldElement], _sponge: &mut Option<VmHasher>, ) -> Vec<BFieldElement>
Returns standard output
fn pseudorandom_initial_state( &self, _seed: [u8; 32], _bench_case: Option<BenchmarkCase>, ) -> ProcedureInitialState
fn preprocess<T: BFieldCodec>( _meta_input: T, _nondeterminism: &mut NonDeterminism, )
fn corner_case_initial_states(&self) -> Vec<ProcedureInitialState>
impl Eq for ReadInput
impl StructuralPartialEq for ReadInput
Auto Trait Implementations§
impl Freeze for ReadInput
impl RefUnwindSafe for ReadInput
impl Send for ReadInput
impl Sync for ReadInput
impl Unpin for ReadInput
impl UnwindSafe for ReadInput
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more