Skip to content
Lattice

IEntryPoint

Git Source

Title: IEntryPoint — minimal ERC-4337 EntryPoint surface (v0.7/v0.8/v0.9 share this ABI)

Authors: David Dada <daveproxy80@gmail.com> (https://github.com/dadadave80), Vendored minimal subset of eth-infinitism account-abstraction

(https://github.com/eth-infinitism/account-abstraction/blob/develop/contracts/interfaces/IEntryPoint.sol). Upstream license: MIT.

The bundler/relayer-facing entrypoint that validates and executes user operations. Lattice accounts trust ONE configured EntryPoint as the caller of validateUserOp (stored per account).

Functions

handleOps

Executes a batch of user operations, refunding gas to beneficiary.

function handleOps(PackedUserOperation[] calldata ops, address payable beneficiary) external;

Parameters

NameTypeDescription
opsPackedUserOperation[]
beneficiaryaddress payable

getNonce

The next valid nonce for sender under the 192-bit key (sequential within a key).

function getNonce(address sender, uint192 key) external view returns (uint256 nonce);

Parameters

NameTypeDescription
senderaddress
keyuint192

Returns

NameTypeDescription
nonceuint256

getUserOpHash

The EntryPoint-computed hash a user operation's signature must commit to.

function getUserOpHash(PackedUserOperation calldata userOp) external view returns (bytes32);

Parameters

NameTypeDescription
userOpPackedUserOperation

Returns

NameTypeDescription
<none>bytes32

depositTo

Deposits ETH on behalf of account to prefund its future operations.

function depositTo(address account) external payable;

Parameters

NameTypeDescription
accountaddress

balanceOf

The deposited balance available to account for prefunding.

function balanceOf(address account) external view returns (uint256);

Parameters

NameTypeDescription
accountaddress

Returns

NameTypeDescription
<none>uint256