Skip to main content

zcash_serialize_optional_orchard_bundle

Function zcash_serialize_optional_orchard_bundle 

Source
fn zcash_serialize_optional_orchard_bundle<W: Write>(
    shielded_data: Option<&ShieldedData>,
    writer: W,
) -> Result<(), Error>
Expand description

Serializes an optional Orchard-protocol bundle (v5 Orchard, v6 Orchard, or Ironwood).

All three share the same wire encoding: an empty action list (nActions = 0) when the bundle is absent, otherwise the bundle’s fields.

“The fields flagsOrchard, valueBalanceOrchard, anchorOrchard, sizeProofsOrchard, proofsOrchard, and bindingSigOrchard are present if and only if nActionsOrchard > 0.” — § note of the second table of https://zips.z.cash/protocol/protocol.pdf#txnencoding