Sha256: 01b9d14b9ecf2bf65a09be9d32f464b952074e5ea5b850af66eff20458f4c439
Contents?: true
Size: 1 KB
Versions: 1
Compression:
Stored size: 1 KB
Contents
pragma :rubidity, "1.0.0" import 'ERC20' contract :PublicMintERC20, is: :ERC20 do uint256 :public, :maxSupply uint256 :public, :perMintLimit constructor( name: :string, symbol: :string, maxSupply: :uint256, perMintLimit: :uint256, decimals: :uint8 ) do super(name: name, symbol: symbol, decimals: decimals) s.maxSupply = maxSupply s.perMintLimit = perMintLimit end function :mint, { amount: :uint256 }, :public do require(amount > 0, 'Amount must be positive') require(amount <= s.perMintLimit, 'Exceeded mint limit') require(s.totalSupply + amount <= s.maxSupply, 'Exceeded max supply') _mint(to: msg.sender, amount: amount) end function :airdrop, { to: :address, amount: :uint256 }, :public do require(amount > 0, 'Amount must be positive') require(amount <= s.perMintLimit, 'Exceeded mint limit') require(s.totalSupply + amount <= s.maxSupply, 'Exceeded max supply') _mint(to: to, amount: amount) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
uniswap-0.0.1 | lib/uniswap/PublicMintERC20.rb |