API Reference

Universal Deployer

Alpha Version

You're viewing an unaudited alpha version v3.0.0-alpha.2. Click here to visit the latest stable release.

Reference of the Universal Deployer Contract (UDC) interface and preset.

Interfaces

Starting from version 3.x.x, the interfaces are no longer part of the openzeppelin_access package. The references documented here are contained in the openzeppelin_interfaces package version 2.1.0-alpha.0.

use openzeppelin_interfaces::deployments::IUniversalDeployer;

Functions

Events

Functions

deploy_contract(class_hash: ClassHash, salt: felt252, not_from_zero: bool, calldata: Span<felt252>) → ContractAddress

external

#

Deploys a contract through the Universal Deployer Contract.

Events

ContractDeployed(address: ContractAddress, deployer: ContractAddress, not_from_zero: bool, class_hash: ClassHash, calldata: Span<felt252>, salt: felt252)

event

#

Emitted when deployer deploys a contract through the Universal Deployer Contract.

Presets

use openzeppelin_presets::UniversalDeployer;

The standard Universal Deployer Contract.

Sierra class hash

0x037f5901deb2b20bf5b2ddb04f6c770a7c5581edd68aa49f199cf74dfaf03c06

Embedded Implementations

UniversalDeployerImpl

External functions

deploy_contract(ref self: ContractState, address: ContractAddress, deployer: ContractAddress, not_from_zero: bool, class_hash: ClassHash, calldata: Span<felt252>, salt: felt252) -> ContractAddress

external

#

Deploys a contract through the Universal Deployer Contract.

When not_from_zero is true, salt is hashed with the caller address and the modified salt is passed to the inner deploy_syscall. This type of deployment is origin-dependent.

When not_from_zero is false, the deployment type is origin-independent.

Emits an ContractDeployed event.

On this page

InterfacesIUniversalDeployerPresetsUniversalDeployer