balanceHelper

Description:

Smart contract deployed on Ethereum with Factory features.

Blockchain: Ethereum

Source Code: View Code On The Blockchain

Solidity Source Code:

{{
  "language": "Solidity",
  "sources": {
    "contracts/balanceHelper.sol": {
      "content": "// SPDX-License-Identifier: MIT\r
pragma solidity ^0.8.0;\r
\r
interface IERC20 {\r
    function balanceOf(address account) external view returns (uint256);\r
}\r
\r
contract balanceHelper {\r
    struct TokenBalance {\r
        address tokenAddress;\r
        uint256 balance;\r
    }\r
    \r
    /**\r
     * @notice Retrieves balances for multiple ERC-20 tokens for a given wallet\r
     * @param walletAddress The address to check balances for\r
     * @param tokenAddresses Array of ERC-20 token contract addresses\r
     * @return An array of TokenBalance structs containing token addresses and their balances\r
     */\r
    function balanceOfs(\r
        address walletAddress,\r
        address[] calldata tokenAddresses\r
    ) external view returns (TokenBalance[] memory) {\r
        TokenBalance[] memory balances = new TokenBalance[](tokenAddresses.length);\r
        \r
        for (uint256 i = 0; i < tokenAddresses.length; i++) {\r
            uint256 balance = 0;\r
            \r
            // Try to get the balance, handle potential reverts\r
            try IERC20(tokenAddresses[i]).balanceOf(walletAddress) returns (uint256 bal) {\r
                balance = bal;\r
            } catch {\r
                // If the call fails (invalid token, etc.), balance remains 0\r
                balance = 0;\r
            }\r
            \r
            balances[i] = TokenBalance({\r
                tokenAddress: tokenAddresses[i],\r
                balance: balance\r
            });\r
        }\r
        \r
        return balances;\r
    }\r
}"
    }
  },
  "settings": {
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "evmVersion": "paris",
    "outputSelection": {
      "*": {
        "*": [
          "evm.bytecode",
          "evm.deployedBytecode",
          "devdoc",
          "userdoc",
          "metadata",
          "abi"
        ]
      }
    }
  }
}}

Tags:
Factory|addr:0xd1d60f675fbb6ce30d7305cfe244152317003004|verified:true|block:23499368|tx:0x017e7df0ac32a9b036fc1b2849c0df1c6c0d52745aea9cb13e1be28811fe7537|first_check:1759523645

Submitted on: 2025-10-03 22:34:06

Comments

Log in to comment.

No comments yet.