erc7730.convert.calldata.convert_erc7730_v2_input_to_calldata module

Conversion of v2 ERC-7730 input descriptors to calldata descriptors.

In v2, the ABI is no longer embedded in the contract context. Instead, the display.formats keys are human-readable ABI signatures (e.g., “cooldownShares(uint256 shares)”) from which Function objects can be parsed and selectors computed. This module provides the v2-specific entry point and conversion logic.

erc7730.convert.calldata.convert_erc7730_v2_input_to_calldata.erc7730_v2_descriptor_to_calldata_descriptors(input_descriptor: InputERC7730Descriptor, source: HttpUrl | None = None, chain_id: int | None = None) list[Annotated[CalldataDescriptorV1, FieldInfo(annotation=NoneType, required=True, title='Calldata descriptor', description='A clear signing descriptor for a smart contract function calldata. Also referred to as a "generic parser descriptor".', discriminator='version')]][source]View on GitHub

Generate output calldata descriptors from a v2 input ERC-7730 descriptor with contract context.

If descriptor is invalid, an empty list is returned. If the descriptor is partially invalid, a partial list is returned. Errors are logged as warnings.

Parameters:
  • input_descriptor – deserialized v2 input ERC-7730 descriptor

  • source – source of the descriptor file

  • chain_id – if set, only emit calldata descriptors for given chain IDs

Returns:

output calldata descriptors (1 per chain + selector)