axelar-gmp-sdk-solidity

Solidity API

IDeployer

This interface defines the contract responsible for deploying and optionally initializing new contracts via a specified deployment method.

DeployInitFailed

error DeployInitFailed()

Deployed

event Deployed(address deployedAddress, address sender, bytes32 salt, bytes32 bytecodeHash)

deploy

function deploy(bytes bytecode, bytes32 salt) external payable returns (address deployedAddress_)

Deploys a contract using a deployment method defined by derived contracts.

Parameters

Name Type Description
bytecode bytes The bytecode of the contract to be deployed
salt bytes32 A salt to influence the contract address

Return Values

Name Type Description
deployedAddress_ address The address of the deployed contract

deployAndInit

function deployAndInit(bytes bytecode, bytes32 salt, bytes init) external payable returns (address deployedAddress_)

Deploys a contract using a deployment method defined by derived contracts and initializes it.

Parameters

Name Type Description
bytecode bytes The bytecode of the contract to be deployed
salt bytes32 A salt to influence the contract address
init bytes Init data used to initialize the deployed contract

Return Values

Name Type Description
deployedAddress_ address The address of the deployed contract

deployedAddress

function deployedAddress(bytes bytecode, address sender, bytes32 salt) external view returns (address deployedAddress_)

Returns the address where a contract will be stored if deployed via {deploy} or {deployAndInit} by sender.

Parameters

Name Type Description
bytecode bytes The bytecode of the contract
sender address The address that will deploy the contract
salt bytes32 The salt that will be used to influence the contract address

Return Values

Name Type Description
deployedAddress_ address The address that the contract will be deployed to