Utils(ユーティリティ)
Utilsリソースは、フォーマット、エンコード、検証、その他のヘルパー操作のためのユーティリティ関数を提供します。
操作
Format Units(単位をフォーマット)
weiを人間が読める形式に変換します。
必要な認証情報:Ethereum RPC
パラメータ:
- Value(値)(必須):wei単位の値
- Decimals(小数点)(オプション):小数点の数(デフォルト:18)
例:
{
"value": "1000000000000000000",
"decimals": 18
}
出力:
{
"formatted": "1.0"
}
Parse Units(単位を解析)
人間が読める形式をweiに変換します。
必要な認証情報:Ethereum RPC
パラメータ:
- Value(値)(必須):人間が読める値
- Decimals(小数点)(オプション):小数点の数(デフォルト:18)
例:
{
"value": "1.5",
"decimals": 18
}
出力:
{
"parsed": "1500000000000000000"
}
Get Chain ID(チェーンIDを取得)
現在のチェーン識別子を取得します。
必要な認証情報:Ethereum RPC
パラメータ:なし
出力例:
{
"chainId": 1
}
一般的なチェーンID:
1:Ethereumメインネット5:Goerliテストネット11155111:Sepoliaテストネット137:Polygonメインネット56:BNBスマートチェーン42161:Arbitrum One10:Optimism
Validate Address(アドレスを検証)
Ethereumアドレスを検証してチェックサム化します。
必要な認証情報:Ethereum RPC
パラメータ:
- Address(アドレス)(必須):検証するアドレス
例:
{
"address": "0x742d35cc6634c0532925a3b844bc9e7595f0beb"
}
出力:
{
"valid": true,
"checksummed": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb"
}
Encode Function Data(関数データをエンコード)
ABIから関数呼び出しデータをエンコードします。
必要な認証情報:Ethereum RPC
パラメータ:
- ABI(必須):関数ABI
- Function Name(関数名)(必須):関数の名前
- Arguments(引数)(オプション):関数の引数
ユースケース:
- トランザクションデータを準備
- マルチコールペイロードを作成
- コントラクトインタラクションをエンコード
Decode Function Data(関数データをデコード)
ABIを使用して関数呼び出しデータをデコードします。
必要な認証情報:Ethereum RPC
パラメータ:
- ABI(必須):関数ABI
- Data(データ)(必須):デコードするエンコードされたデータ
ユースケース:
- トランザクション入力を分析
- コントラクト呼び出しをデバッグ
- トランザクションデータを解析
Encode Event Topics(イベントトピックをエンコード)
ログフィルタリング用のイベントトピックをエンコードします。
必要な認証情報:Ethereum RPC
パラメータ:
- Event ABI(イベントABI)(必須):イベントABI
- Arguments(引数)(オプション):インデックス付きパラメータ
Decode Event Log(イベントログをデコード)
ABIを使用してイベントログデータをデコードします。
必要な認証情報:Ethereum RPC
パラメータ:
- Event ABI(イベントABI)(必須):イベントABI
- Topics(トピック)(必須):ログトピック
- Data(データ)(必須):ログデータ
ユースケース:
- イベントログを解析
- イベントパラメータを抽出
- 発行されたイベントを理解
Get Contract Address(コントラクトアドレスを取得)
CREATEまたはCREATE2デプロイアドレスを計算します。
必要な認証情報:Ethereum RPC
パラメータ:
- From(送信元)(必須):デプロイヤーアドレス
- Nonce(オプション):トランザクションnonce(CREATEの場合)
- Bytecode Hash(バイトコードハッシュ)(オプション):バイトコードのKeccak256ハッシュ(CREATE2の場合)
- Salt(ソルト)(オプション):CREATE2のソルト
ユースケース:
- コントラクトデプロイアドレスを予測
- デプロイアドレスを検証
- CREATE2アドレスを計算
一般的なユースケース
トークン量をフォーマット
[Get Balance] → [Format Units] → [ユーザーに表示]
ユーザー入力を検証
[ユーザー入力] → [Validate Address] → [有効な場合は続行]
トランザクションデータをデコード
[Get Transaction] → [Decode Function Data] → [呼び出しを理解]
イベントログを解析
[Get Logs] → [Decode Event Log] → [イベントを処理]
ヒント
- 小数点:ETHは18桁の小数点を使用しますが、トークンは任意の数を使用できます(一般的には6、8、または18)
- チェックサム:表示には常にチェックサム化されたアドレスを使用
- チェーンID:正しいネットワークにいることを確認するために使用
- エンコード:生のトランザクションを送信する前にデータをエンコード
- CREATE2:決定論的アドレスは反事実的デプロイに役立ちます
- イベントデコード:インデックス付きパラメータと非インデックスパラメータを自動的に処理