Struct TestnetV0

pub(crate) struct TestnetV0;

Trait Implementations§

§

impl Clone for TestnetV0

§

fn clone(&self) -> TestnetV0

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for TestnetV0

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<'de> Deserialize<'de> for TestnetV0

§

fn deserialize<__D>( __deserializer: __D, ) -> Result<TestnetV0, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
§

impl Environment for TestnetV0

§

const EDWARDS_A: <TestnetV0 as Environment>::Field = Console::EDWARDS_A

The coefficient A of the twisted Edwards curve.

§

const EDWARDS_D: <TestnetV0 as Environment>::Field = Console::EDWARDS_D

The coefficient D of the twisted Edwards curve.

§

const MONTGOMERY_A: <TestnetV0 as Environment>::Field = Console::MONTGOMERY_A

The coefficient A of the Montgomery curve.

§

const MONTGOMERY_B: <TestnetV0 as Environment>::Field = Console::MONTGOMERY_B

The coefficient B of the Montgomery curve.

§

type Affine = <Console as Environment>::Affine

§

type BigInteger = <Console as Environment>::BigInteger

§

type Field = <Console as Environment>::Field

§

type PairingCurve = <Console as Environment>::PairingCurve

§

type Projective = <Console as Environment>::Projective

§

type Scalar = <Console as Environment>::Scalar

§

const MAX_STRING_BYTES: u32 = 255u32

The maximum number of bytes allowed in a string.
§

fn halt<S, T>(message: S) -> T
where S: Into<String>,

Halts the program from further synthesis, evaluation, and execution in the current environment.
§

impl Hash for TestnetV0

§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
§

impl Network for TestnetV0

§

const GENESIS_COINBASE_TARGET: u64 = 536_870_911u64

The genesis block coinbase target.

§

const GENESIS_PROOF_TARGET: u64 = 134_217_728u64

The genesis block proof target.

§

const GENESIS_TIMESTAMP: i64 = 1_715_776_496i64

The fixed timestamp of the genesis block.

§

const ID: u16 = 1u16

The network ID.

§

const INCLUSION_FUNCTION_NAME: &'static str = snarkvm_parameters::testnet::NETWORK_INCLUSION_FUNCTION_NAME

The function name for the inclusion circuit.

§

const MAX_CERTIFICATES: [(ConsensusVersion, u16); 5]

A list of (consensus_version, size) pairs indicating the maximum number of certificates in a batch.

§

const NAME: &'static str = "Aleo Testnet (v0)"

The (long) network name.

§

const SHORT_NAME: &'static str = "testnet"

The short network name.

§

const _CONSENSUS_VERSION_HEIGHTS: [(ConsensusVersion, u32); 10] = TESTNET_V0_CONSENSUS_VERSION_HEIGHTS

A list of (consensus_version, block_height) pairs indicating when each consensus version takes effect. Documentation for what is changed at each version can be found in ConsensusVersion. Do not read this directly outside of tests, use N::CONSENSUS_VERSION_HEIGHTS() instead.

§

