1
0
Utility library for parsing and processing the Partisia Blockchain ABI Format.
Go to file
2024-07-08 20:22:14 +02:00
.gitea/workflows Repository layout updated to latest Python version 2024-05-29 21:38:58 +02:00
pbcabi 🤖 Bumped version to 0.1.13 2024-07-08 19:10:12 +02:00
test Fixed parsing of AvlTree 2024-05-03 10:18:54 +02:00
.gitignore 🤖 Repository layout updated to latest Python version 2024-06-13 22:01:55 +02:00
LICENCE Initial commit with README and LICENCE 2023-06-20 11:15:05 +02:00
README.md 🤖 Repository layout updated to latest version 2024-07-08 19:10:04 +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
ruff.toml 🤖 Repository layout updated to latest Python version 2024-06-16 02:17:48 +02:00
setup.py 🤖 Repository layout updated to latest version 2024-07-08 20:22:14 +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.