pub fn instantiate_contract<E, Args, Salt, C>(
    params: &CreateParams<E, Args, Salt, C>
) -> Result<E::AccountId>where
    E: Environment,
    Args: Encode,
    Salt: AsRef<[u8]>,
Expand description

Instantiates another contract.


This is a low level way to instantiate another smart contract. Prefer to use the ink! guided and type safe approach to using this.


  • If the code hash is invalid.
  • If the arguments passed to the instantiation process are invalid.
  • If the instantiation process traps.
  • If the instantiation process runs out of gas.
  • If given insufficient endowment.
  • If the returned account ID failed to decode properly.