call method
Implementation
BankInformation? call(String sheba) {
if (!isShebaValid(sheba)) return null;
final bankCode = RegExp(r'IR[0-9]{2}([0-9]{3})[0-9]{19}').firstMatch(sheba)?[1] ?? '';
var bank = {for (var bank in _banksInfo) bank.code: bank}[bankCode];
if (bank == null) return null;
if (bank.isAccountNumberAvailable) {
final data = bank.process!(sheba);
bank.accountNumber = data.accountNumber;
bank.formattedAccountNumber = data.formattedAccountNumber;
}
bank.process = null;
return bank;
}