53cae4647e
ShieldedData objects must have at least one spend or output; using Either ensures that at least one must be present. This is similar to the JoinSplitData case, but slightly more complicated: rather than enforcing that one list has at least one element (which can be done as `(first, rest)`), here we need to use Either. This has the downside that it is possible to construct multiple equivalent internal representations (choosing whether a spend or output goes in the `first` slot), but this easily fixed with a custom PartialEq implementation. |
||
---|---|---|
.github/workflows | ||
design | ||
zebra-chain | ||
zebra-client | ||
zebra-consensus | ||
zebra-network | ||
zebra-rpc | ||
zebra-script | ||
zebra-storage | ||
zebrad | ||
.gitignore | ||
.rustfmt.toml | ||
Cargo.lock | ||
Cargo.toml | ||
Dockerfile | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md | ||
cloudbuild.yaml |
README.md
zebra 🦓
Hello! I am Zebra, an ongoing Rust implementation of a Zcash node.
License
Zebra is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT.