pub fn assert_can_sign_off(&self, signatory_info: &AccountInfo) -> Result<(), ProgramError> {
        if self.signed_off {
            return Err(GovernanceError::SignatoryAlreadySignedOff.into());
        }

        if !signatory_info.is_signer {
            return Err(GovernanceError::SignatoryMustSign.into());
        }

        Ok(())
    }
/// Checks signatory hasn't signed off yet and is transaction signer
Checks signatory hasn't signed off yet and is transaction signer
Checks signatory hasn ' t signed off yet and is transaction signer
pub fn assert_can_sign_off(&self, signatory_info: &AccountInfo) -> Result<(), ProgramError> {
        if self.signed_off {
            return Err(GovernanceError::SignatoryAlreadySignedOff.into());
        }
        if !signatory_info.is_signer {
            return Err(GovernanceError::SignatoryMustSign.into());
        }
        Ok(())
    }
pub fn assert_can_sign_off ( & self , signatory_info : & AccountInfo ) -> Result < ( ) , ProgramError > { if self . signed_off { return Err ( GovernanceError :: SignatoryAlreadySignedOff . into ( ) ) ; } if ! signatory_info . is_signer { return Err ( GovernanceError :: SignatoryMustSign . into ( ) ) ; } Ok ( ( ) ) }
Checks signatory hasn't signed off yet and is transaction signer
Checks signatory hasn ' t signed off yet and is transaction signer
&self
signatory_info
&AccountInfo
&self
signatory_info
&AccountInfo