pub fn check_rollup_lock_cells_except_stake(
    rollup_type_hash: &H256,
    config: &RollupConfig,
) -> Result<(), Error> {
    if !collect_deposit_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidDepositCell);
    }
    if !collect_deposit_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidDepositCell);
    }
    if !collect_withdrawal_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidWithdrawalCell);
    }
    if !collect_withdrawal_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidWithdrawalCell);
    }
    if !collect_custodian_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidCustodianCell);
    }
    if !collect_custodian_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidCustodianCell);
    }
    Ok(())
}
/// this function ensure transaction doesn't contains any deposit / withdrawal / custodian
this function ensure transaction doesn't contains any deposit / withdrawal / custodian
this function ensure transaction doesn ' t contains any deposit / withdrawal / custodian
pub fn check_rollup_lock_cells_except_stake(
    rollup_type_hash: &H256,
    config: &RollupConfig,
) -> Result<(), Error> {
    if !collect_deposit_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidDepositCell);
    }
    if !collect_deposit_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidDepositCell);
    }
    if !collect_withdrawal_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidWithdrawalCell);
    }
    if !collect_withdrawal_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidWithdrawalCell);
    }
    if !collect_custodian_locks(rollup_type_hash, config, Source::Input)?.is_empty() {
        return Err(Error::InvalidCustodianCell);
    }
    if !collect_custodian_locks(rollup_type_hash, config, Source::Output)?.is_empty() {
        return Err(Error::InvalidCustodianCell);
    }
    Ok(())
}
pub fn check_rollup_lock_cells_except_stake ( rollup_type_hash : & H256 , config : & RollupConfig , ) -> Result < ( ) , Error > { if ! collect_deposit_locks ( rollup_type_hash , config , Source :: Input ) ? . is_empty ( ) { return Err ( Error :: InvalidDepositCell ) ; } if ! collect_deposit_locks ( rollup_type_hash , config , Source :: Output ) ? . is_empty ( ) { return Err ( Error :: InvalidDepositCell ) ; } if ! collect_withdrawal_locks ( rollup_type_hash , config , Source :: Input ) ? . is_empty ( ) { return Err ( Error :: InvalidWithdrawalCell ) ; } if ! collect_withdrawal_locks ( rollup_type_hash , config , Source :: Output ) ? . is_empty ( ) { return Err ( Error :: InvalidWithdrawalCell ) ; } if ! collect_custodian_locks ( rollup_type_hash , config , Source :: Input ) ? . is_empty ( ) { return Err ( Error :: InvalidCustodianCell ) ; } if ! collect_custodian_locks ( rollup_type_hash , config , Source :: Output ) ? . is_empty ( ) { return Err ( Error :: InvalidCustodianCell ) ; } Ok ( ( ) ) }
this function ensure transaction doesn't contains any deposit / withdrawal / custodian
this function ensure transaction doesn ' t contains any deposit / withdrawal / custodian
rollup_type_hash
&H256
config
&RollupConfig
rollup_type_hash
&H256
config
&RollupConfig