Compare commits
No commits in common. "a39ba0a13c66bcba7e57f643e35583bbd14f59b1" and "f651d6c8e880e06570dc77962761a8d5ea12daf3" have entirely different histories.
a39ba0a13c
...
f651d6c8e8
|
@ -1,8 +1,4 @@
|
||||||
<!--- WARNING ---!>
|
# Partisia Blockchain ABI client
|
||||||
<!--- THIS IS AN AUTO-GENERATED FILE ---!>
|
|
||||||
<!--- MANUAL CHANGES CAN AND WILL BE OVERWRITTEN ---!>
|
|
||||||
|
|
||||||
# Partisia Blockchain ABI client.
|
|
||||||
|
|
||||||
Utility library for parsing and processing the Partisia Blockchain ABI Format.
|
Utility library for parsing and processing the Partisia Blockchain ABI Format.
|
||||||
|
|
||||||
|
|
|
@ -1,56 +1,17 @@
|
||||||
"""# Partisia Blockchain ABI client.
|
'''
|
||||||
|
Utility library for parsing and processing the PBC ABI format.
|
||||||
|
|
||||||
Utility library for parsing and processing the Partisia Blockchain ABI Format.
|
Follows the ABI specification quite closely. The full ABI specification can be found at:
|
||||||
|
|
||||||
The format is specified here: [Partisia Blockchain's ABI format](https://partisiablockchain.gitlab.io/documentation/smart-contracts/smart-contract-binary-formats.html)..
|
https://partisiablockchain.gitlab.io/documentation/abiv.html
|
||||||
|
'''
|
||||||
|
|
||||||
## Example usage
|
|
||||||
|
|
||||||
This example is based upon the [Token Contract example contract](https://gitlab.com/partisiablockchain/language/example-contracts).
|
|
||||||
It assumes a compiled ABI in `token.abi` and a blockchain state stored in `token_state.bin`.
|
|
||||||
|
|
||||||
```py
|
|
||||||
# Imports
|
|
||||||
from pbcabi.binaryreader import BinaryReader
|
|
||||||
import pbcabi.model
|
import pbcabi.model
|
||||||
|
import pbcabi.binaryreader
|
||||||
# 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.
|
|
||||||
"""
|
|
||||||
|
|
||||||
__all__ = ['model', 'binaryreader', '__version__']
|
|
||||||
|
|
||||||
from . import model, binaryreader
|
|
||||||
from ._version import __version__
|
from ._version import __version__
|
||||||
|
|
||||||
def get_version():
|
def get_version():
|
||||||
"""Returns a PEP 386-compliant version number from __version__."""
|
"""
|
||||||
|
Returns a PEP 386-compliant version number from __version__.
|
||||||
|
"""
|
||||||
return __version__
|
return __version__
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
__version__ = '0.1.12'
|
__version__ = '0.1.11'
|
Loading…
Reference in New Issue
Block a user