Skip to content

VVMDeployer

Description

The VVMDeployer class provides functionality for deploying smart contracts for older Vyper versions via the Vyper Version Manager (VVM). It includes methods for handling contract deployment, execution, and interaction.

Methods

Examples

Python

deployer = boa.loads_partial("""
# pragma version 0.3.10

foo: public(uint256)
bar: public(uint256)

@external
def __init__(bar: uint256):
    self.foo = 42
    self.bar = bar
""")
contract = deployer.deploy()

>>> type(deployer)
<class 'boa.contracts.vvm.vvm_contract.VVMDeployer'>

>>> type(contract)
<class 'boa.contracts.vvm.vvm_contract.VVMContract'>

Warning

Titanoboa will automatically read the version pragma in the source code and install the right compiler version via vvm