RobinhoodLaunchTokenFactory
0x4ec0d15bc8d2f5a7eb4d14e789c92c7f7b96425d
Verification
Verified
v0.8.28+commit.7893614a
Type
Contract
8,388 bytes
ABI entries
6
1 read · 1 write
License
none
Contract information
- Address
- 0x4ec0d15bc8d2f5a7eb4d14e789c92c7f7b96425d
- Chain
- Robinhood Chain (4663)
- Compiler
- v0.8.28+commit.7893614a
- Optimization
- Enabled
- Creator
- 0x4D8E431f3d…248678933B
- Creation tx
- 0x24397cca73…93dc750a42
Token
Not a token
This contract does not expose ERC-20 metadata.
Read contract (1)
poolManager() → address
ABI
[
{
"inputs": [
{
"internalType": "address",
"name": "poolManager_",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "Create2EmptyBytecode",
"type": "error"
},
{
"inputs": [],
"name": "Create2FailedDeployment",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "balance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "needed",
"type": "uint256"
}
],
"name": "Create2InsufficientBalance",
"type": "error"
},
{
"inputs": [
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
},
{
"internalType": "uint256",
"name": "salt",
"type": "uint256"
}
],
"name": "deployToken",
"outputs": [
{
"internalType": "address",
"name": "token",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "poolManager",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
]Source code
// SPDX-License-Identifier: MIT
pragma solidity 0.8.28;
import {RobinhoodLaunchToken} from "./RobinhoodLaunchToken.sol";
import {Create2} from "@openzeppelin/contracts/utils/Create2.sol";
/// @notice Robinhood deployment of Arena's permissionless CREATE2 token factory.
/// @dev The PoolManager constructor argument is the only chain-specific addition.
contract RobinhoodLaunchTokenFactory {
address public immutable poolManager;
constructor(address poolManager_) {
poolManager = poolManager_;
}
function deployToken(string memory name, string memory symbol, uint256 salt)
external
returns (address token)
{
bytes memory tokenBytecode = abi.encodePacked(
type(RobinhoodLaunchToken).creationCode,
abi.encode(name, symbol, msg.sender, poolManager)
);
token = Create2.deploy(0, bytes32(salt), tokenBytecode);
}
}
Chain explorer5335msChain node76ms