/// Returns the `vpub_new` fields from `JoinSplit`s in this transaction,
/// regardless of version.
///
/// These values are removed from the value pool of this transaction.
/// and added to the sprout chain value pool.
Returns the `vpub_new` fields from `JoinSplit`s in this transaction,
regardless of version.

These values are removed from the value pool of this transaction.
and added to the sprout chain value pool.
Returns the ` vpub_new ` fields from ` JoinSplit ` s in this transaction regardless of version . These values are removed from the value pool of this transaction . and added to the sprout chain value pool .
pub fn input_values_from_sprout(&self) -> Box<dyn Iterator<Item = &Amount<NonNegative>> + '_> {
        match self {
            // JoinSplits with Bctv14 Proofs
            Transaction::V2 {
                joinsplit_data: Some(joinsplit_data),
                ..
            }
            | Transaction::V3 {
                joinsplit_data: Some(joinsplit_data),
                ..
            } => Box::new(
                joinsplit_data
                    .joinsplits()
                    .map(|joinsplit| &joinsplit.vpub_new),
            ),
            // JoinSplits with Groth Proofs
            Transaction::V4 {
                joinsplit_data: Some(joinsplit_data),
                ..
            } => Box::new(
                joinsplit_data
                    .joinsplits()
                    .map(|joinsplit| &joinsplit.vpub_new),
            ),
            // No JoinSplits
            Transaction::V1 { .. }
            | Transaction::V2 {
                joinsplit_data: None,
                ..
            }
            | Transaction::V3 {
                joinsplit_data: None,
                ..
            }
            | Transaction::V4 {
                joinsplit_data: None,
                ..
            }
            | Transaction::V5 { .. } => Box::new(std::iter::empty()),
        }
    }
pub fn input_values_from_sprout ( & self ) -> Box < dyn Iterator < Item = & Amount < NonNegative > > + ' _ > { match self { // JoinSplits with Bctv14 Proofs Transaction :: V2 { joinsplit_data : Some ( joinsplit_data ) , .. } | Transaction :: V3 { joinsplit_data : Some ( joinsplit_data ) , .. } => Box :: new ( joinsplit_data . joinsplits ( ) . map ( | joinsplit | & joinsplit . vpub_new ) , ) , // JoinSplits with Groth Proofs Transaction :: V4 { joinsplit_data : Some ( joinsplit_data ) , .. } => Box :: new ( joinsplit_data . joinsplits ( ) . map ( | joinsplit | & joinsplit . vpub_new ) , ) , // No JoinSplits Transaction :: V1 { .. } | Transaction :: V2 { joinsplit_data : None , .. } | Transaction :: V3 { joinsplit_data : None , .. } | Transaction :: V4 { joinsplit_data : None , .. } | Transaction :: V5 { .. } => Box :: new ( std :: iter :: empty ( ) ) , } }
Returns the `vpub_new` fields from `JoinSplit`s in this transaction,
regardless of version.
Returns the ` vpub_new ` fields from ` JoinSplit ` s in this transaction regardless of version .
&self
<not_specific>