Smart Contract を flatten する
Remix または Hardhat を使って Solidity の smart contract とその依存関係をすべて 1 つの .sol ファイルにまとめ、Chiliz Chain のエクスプローラーでのソースコード verify を簡単にします。
最終更新
役に立ちましたか?
Remix または Hardhat を使って Solidity の smart contract とその依存関係をすべて 1 つの .sol ファイルにまとめ、Chiliz Chain のエクスプローラーでのソースコード verify を簡単にします。
smart contract のフラット化とは、メインの contract をそのすべての依存関係(インターフェース、ライブラリ、継承された contract)と組み合わせて、単一のスタンドアロンな .sol ファイルにまとめるプロセスです。これにより、deploy された contract の検証がはるかに容易になります。
contract を deploy するためにフラット化する必要はありません。
フラット化は主に、エクスプローラー上でソースコードを verify するための deploy 後のステップです。
Chiliz Chain は EVM 互換のブロックチェーンであるため、contract をフラット化するためのツールがいくつか用意されています。
元のファイルから deploy した後、contract 全体を verify するためにそれらをフラット化する場合は、コンパイル設定に何も変更がないことを確認する必要があります。
そうしないと、「Bytecode mismatch」のようなエラーが発生し、verify に失敗するおそれがあります。
File Explorer でメインの contract を右クリックし、メニューから「Flatten」を選択します。

Remix はフォルダー内に CONTRACT_flattened.sol という contract を生成します。
次の行を自分のワークフローに合わせて調整してください。
フラット化された contract は数千行に及ぶことがあるため、実際の開発やメンテナンスには非常に不向きです。
それらは必要なとき、たとえば deploy された contract を verify するときにのみ生成すべきです。
最終更新
役に立ちましたか?
役に立ちましたか?
npx hardhat flatten contracts/MyContract.sol > Flattened.sol