Contract 48443ea908bc5ee461e110c1d451d8dd26ade5c9490aef517030d809560e8653

← Back to Index 📥 Download WASM

Meta

cliver 25.2.0#28484880988199233a7e8e87c97cb12dac323cb3
rssdkver 22.0.11#34f7f53ae31e0fd02aab436a9872e79fa671ca02
rsver 1.95.0

Instances

  • CCVWCYYMUEFOUWRPZJ7HO4E5NVXJLBEF2B6IG5LFICZISUN2DVKQCME4

Interface

Deploys a contract on behalf of the ContractFactory contract.

fn deploy(
    env: soroban_sdk::Env,
    deployment_args: ContractDeploymentArgs,
) -> soroban_sdk::Address

Idempotently deploys a contract and then dispatches a sequence of inner contract calls in the same top-level invocation.

If the deterministic address is already deployed, deployment is skipped and the calls run against the existing contract. If any inner call reverts, the host aborts the transaction and the whole sequence (including the deploy) is rolled back.

The deployed contract's authorization requirement is hoisted to the top-level invocation via require_auth. Without this, sub-invocations that internally call require_auth(self) — such as a smart-account's add_signer — would fail with Error(Auth, InvalidAction) because their auth wouldn't be tied to the root contract invocation. Hoisting here means callers sign for the deployed contract once and the signature transitively covers any inner self-authorizing calls.

fn deploy_and_call(
    env: soroban_sdk::Env,
    deployment_args: ContractDeploymentArgs,
    calls: soroban_sdk::Vec,
) -> soroban_sdk::Address

Deploys a contract on behalf of the ContractFactory contract. If the contract is already deployed at the deterministic address, returns it.

fn deploy_idempotent(
    env: soroban_sdk::Env,
    deployment_args: ContractDeploymentArgs,
) -> soroban_sdk::Address

Uploads the contract WASM and deploys it on behalf of the ContractFactory contract.

fn upload_and_deploy(
    env: soroban_sdk::Env,
    wasm_bytes: soroban_sdk::Bytes,
    salt: soroban_sdk::BytesN<32>,
    constructor_args: soroban_sdk::Vec,
) -> soroban_sdk::Address
fn get_deployed_address(
    env: soroban_sdk::Env,
    salt: soroban_sdk::BytesN<32>,
    wasm_hash: soroban_sdk::BytesN<32>,
    constructor_args: soroban_sdk::Vec,
) -> soroban_sdk::Address

Imports

WebAssembly Text (WAT) ▶