ethpm_types: Implementation of EIP-2678
Project description
Quick Start
EthPM is an Ethereum package manifest containing data types for contracts, deployments, and source code using EIP-2678. The library validates and serializes contract related data and provides JSON schemas.
Dependencies
- python3 version 3.8 to 3.12.
Installation
via pip
You can install the latest release via pip
:
pip install ethpm-types
via setuptools
You can clone the repository and use setuptools
for the most up-to-date version:
git clone https://github.com/ApeWorX/ethpm-types.git
cd ethpm-types
python3 setup.py install
Quick Usage
Starting with a dictionary of attribute data, such as a contract instance, you can build an EthPM typed object.
from ethpm_types import ContractInstance
contract = ContractInstance(contractType="ContractClassName", address="0x123...")
print(contract.contract_type)
You can also parse ethpm_types.abi
objects using the .from_signature
classmethod:
from ethpm_types.abi import MethodABI, EventABI
>>> MethodABI.from_signature("function_name(uint256 arg1)")
MethodABI(type='function', name='function_name', inputs=[...], ...)
>>> EventABI.from_signature("Transfer(address indexed from, address indexed to, uint256 value)")
EventABI(type='event', name='Transfer', inputs=[...], ...)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ethpm-types-0.6.14.tar.gz
(1.2 MB
view hashes)
Built Distribution
Close
Hashes for ethpm_types-0.6.14-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77f40bc82e4ba19d3db7f9bfe3faaedeb7e9073343bca7658e19890c96a0cdb6 |
|
MD5 | 34ed9da7e7d54cc8041410a4e8fff3e9 |
|
BLAKE2b-256 | 02bc81dd5062101082e3148adfa7016a0ea450c8c04c89f826bd629dacef80f3 |