docs: add docstring to PbcClient for better self-documentation

This commit is contained in:
Jon Michael Aanes (aider) 2025-04-13 15:27:52 +02:00
parent 41ffccfca3
commit 607da4eaaf

View File

@ -68,6 +68,40 @@ class Balances:
@dataclasses.dataclass(frozen=True) @dataclasses.dataclass(frozen=True)
class PbcClient: class PbcClient:
"""
PbcClient provides an interface to interact with the Partisia Blockchain.
It supports various operations such as sending transactions (both raw and signed),
retrieving account balances, fetching blockchain metadata (e.g., chain ID, nonces),
and obtaining contract state details.
Attributes:
session (requests.Session): The HTTP session used for all network communications.
Methods:
send_transaction(contract_address: str, rpc: bytes, gas_cost: int)
Sends a transaction request to the blockchain.
send_signed_transaction(signed_transaction: SignedTransaction)
Dispatches a pre-signed transaction to the blockchain.
get_account_balances(address: str) -> Balances
Retrieves the balance information for the given account.
get_chain_id() -> str
Returns the blockchain's chain identifier.
get_sender_authentication_nonce() -> int
Obtains the nonce for sender authentication.
get_nonce_for_account(address: str) -> int
Retrieves the nonce for the specified account.
get_contract_state(address: str) -> tuple[dict, datetime.datetime]
Fetches the state and timestamp of a given contract.
... (other public methods are similarly available)
"""
session: requests.Session session: requests.Session
sender_authentication: SenderAuthentication | None = None sender_authentication: SenderAuthentication | None = None
hostname: str = HOSTNAME_MAINNET hostname: str = HOSTNAME_MAINNET