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§
source§impl<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§
source§impl<A> Clone for Identifier<A>where
A: Clone + Aleo,
impl<A> Clone for Identifier<A>where A: Clone + Aleo,
source§fn clone(&self) -> Identifier<A>
fn clone(&self) -> Identifier<A>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<A> Debug for Identifier<A>where
A: Aleo,
impl<A> Debug for Identifier<A>where A: Aleo,
source§impl<A> Display for Identifier<A>where
A: Aleo,
impl<A> Display for Identifier<A>where A: Aleo,
source§impl<A> Eject for Identifier<A>where
A: Aleo,
impl<A> Eject for Identifier<A>where A: Aleo,
source§fn eject_mode(&self) -> Mode
fn eject_mode(&self) -> Mode
Ejects the mode of the identifier.
source§fn 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>
source§fn eject(&self) -> (Mode, Self::Primitive)
fn eject(&self) -> (Mode, Self::Primitive)
source§fn is_constant(&self) -> bool
fn is_constant(&self) -> bool
true
if the circuit is a constant.source§fn is_private(&self) -> bool
fn is_private(&self) -> bool
true
if the circuit is a private.source§impl<A> Equal<Identifier<A>> for Identifier<A>where
A: Aleo,
impl<A> Equal<Identifier<A>> for Identifier<A>where A: Aleo,
source§fn 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.
source§fn 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>
source§impl<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,
source§fn 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
.
source§impl<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,
source§fn 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
.
source§impl<A> FromBits for Identifier<A>where
A: Aleo,
impl<A> FromBits for Identifier<A>where A: Aleo,
source§fn 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.
source§fn 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>
source§impl<A> FromField for Identifier<A>where
A: Aleo,
impl<A> FromField for Identifier<A>where A: Aleo,
source§fn 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>
source§impl<A> FromStr for Identifier<A>where
A: Aleo,
impl<A> FromStr for Identifier<A>where A: Aleo,
source§impl<A> Hash for Identifier<A>where
A: Aleo,
impl<A> Hash for Identifier<A>where A: Aleo,
source§impl<A> Inject for Identifier<A>where
A: Aleo,
impl<A> Inject for Identifier<A>where A: Aleo,
source§fn 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>
source§impl<A> Parser for Identifier<A>where
A: Aleo,
impl<A> Parser for Identifier<A>where A: Aleo,
source§impl<A> PartialEq<Identifier<A>> for Identifier<A>where
A: Aleo,
impl<A> PartialEq<Identifier<A>> for Identifier<A>where A: Aleo,
source§impl<A> ToBits for &Identifier<A>where
A: Aleo,
impl<A> ToBits for &Identifier<A>where A: Aleo,
source§fn to_bits_le(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>
fn to_bits_le(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>
Returns the little-endian bits of the identifier.
source§fn to_bits_be(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>
fn to_bits_be(&self) -> Vec<<&Identifier<A> as ToBits>::Boolean, Global>
Returns the big-endian bits of the identifier.
type Boolean = Boolean<A>
source§impl<A> ToBits for Identifier<A>where
A: Aleo,
impl<A> ToBits for Identifier<A>where A: Aleo,
source§fn to_bits_le(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>
fn to_bits_le(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>
Returns the little-endian bits of the identifier.
source§fn to_bits_be(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>
fn to_bits_be(&self) -> Vec<<Identifier<A> as ToBits>::Boolean, Global>
Returns the big-endian bits of the identifier.
type Boolean = Boolean<A>
source§impl<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§
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
§impl<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,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<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,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.