dsa-resolvers-deprecated/contracts/protocols/balances.sol

21 lines
705 B
Solidity
Raw Normal View History

2020-04-10 17:40:02 +00:00
pragma solidity ^0.6.0;
interface TokenInterface {
function balanceOf(address) external view returns (uint);
}
contract InstaBalanceResolver {
function getBalances(address owner, address[] memory tknAddress) public view returns (uint[] memory) {
uint[] memory tokensBal = new uint[](tknAddress.length);
for (uint i = 0; i < tknAddress.length; i++) {
if (tknAddress[i] == 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE) {
tokensBal[i] = owner.balance;
} else {
TokenInterface token = TokenInterface(tknAddress[i]);
tokensBal[i] = token.balanceOf(owner);
}
}
return tokensBal;
}
}