type BlockHash = AleoID<Field<TestnetV0>, snarkvm_console_network::::testnet_v0::{impl#2}::BlockHash::{constant#0}>

The block hash type.

§

type RatificationID = AleoID<Field<TestnetV0>, snarkvm_console_network::::testnet_v0::{impl#2}::RatificationID::{constant#0}>

The ratification ID type.

§

type StateRoot = AleoID<Field<TestnetV0>, snarkvm_console_network::::testnet_v0::{impl#2}::StateRoot::{constant#0}>

The state root type.

§

type TransactionID = AleoID<Field<TestnetV0>, snarkvm_console_network::::testnet_v0::{impl#2}::TransactionID::{constant#0}>

The transaction ID type.

§

type TransitionID = AleoID<Field<TestnetV0>, snarkvm_console_network::::testnet_v0::{impl#2}::TransitionID::{constant#0}>

The transition ID type.

§

type TransmissionChecksum = u128

The transmission checksum type.

§

fn INCLUSION_UPGRADE_HEIGHT() -> Result<u32, Error>

Returns the block height where the the inclusion proof will be updated.

§

fn genesis_bytes() -> &'static [u8]

Returns the genesis block bytes.

§

fn restrictions_list_as_str() -> &'static str

Returns the restrictions list as a JSON-compatible string.

§

fn get_credits_v0_proving_key( function_name: String, ) -> Result<&'static Arc<CircuitProvingKey<<TestnetV0 as Environment>::PairingCurve, VarunaHidingMode>>, Error>

Returns the proving key for the given function name in the v0 version of credits.aleo.

§

fn get_credits_v0_verifying_key( function_name: String, ) -> Result<&'static Arc<CircuitVerifyingKey<<TestnetV0 as Environment>::PairingCurve>>, Error>

Returns the verifying key for the given function name in the v0 version of credits.aleo.

§

fn get_credits_proving_key( function_name: String, ) -> Result<&'static Arc<CircuitProvingKey<<TestnetV0 as Environment>::PairingCurve, VarunaHidingMode>>, Error>

Returns the proving key for the given function name in credits.aleo.

§

fn get_credits_verifying_key( function_name: String, ) -> Result<&'static Arc<CircuitVerifyingKey<<TestnetV0 as Environment>::PairingCurve>>, Error>

Returns the verifying key for the given function name in credits.aleo.

§

fn inclusion_v0_proving_key() -> &'static Arc<CircuitProvingKey<<TestnetV0 as Environment>::PairingCurve, VarunaHidingMode>>

Returns the proving key for the inclusion circuit.

§

fn inclusion_v0_verifying_key() -> &'static Arc<CircuitVerifyingKey<<TestnetV0 as Environment>::PairingCurve>>

Returns the verifying key for the inclusion circuit.

§

fn inclusion_proving_key() -> &'static Arc<CircuitProvingKey<<TestnetV0 as Environment>::PairingCurve, VarunaHidingMode>>

Returns the proving key for the inclusion circuit.

§

fn inclusion_verifying_key() -> &'static Arc<CircuitVerifyingKey<<TestnetV0 as Environment>::PairingCurve>>

Returns the verifying key for the inclusion circuit.

§

fn g_powers() -> &'static Vec<Group<TestnetV0>>

Returns the powers of G.

§

fn g_scalar_multiply(scalar: &Scalar<TestnetV0>) -> Group<TestnetV0>

Returns the scalar multiplication on the generator G.

§

fn varuna_universal_prover() -> &'static UniversalProver<<TestnetV0 as Environment>::PairingCurve>

Returns the Varuna universal prover.

§

fn varuna_universal_verifier() -> &'static UniversalVerifier<<TestnetV0 as Environment>::PairingCurve>

Returns the Varuna universal verifier.

§

fn varuna_fs_parameters() -> &'static <PoseidonSponge<<<TestnetV0 as Environment>::PairingCurve as PairingEngine>::Fq, 2, 1> as AlgebraicSponge<<<TestnetV0 as Environment>::PairingCurve as PairingEngine>::Fq, 2>>::Parameters

Returns the sponge parameters used for the sponge in the Varuna SNARK.

§

fn commitment_domain() -> Field<TestnetV0>

Returns the commitment domain as a constant field element.

§

fn encryption_domain() -> Field<TestnetV0>

Returns the encryption domain as a constant field element.

§

fn graph_key_domain() -> Field<TestnetV0>

Returns the graph key domain as a constant field element.

§

fn serial_number_domain() -> Field<TestnetV0>

Returns the serial number domain as a constant field element.

§

fn commit_bhp256( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 256-bits and randomizer.

§

fn commit_bhp512( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 512-bits and randomizer.

§

fn commit_bhp768( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 768-bits and randomizer.

§

fn commit_bhp1024( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 1024-bits and randomizer.

§

fn commit_ped64( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.

§

fn commit_ped128( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Field<TestnetV0>, Error>

Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.

§

fn commit_to_group_bhp256( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 256-bits and randomizer.

§

fn commit_to_group_bhp512( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 512-bits and randomizer.

§

fn commit_to_group_bhp768( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 768-bits and randomizer.

§

fn commit_to_group_bhp1024( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a BHP commitment with an input hasher of 1024-bits and randomizer.

§

fn commit_to_group_ped64( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.

§

fn commit_to_group_ped128( input: &[bool], randomizer: &Scalar<TestnetV0>, ) -> Result<Group<TestnetV0>, Error>

Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.

§

fn hash_bhp256(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 256-bits.

§

fn hash_bhp512(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 512-bits.

§

fn hash_bhp768(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 768-bits.

§

fn hash_bhp1024(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 1024-bits.

§

fn hash_keccak256(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the Keccak hash with a 256-bit output.

§

fn hash_keccak384(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the Keccak hash with a 384-bit output.

§

fn hash_keccak512(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the Keccak hash with a 512-bit output.

§

fn hash_ped64(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the Pedersen hash for a given (up to) 64-bit input.

§

fn hash_ped128(input: &[bool]) -> Result<Field<TestnetV0>, Error>

Returns the Pedersen hash for a given (up to) 128-bit input.

§

fn hash_psd2(input: &[Field<TestnetV0>]) -> Result<Field<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 2.

§

fn hash_psd4(input: &[Field<TestnetV0>]) -> Result<Field<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 4.

§

fn hash_psd8(input: &[Field<TestnetV0>]) -> Result<Field<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 8.

§

fn hash_sha3_256(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the SHA-3 hash with a 256-bit output.

§

fn hash_sha3_384(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the SHA-3 hash with a 384-bit output.

§

fn hash_sha3_512(input: &[bool]) -> Result<Vec<bool>, Error>

Returns the SHA-3 hash with a 512-bit output.

§

fn hash_many_psd2( input: &[Field<TestnetV0>], num_outputs: u16, ) -> Vec<Field<TestnetV0>>

Returns the extended Poseidon hash with an input rate of 2.

§

fn hash_many_psd4( input: &[Field<TestnetV0>], num_outputs: u16, ) -> Vec<Field<TestnetV0>>

Returns the extended Poseidon hash with an input rate of 4.

§

fn hash_many_psd8( input: &[Field<TestnetV0>], num_outputs: u16, ) -> Vec<Field<TestnetV0>>

Returns the extended Poseidon hash with an input rate of 8.

§

fn hash_to_group_bhp256(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 256-bits.

§

fn hash_to_group_bhp512(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 512-bits.

§

fn hash_to_group_bhp768(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 768-bits.

§

fn hash_to_group_bhp1024(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the BHP hash with an input hasher of 1024-bits.

§

fn hash_to_group_ped64(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the Pedersen hash for a given (up to) 64-bit input.

§

fn hash_to_group_ped128(input: &[bool]) -> Result<Group<TestnetV0>, Error>

Returns the Pedersen hash for a given (up to) 128-bit input.

§

fn hash_to_group_psd2( input: &[Field<TestnetV0>], ) -> Result<Group<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 2 on the affine curve.

§

fn hash_to_group_psd4( input: &[Field<TestnetV0>], ) -> Result<Group<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 4 on the affine curve.

§

fn hash_to_group_psd8( input: &[Field<TestnetV0>], ) -> Result<Group<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 8 on the affine curve.

§

fn hash_to_scalar_psd2( input: &[Field<TestnetV0>], ) -> Result<Scalar<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 2 on the scalar field.

§

fn hash_to_scalar_psd4( input: &[Field<TestnetV0>], ) -> Result<Scalar<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 4 on the scalar field.

§

fn hash_to_scalar_psd8( input: &[Field<TestnetV0>], ) -> Result<Scalar<TestnetV0>, Error>

Returns the Poseidon hash with an input rate of 8 on the scalar field.

§

fn merkle_tree_bhp<const DEPTH: u8>( leaves: &[Vec<bool>], ) -> Result<MerkleTree<TestnetV0, BHP<TestnetV0, 8, 54>, BHP<TestnetV0, 6, 43>, DEPTH>, Error>

Returns a Merkle tree with a BHP leaf hasher of 1024-bits and a BHP path hasher of 512-bits.

§

fn merkle_tree_psd<const DEPTH: u8>( leaves: &[Vec<Field<TestnetV0>>], ) -> Result<MerkleTree<TestnetV0, Poseidon<TestnetV0, 4>, Poseidon<TestnetV0, 2>, DEPTH>, Error>

Returns a Merkle tree with a Poseidon leaf hasher with input rate of 4 and a Poseidon path hasher with input rate of 2.

§

fn verify_merkle_path_bhp<const DEPTH: u8>( path: &MerklePath<TestnetV0, DEPTH>, root: &Field<TestnetV0>, leaf: &Vec<bool>, ) -> bool

Returns true if the given Merkle path is valid for the given root and leaf.

§

fn verify_merkle_path_psd<const DEPTH: u8>( path: &MerklePath<TestnetV0, DEPTH>, root: &Field<TestnetV0>, leaf: &Vec<Field<TestnetV0>>, ) -> bool

Returns true if the given Merkle path is valid for the given root and leaf.

§

const MAX_SOLUTIONS_AS_POWER_OF_TWO: u8 = 2u8

The maximum number of solutions that can be included per block as a power of 2.
§

const MAX_SOLUTIONS: usize = _

The maximum number of solutions that can be included per block.
§

const STARTING_SUPPLY: u64 = 1_500_000_000_000_000u64

The starting supply of Aleo credits.
§

const DEPLOYMENT_FEE_MULTIPLIER: u64 = 1_000u64

The cost in microcredits per byte for the deployment transaction.
§

const CONSTRUCTOR_FEE_MULTIPLIER: u64 = 100u64

The multiplier in microcredits for each command in the constructor.
§

const EXECUTION_STORAGE_FEE_SCALING_FACTOR: u64 = 5_000u64

The constant that divides the storage polynomial.
§

const EXECUTION_STORAGE_PENALTY_THRESHOLD: u64 = 5_000u64

The maximum size execution transactions can be before a quadratic storage penalty applies.
§

const SYNTHESIS_FEE_MULTIPLIER: u64 = 25u64

The cost in microcredits per constraint for the deployment transaction.
§

const MAX_DEPLOYMENT_VARIABLES: u64 = 2_097_152u64

The maximum number of variables in a deployment.
§

const MAX_DEPLOYMENT_CONSTRAINTS: u64 = 2_097_152u64

The maximum number of constraints in a deployment.
§

const MAX_FEE: u64 = 1_000_000_000_000_000u64

The maximum number of microcredits that can be spent as a fee.
§

const TRANSACTION_SPEND_LIMIT: [(ConsensusVersion, u64); 2] = _

A list of consensus versions and their corresponding transaction spend limits in microcredits.
§

const ARC_0005_COMPUTE_DISCOUNT: u64 = 25u64

The compute discount approved by ARC 0005.
§

const ANCHOR_HEIGHT: u32 = _

The anchor height, defined as the expected number of blocks to reach the coinbase target.
§

const ANCHOR_TIME: u16 = 25u16

The anchor time in seconds.
§

const BLOCK_TIME: u16 = 10u16

The expected time per block in seconds.
§

const NUM_BLOCKS_PER_EPOCH: u32 = _

The number of blocks per epoch.
§

const MAX_DATA_ENTRIES: usize = 32usize

The maximum number of entries in data.
§

const MAX_DATA_DEPTH: usize = 32usize

The maximum recursive depth of an entry. Note: This value must be strictly less than u8::MAX.
§

const MAX_DATA_SIZE_IN_FIELDS: u32 = _

The maximum number of fields in data (must not exceed u16::MAX).
§

const MIN_STRUCT_ENTRIES: usize = 1usize

The minimum number of entries in a struct.
§

const MAX_STRUCT_ENTRIES: usize = Self::MAX_DATA_ENTRIES

The maximum number of entries in a struct.
§

const MIN_ARRAY_ELEMENTS: usize = 1usize

The minimum number of elements in an array.
§

const MAX_ARRAY_ELEMENTS: usize = Self::MAX_DATA_ENTRIES

The maximum number of elements in an array.
§

const MIN_RECORD_ENTRIES: usize = 1usize

The minimum number of entries in a record.
§

const MAX_RECORD_ENTRIES: usize = _

The maximum number of entries in a record.
§

const MAX_PROGRAM_SIZE: usize = 100_000usize

The maximum program size by number of characters.
§

const MAX_MAPPINGS: usize = 31usize

The maximum number of mappings in a program.
§

const MAX_FUNCTIONS: usize = 31usize

The maximum number of functions in a program.
§

const MAX_STRUCTS: usize = _

The maximum number of structs in a program.
§

const MAX_RECORDS: usize = _

The maximum number of records in a program.
§

const MAX_CLOSURES: usize = _

The maximum number of closures in a program.
§

const MAX_OPERANDS: usize = Self::MAX_INPUTS

The maximum number of operands in an instruction.
§

const MAX_INSTRUCTIONS: usize = 65_535usize

The maximum number of instructions in a closure or function.
§

const MAX_COMMANDS: usize = 65_535usize

The maximum number of commands in finalize.
§

const MAX_WRITES: u16 = 16u16

The maximum number of write commands in finalize.
§

const MAX_POSITIONS: usize = 255usize

The maximum number of position commands in finalize.
§

const MAX_INPUTS: usize = 16usize

The maximum number of inputs per transition.
§

const MAX_OUTPUTS: usize = 16usize

The maximum number of outputs per transition.
§

const MAX_IMPORTS: usize = 64usize

The maximum number of imports.
§

const MAX_TRANSACTION_SIZE: usize = 128_000usize

The maximum number of bytes in a transaction.
§

fn CONSENSUS_VERSION_HEIGHTS() -> &'static [(ConsensusVersion, u32); 10]

Returns the list of test consensus versions.
§

const TEST_CONSENSUS_VERSION_HEIGHTS: [(ConsensusVersion, u32); 10] = TEST_CONSENSUS_VERSION_HEIGHTS

A set of incrementing consensus version heights used for tests.
§

fn CONSENSUS_VERSION(seek_height: u32) -> Result<ConsensusVersion, Error>

Returns the consensus version which is active at the given height.
§

fn CONSENSUS_HEIGHT(version: ConsensusVersion) -> Result<u32, Error>

Returns the height at which a specified consensus version becomes active.
§

fn LATEST_MAX_CERTIFICATES() -> Result<u16, Error>

Returns the last MAX_CERTIFICATES value.
§

impl PartialEq for TestnetV0

§

fn eq(&self, other: &TestnetV0) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl Serialize for TestnetV0

§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
§

impl Copy for TestnetV0

§

impl Eq for TestnetV0

§

impl StructuralPartialEq for TestnetV0

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<'de, T> DeserializeExt<'de> for T

§

fn take_from_value<D>( value: &mut Value, field: &str, ) -> Result<T, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> PolicyExt for T
where T: ?Sized,

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> GraphNode for T
where T: 'static + Clone + Eq + PartialEq + Debug + Hash,