pub fn sapling_nullifiers(&self) -> Box<dyn Iterator<Item = &sapling::Nullifier> + '_> {
        // This function returns a boxed iterator because the different
        // transaction variants end up having different iterator types
        match self {
            // Spends with Groth Proofs
            Transaction::V4 {
                sapling_shielded_data: Some(sapling_shielded_data),
                ..
            } => Box::new(sapling_shielded_data.nullifiers()),
            Transaction::V5 {
                sapling_shielded_data: Some(sapling_shielded_data),
                ..
            } => Box::new(sapling_shielded_data.nullifiers()),

            // No Spends
            Transaction::V1 { .. }
            | Transaction::V2 { .. }
            | Transaction::V3 { .. }
            | Transaction::V4 {
                sapling_shielded_data: None,
                ..
            }
            | Transaction::V5 {
                sapling_shielded_data: None,
                ..
            } => Box::new(std::iter::empty()),
        }
    }
/// Access the sapling::Nullifiers in this transaction, regardless of version.
Access the sapling::Nullifiers in this transaction, regardless of version.
Access the sapling :: Nullifiers in this transaction regardless of version .
pub fn sapling_nullifiers(&self) -> Box<dyn Iterator<Item = &sapling::Nullifier> + '_> {
        // This function returns a boxed iterator because the different
        // transaction variants end up having different iterator types
        match self {
            // Spends with Groth Proofs
            Transaction::V4 {
                sapling_shielded_data: Some(sapling_shielded_data),
                ..
            } => Box::new(sapling_shielded_data.nullifiers()),
            Transaction::V5 {
                sapling_shielded_data: Some(sapling_shielded_data),
                ..
            } => Box::new(sapling_shielded_data.nullifiers()),
            // No Spends
            Transaction::V1 { .. }
            | Transaction::V2 { .. }
            | Transaction::V3 { .. }
            | Transaction::V4 {
                sapling_shielded_data: None,
                ..
            }
            | Transaction::V5 {
                sapling_shielded_data: None,
                ..
            } => Box::new(std::iter::empty()),
        }
    }
pub fn sapling_nullifiers ( & self ) -> Box < dyn Iterator < Item = & sapling :: Nullifier > + ' _ > { // This function returns a boxed iterator because the different // transaction variants end up having different iterator types match self { // Spends with Groth Proofs Transaction :: V4 { sapling_shielded_data : Some ( sapling_shielded_data ) , .. } => Box :: new ( sapling_shielded_data . nullifiers ( ) ) , Transaction :: V5 { sapling_shielded_data : Some ( sapling_shielded_data ) , .. } => Box :: new ( sapling_shielded_data . nullifiers ( ) ) , // No Spends Transaction :: V1 { .. } | Transaction :: V2 { .. } | Transaction :: V3 { .. } | Transaction :: V4 { sapling_shielded_data : None , .. } | Transaction :: V5 { sapling_shielded_data : None , .. } => Box :: new ( std :: iter :: empty ( ) ) , } }
Access the sapling::Nullifiers in this transaction, regardless of version.
Access the sapling :: Nullifiers in this transaction regardless of version .
&self