pub fn add_chain_value_pool_change(
        self,
        chain_value_pool_change: ValueBalance<NegativeAllowed>,
    ) -> Result<ValueBalance<NonNegative>, ValueBalanceError> {
        let mut chain_value_pool = self
            .constrain::<NegativeAllowed>()
            .expect("conversion from NonNegative to NegativeAllowed is always valid");
        chain_value_pool = (chain_value_pool + chain_value_pool_change)?;

        // Consensus rule: If any of the "Sprout chain value pool balance",
        // "Sapling chain value pool balance", or "Orchard chain value pool balance"
        // would become negative in the block chain created as a result of accepting a block,
        // then all nodes MUST reject the block as invalid.
        //
        // Zebra also checks that the transparent value pool is non-negative,
        // which is a consensus rule derived from Bitcoin.
        chain_value_pool.constrain()
    }
/// Return the sum of the chain value pool change, and this value balance.
///
/// Note: the chain value pool has the opposite sign to the transaction
/// value pool.
///
/// See `add_block` for details.
Return the sum of the chain value pool change, and this value balance.
Note: the chain value pool has the opposite sign to the transaction
value pool.

See `add_block` for details.
Return the sum of the chain value pool change and this value balance . Note : the chain value pool has the opposite sign to the transaction value pool . See ` add_block ` for details .
pub fn add_chain_value_pool_change(
        self,
        chain_value_pool_change: ValueBalance<NegativeAllowed>,
    ) -> Result<ValueBalance<NonNegative>, ValueBalanceError> {
        let mut chain_value_pool = self
            .constrain::<NegativeAllowed>()
            .expect("conversion from NonNegative to NegativeAllowed is always valid");
        chain_value_pool = (chain_value_pool + chain_value_pool_change)?;
        // Consensus rule: If any of the "Sprout chain value pool balance",
        // "Sapling chain value pool balance", or "Orchard chain value pool balance"
        // would become negative in the block chain created as a result of accepting a block,
        // then all nodes MUST reject the block as invalid.
        //
        // Zebra also checks that the transparent value pool is non-negative,
        // which is a consensus rule derived from Bitcoin.
        chain_value_pool.constrain()
    }
pub fn add_chain_value_pool_change ( self , chain_value_pool_change : ValueBalance < NegativeAllowed > , ) -> Result < ValueBalance < NonNegative > , ValueBalanceError > { let mut chain_value_pool = self . constrain :: < NegativeAllowed > ( ) . expect ( " " ) ; chain_value_pool = ( chain_value_pool + chain_value_pool_change ) ? ; // Consensus rule: If any of the "Sprout chain value pool balance", // "Sapling chain value pool balance", or "Orchard chain value pool balance" // would become negative in the block chain created as a result of accepting a block, // then all nodes MUST reject the block as invalid. // // Zebra also checks that the transparent value pool is non-negative, // which is a consensus rule derived from Bitcoin. chain_value_pool . constrain ( ) }
Return the sum of the chain value pool change, and this value balance.
Return the sum of the chain value pool change and this value balance .
self
chain_value_pool_change
ValueBalance<NegativeAllowed>