HoodTokenDeployer

0x4f25909f48230593a84241c8bf1a7b2ec70376c1

Verification
Verified
v0.8.24+commit.e11b9ed9
Type
Contract
18,590 bytes
ABI entries
1
0 read · 1 write
License
none

Contract information

Address
0x4f25909f48230593a84241c8bf1a7b2ec70376c1
Chain
Robinhood Chain (4663)
Compiler
v0.8.24+commit.e11b9ed9
Optimization
Enabled
Creation tx
0x7e3869dcd8…a34b1d5fc1

Token

Not a token

This contract does not expose ERC-20 metadata.

Read contract (0)

No read functions

The ABI is unavailable or exposes no view functions.

ABI

[
  {
    "inputs": [
      {
        "internalType": "uint8",
        "name": "tokenType",
        "type": "uint8"
      },
      {
        "internalType": "string",
        "name": "name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "symbol",
        "type": "string"
      },
      {
        "internalType": "uint256",
        "name": "supply",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "supplyRecipient",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "creator",
        "type": "address"
      },
      {
        "internalType": "uint16",
        "name": "buyTaxBps",
        "type": "uint16"
      },
      {
        "internalType": "uint16",
        "name": "sellTaxBps",
        "type": "uint16"
      },
      {
        "internalType": "address",
        "name": "taxRecipient",
        "type": "address"
      },
      {
        "internalType": "string",
        "name": "socials",
        "type": "string"
      }
    ],
    "name": "deployToken",
    "outputs": [
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]

Source code

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

import {HoodToken} from "./HoodToken.sol";
import {HoodTaxToken, HoodRewardToken} from "./HoodTaxableTokens.sol";

/// @title HoodTokenDeployer — holds the three token blueprints so the launcher
///        stays under the EIP-170 contract size limit.
/// @notice Permissionless: the token trusts the launcher address it is given,
///         and the launcher only trusts tokens it deployed itself.
contract HoodTokenDeployer {
    function deployToken(
        uint8 tokenType,
        string calldata name,
        string calldata symbol,
        uint256 supply,
        address supplyRecipient,
        address creator,
        uint16 buyTaxBps,
        uint16 sellTaxBps,
        address taxRecipient,
        string calldata socials
    ) external returns (address token) {
        if (tokenType == 0) {
            token = address(new HoodToken(name, symbol, supply, supplyRecipient, socials));
        } else if (tokenType == 1) {
            token = address(new HoodTaxToken(name, symbol, supply, supplyRecipient, msg.sender, creator, buyTaxBps, sellTaxBps, taxRecipient, socials));
        } else if (tokenType == 2) {
            token = address(new HoodRewardToken(name, symbol, supply, supplyRecipient, msg.sender, creator, buyTaxBps, sellTaxBps, taxRecipient, socials));
        } else {
            revert("bad token type");
        }
    }
}
Chain explorer1544msChain node80ms