CryptoZombiesのコードを解説します。コントラクトの関係全体を見たい方はこちらへ。
contract Ownable
コントラクトのオーナーに関する基本的な関数を実装しているコントラクトです。CryptoZombiesではmodifier onlyOwner()がよく使われています。元はOpenZeppelinのコードです。
関連するレッスン、チャプター
ソースコード・解説
/** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ // このコントラクトをEthereumに配置した時実行される関数(コンストラクタ) function Ownable() public { // msg.senderはコントラクト配置者のID、このIDをコントラクトのオーナーとして登録する。 owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ // よく使う。コントラクトオーナーしか実行できない関数を実装するときに使うmodifier modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); OwnershipTransferred(owner, newOwner); owner = newOwner; } }
「CryptoZombiesコード解説 Ownable」への1件のフィードバック
コメントは停止中です。