1
0
Utility library for parsing and processing the Partisia Blockchain ABI Format.
Go to file
Jon Michael Aanes 98840f535b
Some checks failed
Test and Package Python / Test (push) Successful in 19s
Test and Package Python / Package (push) Failing after 21s
Bumped version to 0.1.5
2024-05-29 20:30:42 +02:00
.gitea/workflows Bumped pipelines 2024-05-27 21:55:47 +02:00
pbcabi Bumped version to 0.1.5 2024-05-29 20:30:42 +02:00
test Fixed parsing of AvlTree 2024-05-03 10:18:54 +02:00
.gitignore Updated .gitignore 2024-05-28 00:19:56 +02:00
LICENCE Initial commit with README and LICENCE 2023-06-20 11:15:05 +02:00
README.md Standardized setup.py 2024-04-08 13:48:46 +02:00
requirements_test.txt Bumped pipelines 2024-05-27 21:55:47 +02:00
requirements.txt Bumped pipelines 2024-05-27 21:55:47 +02:00
setup.py Updated standard Python setup 2024-05-29 20:29:10 +02:00

Partisia Blockchain ABI client

Utility library for parsing and processing the Partisia Blockchain ABI Format.

The format is specified here: 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))

# Inspect state as mostly Python-native types.
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 any of:

  • Partisia Applications A/S
  • Partisia Infrastructure A/S
  • Partisia Blockchain Foundation

Use at own risk.