pub struct ClosureCore<N: Network> { /* private fields */ }Implementations§
Source§impl<N: Network> ClosureCore<N>
impl<N: Network> ClosureCore<N>
Sourcepub fn new(name: Identifier<N>) -> Self
pub fn new(name: Identifier<N>) -> Self
Initializes a new closure with the given name.
Sourcepub const fn name(&self) -> &Identifier<N>
pub const fn name(&self) -> &Identifier<N>
Returns the name of the closure.
Sourcepub fn instructions(&self) -> &[Instruction<N>]
pub fn instructions(&self) -> &[Instruction<N>]
Returns the closure instructions.
Sourcepub fn exceeds_max_array_size(&self, max_array_size: u32) -> bool
pub fn exceeds_max_array_size(&self, max_array_size: u32) -> bool
Returns true if the closure contains an array type with a size that exceeds the given maximum.
Source§impl<N: Network> ClosureCore<N>
impl<N: Network> ClosureCore<N>
Sourcepub fn add_instruction(&mut self, instruction: Instruction<N>) -> Result<()>
pub fn add_instruction(&mut self, instruction: Instruction<N>) -> Result<()>
Adds the given instruction to the closure.
§Errors
This method will halt if there are output statements already. This method will halt if the maximum number of instructions has been reached.
Trait Implementations§
Source§impl<N: Clone + Network> Clone for ClosureCore<N>
impl<N: Clone + Network> Clone for ClosureCore<N>
Source§fn clone(&self) -> ClosureCore<N>
fn clone(&self) -> ClosureCore<N>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<N: Network> Debug for ClosureCore<N>
impl<N: Network> Debug for ClosureCore<N>
Source§impl<N: Network> Display for ClosureCore<N>
impl<N: Network> Display for ClosureCore<N>
Source§impl<N: Network> FromBytes for ClosureCore<N>
impl<N: Network> FromBytes for ClosureCore<N>
Source§fn from_bytes_le(bytes: &[u8]) -> Result<Self, Error>where
Self: Sized,
fn from_bytes_le(bytes: &[u8]) -> Result<Self, Error>where
Self: Sized,
Returns
Self from a byte array in little-endian order.Source§fn from_bytes_le_unchecked(bytes: &[u8]) -> Result<Self, Error>where
Self: Sized,
fn from_bytes_le_unchecked(bytes: &[u8]) -> Result<Self, Error>where
Self: Sized,
Same behavior as
Self::from_bytes_le but avoids costly checks.
This shall only be called when deserializing from a trusted source, such as local storage. Read moreSource§fn read_le_unchecked<R>(reader: R) -> Result<Self, Error>
fn read_le_unchecked<R>(reader: R) -> Result<Self, Error>
Same behavior as
Self::read_le but avoids costly checks.
This shall only be called when deserializing from a trusted source, such as local storage. Read moreSource§impl<N: Network> FromStr for ClosureCore<N>
impl<N: Network> FromStr for ClosureCore<N>
Source§impl<N: Network> Parser for ClosureCore<N>
impl<N: Network> Parser for ClosureCore<N>
Source§fn parse(string: &str) -> ParserResult<'_, Self>
fn parse(string: &str) -> ParserResult<'_, Self>
Parses a string into a closure.
Source§impl<N: Network> ToBytes for ClosureCore<N>
impl<N: Network> ToBytes for ClosureCore<N>
Source§impl<N: Network> TypeName for ClosureCore<N>
impl<N: Network> TypeName for ClosureCore<N>
impl<N: Eq + Network> Eq for ClosureCore<N>
impl<N: Network> StructuralPartialEq for ClosureCore<N>
Auto Trait Implementations§
impl<N> Freeze for ClosureCore<N>
impl<N> RefUnwindSafe for ClosureCore<N>where
<N as Environment>::Field: RefUnwindSafe,
N: RefUnwindSafe,
<N as Environment>::Projective: RefUnwindSafe,
<N as Environment>::Scalar: RefUnwindSafe,
impl<N> Send for ClosureCore<N>
impl<N> Sync for ClosureCore<N>
impl<N> Unpin for ClosureCore<N>where
<N as Environment>::Field: Unpin,
N: Unpin,
<N as Environment>::Projective: Unpin,
<N as Environment>::Scalar: Unpin,
impl<N> UnwindSafe for ClosureCore<N>where
<N as Environment>::Field: UnwindSafe,
N: UnwindSafe,
<N as Environment>::Projective: UnwindSafe,
<N as Environment>::Scalar: UnwindSafe,
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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