pub fn zcash_deserialize_external_count<R: Read, T: ZcashDeserialize + TrustedPreallocate>(
external_count: usize,
reader: R,
) -> Result<Vec<T>, SerializationError>Expand description
Deserialize a Vec containing external_count items.
In Zcash, most arrays are stored as a CompactSize, followed by that number
of items of type T. But in Transaction::V5, some types are serialized as
multiple arrays in different locations, with a single CompactSize before the
first array.
ยงUsage
Use zcash_deserialize_external_count when the array count is determined by
other data, or a consensus rule.
Use Vec::zcash_deserialize for data that contains CompactSize count,
followed by the data array.
For example, when a single count applies to multiple arrays:
- Use
Vec::zcash_deserializefor the array that has a data count. - Use
zcash_deserialize_external_countfor the arrays with no count in the data, passing the length of the first array.
This function has a zcash_ prefix to alert the reader that the
serialization in use is consensus-critical serialization, rather than
some other kind of serialization.