1
0
Utility library for parsing and processing the Partisia Blockchain ABI Format.
Go to file
2023-06-20 11:47:20 +02:00
pbcabi Example in readme 2023-06-20 11:47:20 +02:00
.gitignore Initial commit with README and LICENCE 2023-06-20 11:15:05 +02:00
LICENCE Initial commit with README and LICENCE 2023-06-20 11:15:05 +02:00
README.md Example in readme 2023-06-20 11:47:20 +02:00
requirements.txt Code 2023-06-20 11:15:13 +02:00
setup.py Example in readme 2023-06-20 11:47:20 +02:00

Partisia Blockchain ABI client

Utility library for parsing and processing the Partisia Blockchain's ABI format..

Example usage

This example is based upon the Token Contract example contract. It assumes a compiled ABI in token.abi and a blockchain state stored in token_state.bin.

# Imports
from pbcabi.binaryreader import BinaryReader
import pbcabi.model

# Read ABI
with open('token.abi', 'rb') as f:
    TOKEN_ABI = pbcabi.model.FileAbi.read_from(BinaryReader(f.read()))

with open('token_state.bin', 'rb') as f:
    state_bytes = f.read()

# Read structure TokenState from state_bytes
token_state = TOKEN_ABI.contract.read_state('TokenState', BinaryReader(state_bytes))

my_address = BlockchainAddress.from_hex_hash("00e72e44eab933faaf1fd4ce94bb57e08bff98a1ed")

print(token_state['name'])
> MyToken
print(token_state['balances'][my_address])
> 213112

Legalese

This project is licensed under MIT Licence, see LICENSE for full text.

This project is not associated with, nor supported by Partisia, Secata, or Partisia Blockchain Foundation. Use at own risk.