#[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
Available on crate feature dangerous-expose-struct-fields only.

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
Available on crate feature dangerous-expose-struct-fields only.

Public key used for the ntor circuit extension protocol.

§family: Arc<RelayFamily>
Available on crate feature dangerous-expose-struct-fields only.

Declared family for this relay.

§ipv4_policy: Arc<PortPolicy>
Available on crate feature dangerous-expose-struct-fields only.

List of IPv4 ports to which this relay will exit

§ipv6_policy: Arc<PortPolicy>
Available on crate feature dangerous-expose-struct-fields only.

List of IPv6 ports to which this relay will exit

§ed25519_id: Ed25519Identity
Available on crate feature dangerous-expose-struct-fields only.

Ed25519 identity for this relay

Implementations§

Available on crate feature build_docs only.

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
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.