Struct snarkvm_circuit::Identifier
source · pub struct Identifier<A>(_, _)
where
A: Aleo;
Expand description
An identifier is an immutable UTF-8 string, represented as a constant field element in the circuit.
Requirements
The identifier must not be an empty string. The identifier must not start with a number. The identifier must be alphanumeric, and may include underscores. The identifier must not consist solely of underscores. The identifier must fit within the data capacity of a base field element.
Implementations
sourceimpl<A> Identifier<A>where
A: Aleo,
impl<A> Identifier<A>where
A: Aleo,
sourcepub fn size_in_bits(&self) -> Integer<A, u8>
pub fn size_in_bits(&self) -> Integer<A, u8>
Returns the number of bits of this identifier.
Trait Implementations
sourceimpl<A> Clone for Identifier<A>where
A: Clone + Aleo,
impl<A> Clone for Identifier<A>where
A: Clone + Aleo,
sourcefn clone(&self) -> Identifier<A>
fn clone(&self) -> Identifier<A>
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl<A> Debug for Identifier<A>where
A: Aleo,
impl<A> Debug for Identifier<A>where
A: Aleo,
sourceimpl<A> Display for Identifier<A>where
A: Aleo,
impl<A> Display for Identifier<A>where
A: Aleo,
sourceimpl<A> Eject for Identifier<A>where
A: Aleo,
impl<A> Eject for Identifier<A>where
A: Aleo,
sourcefn eject_mode(&self) -> Mode
fn eject_mode(&self) -> Mode
Ejects the mode of the identifier.
sourcefn eject_value(&self) -> <Identifier<A> as Eject>::Primitive
fn eject_value(&self) -> <Identifier<A> as Eject>::Primitive
Ejects the identifier as a string.
type Primitive = Identifier<<A as Environment>::Network>
sourcefn eject(&self) -> (Mode, Self::Primitive)
fn eject(&self) -> (Mode, Self::Primitive)
sourcefn is_constant(&self) -> bool
fn is_constant(&self) -> bool
true
if the circuit is a constant. Read moresourcefn is_private(&self) -> bool
fn is_private(&self) -> bool
true
if the circuit is a private. Read moresourceimpl<A> Equal<Identifier<A>> for Identifier<A>where
A: Aleo,
impl<A> Equal<Identifier<A>> for Identifier<A>where
A: Aleo,
sourcefn is_equal(
&self,
other: &Identifier<A>
) -> <Identifier<A> as Equal<Identifier<A>>>::Output
fn is_equal(
&self,
other: &Identifier<A>
) -> <Identifier<A> as Equal<Identifier<A>>>::Output
Returns true
if self
and other
are equal.
sourcefn is_not_equal(
&self,
other: &Identifier<A>
) -> <Identifier<A> as Equal<Identifier<A>>>::Output
fn is_not_equal(
&self,
other: &Identifier<A>
) -> <Identifier<A> as Equal<Identifier<A>>>::Output
Returns true
if self
and other
are not equal.
type Output = Boolean<A>
sourceimpl<A> From<&Identifier<A>> for LinearCombination<<A as Environment>::BaseField>where
A: Aleo,
impl<A> From<&Identifier<A>> for LinearCombination<<A as Environment>::BaseField>where
A: Aleo,
sourcefn from(
identifier: &Identifier<A>
) -> LinearCombination<<A as Environment>::BaseField>
fn from(
identifier: &Identifier<A>
) -> LinearCombination<<A as Environment>::BaseField>
Note: Identifier is always Mode::Constant
.
sourceimpl<A> From<Identifier<A>> for LinearCombination<<A as Environment>::BaseField>where
A: Aleo,
impl<A> From<Identifier<A>> for LinearCombination<<A as Environment>::BaseField>where
A: Aleo,
sourcefn from(
identifier: Identifier<A>
) -> LinearCombination<<A as Environment>::BaseField>
fn from(
identifier: Identifier<A>
) -> LinearCombination<<A as Environment>::BaseField>
Note: Identifier is always Mode::Constant
.
sourceimpl<A> FromBits for Identifier<A>where
A: Aleo,
impl<A> FromBits for Identifier<A>where
A: Aleo,
sourcefn from_bits_le(
bits_le: &[<Identifier<A> as FromBits>::Boolean]
) -> Identifier<A>
fn from_bits_le(
bits_le: &[<Identifier<A> as FromBits>::Boolean]
) -> Identifier<A>
Initializes a new identifier from a list of little-endian bits.
sourcefn from_bits_be(
bits_be: &[<Identifier<A> as FromBits>::Boolean]
) -> Identifier<A>
fn from_bits_be(
bits_be: &[<Identifier<A> as FromBits>::Boolean]
) -> Identifier<A>
Initializes a new identifier from a list of big-endian bits.
type Boolean = Boolean<A>
sourceimpl<A> FromField for Identifier<A>where
A: Aleo,
impl<A> FromField for Identifier<A>where
A: Aleo,
sourcefn from_field(field: <Identifier<A> as FromField>::Field) -> Identifier<A>
fn from_field(field: <Identifier<A> as FromField>::Field) -> Identifier<A>
Initializes a new identifier from a field element.
type Field = Field<A>
sourceimpl<A> FromStr for Identifier<A>where
A: Aleo,
impl<A> FromStr for Identifier<A>where
A: Aleo,
sourceimpl<A> Hash for Identifier<A>where
A: Aleo,
impl<A> Hash for Identifier<A>where
A: Aleo,
sourceimpl<A> Inject for Identifier<A>where
A: Aleo,
impl<A> Inject for Identifier<A>where
A: Aleo,
sourcefn new(Mode, identifier: <Identifier<A> as Inject>::Primitive) -> Identifier<A>
fn new(Mode, identifier: <Identifier<A> as Inject>::Primitive) -> Identifier<A>
Initializes a new identifier from a string.
type Primitive = Identifier<<A as Environment>::Network>
sourceimpl<A> Parser for Identifier<A>where
A: Aleo,
impl<A> Parser for Identifier<A>where
A: Aleo,
sourceimpl<A> PartialEq<Identifier<A>> for Identifier<A>where
A: Aleo,
impl<A> PartialEq<Identifier<A>> for Identifier<A>where
A: Aleo,
sourceimpl<A> ToBits for &Identifier<A>where
A: Aleo,
impl<A> ToBits for &Identifier<A>where
A: Aleo,
sourcefn to_bits_le(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_bits_le(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the little-endian bits of the identifier.
sourcefn to_bits_be(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_bits_be(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the big-endian bits of the identifier.
type Boolean = Boolean<A>
sourceimpl<A> ToBits for Identifier<A>where
A: Aleo,
impl<A> ToBits for Identifier<A>where
A: Aleo,
sourcefn to_bits_le(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_bits_le(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the little-endian bits of the identifier.
sourcefn to_bits_be(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_bits_be(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the big-endian bits of the identifier.
type Boolean = Boolean<A>
sourceimpl<A> ToField for Identifier<A>where
A: Aleo,
impl<A> ToField for Identifier<A>where
A: Aleo,
impl<A> Eq for Identifier<A>where
A: Aleo,
Auto Trait Implementations
impl<A> RefUnwindSafe for Identifier<A>where
<A as Environment>::BaseField: UnwindSafe + RefUnwindSafe,
impl<A> !Send for Identifier<A>
impl<A> !Sync for Identifier<A>
impl<A> Unpin for Identifier<A>where
<A as Environment>::BaseField: Unpin,
impl<A> UnwindSafe for Identifier<A>where
<A as Environment>::BaseField: UnwindSafe + RefUnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.