#[non_exhaustive]
pub struct Microdesc { pub sha256: MdDigest, pub ntor_onion_key: PublicKey, pub family: Arc<RelayFamily>, pub ipv4_policy: Arc<PortPolicy>, pub ipv6_policy: Arc<PortPolicy>, pub ed25519_id: Ed25519Identity, }
Expand description

A single microdescriptor.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
sha256: MdDigest

The SHA256 digest of the text of this microdescriptor. This value is used to identify the microdescriptor when downloading it, and when listing it in a consensus document.

ntor_onion_key: PublicKey

Public key used for the ntor circuit extension protocol.

family: Arc<RelayFamily>

Declared family for this relay.

ipv4_policy: Arc<PortPolicy>

List of IPv4 ports to which this relay will exit

ipv6_policy: Arc<PortPolicy>

List of IPv6 ports to which this relay will exit

ed25519_id: Ed25519Identity

Ed25519 identity for this relay

Implementations

Create a new MicrodescBuilder that can be used to construct microdescriptors.

This function is only available when the crate is built with the build_docs feature.

Limitations

The generated microdescriptors cannot yet be encoded, and do not yet have correct sha256 digests. As such they are only useful for testing.

Return the sha256 digest of this microdesc.

Return the ntor onion key for this microdesc

Return the ipv4 exit policy for this microdesc

Return the ipv6 exit policy for this microdesc

Return the relay family for this microdesc

Return the ed25519 identity for this microdesc, if its Ed25519 identity is well-formed.

Parse a string into a new microdescriptor.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

Should always be Self

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.