ContractDeployer
Abstract0x0000000000000000000000000000000000008006
Solidity v0.8.20+commit.a1b79de6
概覽
讀取函式
Returns the account abstraction version if `_address` is a deployed contract. Returns the latest supported account abstraction version if `_address` is an EOA.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _address | address |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint8 |
Returns information about a certain account.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _address | address |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| info | tuple |
Calculates the address of a deployed contract via create
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _sender | address | The account that deploys the contract. |
| _senderNonce | uint256 | The deploy nonce of the sender's account. |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| newAddress | address |
Calculates the address of a deployed contract via create2
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _sender | address | The account that deploys the contract. |
| _bytecodeHash | bytes32 | The correctly formatted hash of the bytecode. |
| _salt | bytes32 | The create2 salt. |
| _input | bytes | The constructor data. |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| newAddress | address | newAddress The derived address of the account. |
寫入函式
Deploys a contract with similar address derivation rules to the EVM's `CREATE` opcode.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _salt | bytes32 | |
| _bytecodeHash | bytes32 | The correctly formatted hash of the bytecode. |
| _input | bytes | The constructor calldata |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address |
Deploys a contract with similar address derivation rules to the EVM's `CREATE2` opcode.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _salt | bytes32 | The CREATE2 salt |
| _bytecodeHash | bytes32 | The correctly formatted hash of the bytecode. |
| _input | bytes | The constructor calldata |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address |
Deploys a contract account with similar address derivation rules to the EVM's `CREATE2` opcode.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _salt | bytes32 | The CREATE2 salt |
| _bytecodeHash | bytes32 | The correctly formatted hash of the bytecode. |
| _input | bytes | The constructor calldata. |
| _aaVersion | uint8 | The account abstraction version to use. Note: this method may be callable only in system mode, that is checked in the `createAccount` by `onlySystemCall` modifier. |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address |
Deploys a contract account with similar address derivation rules to the EVM's `CREATE` opcode.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | |
| _bytecodeHash | bytes32 | The correctly formatted hash of the bytecode. |
| _input | bytes | The constructor calldata. |
| _aaVersion | uint8 | The account abstraction version to use. |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address |
The method that can be used to forcefully deploy a contract.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _deployment | tuple | Information about the forced deployment. |
| _sender | address | The `msg.sender` inside the constructor call. |
This method is to be used only during an upgrade to set bytecodes on specific addresses.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _deployments | tuple[] |
Update the used version of the account.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _version | uint8 | The new version of the AA protocol to use. |
Updates the nonce ordering of the account. Currently, it only allows changes from sequential to arbitrary ordering.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _nonceOrdering | uint8 | The new nonce ordering to use. |
事件
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| accountAddress | address | ✓ | |
| nonceOrdering | uint8 |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| accountAddress | address | ✓ | |
| aaVersion | uint8 |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| deployerAddress | address | ✓ | |
| bytecodeHash | bytes32 | ✓ | |
| contractAddress | address | ✓ |