Protobuf definitions for Penumbra.
This crate only contains the .proto
files and the Rust types generated
from them. These types only handle parsing the wire format; validation
should be performed by converting them into an appropriate domain type, as
in the following diagram:
┌───────┐ ┌──────────────┐ ┌──────────────┐
│encoded│ protobuf │penumbra_sdk_proto│ TryFrom/Into │ domain types │
│ bytes │<──wire ─>│ types │<─validation ─>│(other crates)│
└───────┘ format └──────────────┘ boundary └──────────────┘
The [DomainType
] marker trait can be implemented on a domain type to ensure
these conversions exist.