There is an autodocumentation example of L2-High Level Python Wrappers

pycfhelpers.node.http package


Submodules


pycfhelpers.node.http.simple module


class pycfhelpers.node.http.simple.CFSimpleHTTPRequest(http: DAP.Network.HttpSimple) ^CFSimpleHTTPRequest

Represents a simple HTTP request

Attributes

http

The instance of HttpSimple.

  • Type: HttpSimple

Methods

__init__(http: DAP.Network.HttpSimple)

Initialize a CFSimpleHTTPRequest object.

  • Parameters: http (HttpSimple) – Adress of the CellFrame HTTP request
property query : str

Return the query parameters of the HTTP request.

  • Returns: The query parameters.
  • Return type: str
property url : str

Return the URL path of the HTTP request.

  • Returns: The URL path.
  • Return type: str
property method : str

Return the HTTP method of the request.

  • Returns: The HTTP method.
  • Return type: str
property body : bytes

Return the body of the HTTP request.

  • Returns: The body of the request.
  • Return type: bytes
property client_address : str

Return the client IP address of the HTTP request.

  • Returns: The client IP address.
  • Return type: str
property headers : dict[str, str]

Return the headers of the HTTP request.

  • Returns: The headers of the request.
  • Return type: dict

class pycfhelpers.node.http.simple.CFSimpleHTTPResponse(body: bytes = b”, code: int = 200, headers: dict | None = None) ^CFSimpleHTTPResponse

Represents a simple HTTP response.

Methods

__init__(body: bytes = b”, code: int = 200, headers: dict | None = None)

Initialize a CFSimpleHTTPResponse object.

  • Parameters:
    • body (bytes) – The body of the response.
    • code (int) – The HTTP status code of the response.
    • headers (dict , optional) – The headers of the response. Defaults to None.
property body : bytes

Get the response body.

property code : int

Get the HTTP status code.

property headers : dict

Get the response headers.

class pycfhelpers.node.http.simple.CFSimpleHTTPRequestHandler(methods: list[str], handler: Callable[[CFSimpleHTTPRequest], tuple[bytes, int] | CFSimpleHTTPResponse) ^CFSimpleHTTPRequestHandler

Represents a handler for simple HTTP requests.

Methods

__init__(methods: list[str], handler: Callable[[CFSimpleHTTPRequest], tuple[bytes, int] | CFSimpleHTTPResponse)

Initialize a CFSimpleHTTPRequestHandler object.

  • Parameters:
__call__(http: DAP.Network.HttpSimple, response_code: DAP.Network.HttpCode)

Handle the HTTP request.

  • Parameters:
    • http (HttpSimple) – The HTTP request object.
    • response_code (HttpCode) – The HTTP response code object.

class pycfhelpers.node.http.simple.CFSimpleHTTPServer ^CFSimpleHTTPServer

Represents a simple HTTP server.

Methods

__init__()

Initializate a CFSimpleHTTPServer instanse.

register_uri_handler(uri: str, handler: CFSimpleHTTPRequestHandler)

Register a URI handler for the server.

  • Parameters:
static handler(uri: str, methods: list[str] = (‘GET’,), **kwargs)

Decorator to register a URI handler.

  • Parameters:
    • uri (str) – The URI to handle.
    • methods (list[str], optional) – The HTTP methods supported by the handler. Defaults to [“GET”].
  • Returns: A wrapper function to register the URI handler.
  • Return type: Callable

pycfhelpers.node package



pycfhelpers.node.address module


class pycfhelpers.node.address.CFWalletAddress(address: str) ^CFWalletAddress

The CellFrame wallet address.

Provides methods to work with CellFrame wallet addresses.

Attributes

_original_addr

The original ChainAddr object representing the wallet address.

  • Type: ChainAddr

Methods

__init__(address: str)

Initialize a CFWalletAddress instance with the given address.

  • Parameters: address (str) – The wallet address string.
net_id()

Get the CellFrame network ID of the wallet address.

  • Returns: The CellFrame network ID of the wallet address.
  • Return type: CFNetID

pycfhelpers.node.cli module


class pycfhelpers.node.cli.ReplyObject(reply_id: ReplyId) ^ReplyObject

An object representing a reply for CLI commands.

Provides a mechanism to manage replies for CLI commands.

Attributes

reply_id

The ID of the reply.

  • Type: ReplyId

Methods

__init__(reply_id: ReplyId)

Initialize a ReplyObject instance with the specified reply ID.

  • Parameters: reply_id (ReplyId) – The unique identifier for the reply.
reply(message: str)

Send a reply message.

  • Parameters: message (str) – The message to be sent as a reply.

class pycfhelpers.node.cli.CliCallback(*args, **kwargs) ^CliCallback

Bases: Protocol

A protocol for CLI command callbacks.

Methods

__call__(*args, reply_object: ReplyObject, **kwargs)

Call method signature for CLI command callbacks.

class pycfhelpers.node.cli.CFCliCommand(command: str, callback: CliCallback, help_text: str = ”) ^CFCliCommand

The CellFrame CLI command.

Provides methods to register and handle CLI commands.

Attributes

command

The CLI command.

  • Type: str
callback

The callback function to be executed whe the command is invoked.

help_text

The help text for the command.

  • Type: str
parser

The option parser for the command.

  • Type: OptionParser

Methods

__init__(command: str, callback: CliCallback, help_text: str = ”)

Initialize a CFCliCommand object with the given parametrs.

  • Parameters:
    • command (str) – The alias for CLI command.
    • callback (CliCallback) – The callback function to be executed when the command is invoked.
    • help_text (str , optional) – The help text for the command. Defaults to “”.
register()

Register the CLI command.

pycfhelpers.node.config module


class pycfhelpers.node.config.CFConfig ^CFConfig

A class to access configuration settings.

Methods

__init__()

Initialize the CFConfig object.

__getitem__(section: str)

Retrieve a CFSection object for the given section.

  • Parameters: section (str) – The section of the configuration.
  • Returns: The CFSection object for the given section.
  • Return type: CFSection
get(section: str, item: str, default: str | bool | int | List[str] | None = None)

Retrieve the value of the configuration item.

  • Parameters:
    • section (str) – The section of the configuration.
    • item (str) – The item within the section.
    • default (Optional[ConfigValueType], optional) – The default value to return if the item is not found. Defaults to None.
  • Returns: The value of the configuration item, or the default value if the item is not found.
  • Return type: ConfigValueType

class pycfhelpers.node.config.CFSection(config: CFConfig, section: str) ^CFSection

A class to represent a section of the configuration.

Methods

__init__(config: CFConfig, section: str)

Initialize the CFSection object.

  • Parameters:
    • config (CFConfig) – The CFConfig object that this section belongs to.
    • section (str) – The name of the section.
__getitem__(item: str)

Retrieve the value of the item in the section.

  • Parameters: item (str) – The name of the item.

Retrieve: : ConfigValueType: The value of the item.

get(item: str, default: str | bool | int | List[str] | None = None)

Retrieve the value of the item in the section.

  • Parameters:
    • item (str) – The name of the item.
    • default (Optional[ConfigValueType], optional) – The default value to return if the item is not found. Defaults to None.
  • Returns: The value of the item, or the default value if the item is not found.
  • Return type: ConfigValueType

pycfhelpers.node.consensus module


class pycfhelpers.node.consensus.CFBlock(atom: ChainAtomPtr, chain: CFChain) ^CFBlock

The CellFrame block.

Attributes

chain

The CFChain object associated with the block.

hash

The hash of the block.

  • Type: str
created_at

The time when the block was created.

  • Type: datetime
version

The version of the block.

  • Type: int
cell_id

The cell ID associated with the block.

  • Type: str
chainid

The chain ID associated with the block.

  • Type: str
signs

A list of CFSign objects representing the signatures of the block.

meta

The dictionary containing metadata of the block.

The dictionary includes the following keys:

  • “blockPrevHash” (str): The hash of the previous block.
  • “blockAnchorHash” (str): The hash of the anchor block.
  • “merkle” (str): The root hash of the Merkle tree representing the block’s transactions.
  • “links” (list): A list of hashes representing links to other blocks.
  • “isGenesis” (bool): A boolean value indicating whether the block is a genesis block.
  • Type: dict

Methods

__init__(atom: ChainAtomPtr, chain: CFChain)

Initialize a CFBlock instance with the given atom and chain.

  • Parameters:
    • atom (ChainAtomPtr) – The ChainAtomPtr object representing the block.
    • chain (CFChain) – The CFChain object associated with the block.
  • Raises:
    • TypeError – If the chain type does not contain blocks.
    • RuntimeError – If the block is not found from the atom.
get_datums()

Get datums associated with the block.

  • Returns: A list of CFDatum objects associated with the block.
  • Return type: list[CFDatum]

class pycfhelpers.node.consensus.CFEvent(atom: ChainAtomPtr, chain: CFChain) ^CFEvent

The CellFrame event.

Provides methods to work with CellFrame events.

Attributes

chain

The CFChain object associated with the event.

hash

The hash of the event.

  • Type: str
created_at

The time when the event was created.

  • Type: datetime
version

The version of the event.

  • Type: int
cell_id

The cell ID associated with the event.

  • Type: str
round_id

The round ID associated with the event.

  • Type: int
hashes

A list of hashes associated with the event.

  • Type: list

Methods

__init__(atom: ChainAtomPtr, chain: CFChain)

Initialize a CFEvent object with the given atom and chain.

  • Parameters:
    • atom (ChainAtomPtr) – The ChainAtomPtr object representing the event.
    • chain (CFChain) – The CFChain object associated with the event.
  • Raises:
    • TypeError – If the chain type does not contain events.
    • RuntimeError – If the event is not found from the atom.
get_datums()

Get datum associated with the event.

  • Returns: A list of CFDatum object associated with the event. Event has only one Datum.
  • Return type: list[CFDatum]

pycfhelpers.node.crypto module


class pycfhelpers.node.crypto.CFSign(sign: Sign, net: CFNet) ^CFSign

The CellFrame signature.

Provides methods to work with CellFrame signatures.

Attributes

net

The CFNet object associated with the signature.

type

The type of the signature.

  • Type: str
pkey

The public key associated with the signature.

size

The size of the signature.

  • Type: int
pkey_hash

The hash of the public key associated with the signature.

  • Type: str
address

The address derived from the signature.

  • Type: str

Methods

__init__(sign: Sign, net: CFNet)

Initialize a CFSign object with the given sign and net.

  • Parameters:
    • sign (Sign) – The Sign object representing the signature.
    • net (CFNet) – The CFNet object associated with the signature.
serialize()

Serialize the signature.

  • Returns: The serialized signature.
  • Return type: bytes
static deserialize(data: bytes, net: CFNet)

Deserialize the signature.

  • Parameters:
    • data (bytes) – The serialized signature data.
    • net (CFNet) – The CFNet object associated with the signature.
  • Returns: The deserialized CFSign object.
  • Return type: CFSign

class pycfhelpers.node.crypto.CFPkey(pkey: DAP.Crypto.Pkey) ^CFPkey

The CellFrame public key.

Provides methods to work with CellFrame public keys.

Attributes

type

The type of the public key.

  • Type: str
size

The size of the public key.

  • Type: int
hash

The hash of the public key.

  • Type: str

Methods

__init__(pkey: DAP.Crypto.Pkey)

Initialize a CFPkey object with the given pkey.

  • Parameters: pkey (Pkey) – The Pkey object representing the public key.

class pycfhelpers.node.crypto.CFKey(key: Key) ^CFKey

The CellFrame key.

Provides methods to work with CellFrame keys..

Methods

__init__(key: Key)

Initialize a CFKey object with the given key.

  • Parameters: key (Key) – The Key object.

class pycfhelpers.node.crypto.CFCertificate(certificate_name: str) ^CFCertificate

The CellFrame certificate.

Provides methods to work with CellFrame certificates.

Attributes

pkey

The public key associated with the certificate.

key

The private key associated with the certificate.

_origin_certificate

The origin certificate.

  • Type: Cert

Methods

__init__(certificate_name: str)

Initialize a CFCertificate object with the given certificate name.

  • Parameters: certificate_name (str) – The name of the certificate.
  • Raises: ValueError – If the certificate with the given name is not found.
property private_key : CFKey | None

The private key associated with the certificate.

  • Returns: The private key, or None if not available.
  • Return type: CFKey | None
property public_key : CFPkey

The public key associated with the certificate.

  • Returns: The public key.
  • Return type: CFPkey
delete()

Delete the certificate.

pycfhelpers.node.datums module


class pycfhelpers.node.datums.CFDatum(atom: CFBlock | CFEvent | None, datum: Datum, net: CFNet | None = None) ^CFDatum

The Datum in the CellFrame.

Attributes

hash

The hash of the datum.

  • Type: str
type

The type of the datum.

  • Type: str
version

The version of the datum.

  • Type: str
size

The size of the datum.

  • Type: int
created_at

The creation timestamp of the datum.

  • Type: datetime
atom

The parent atom of the datum.

net

The CFNet instance.

Methods

__init__(atom: CFBlock | CFEvent | None, datum: Datum, net: CFNet | None = None)

Initialize a new CFDatum instance.

  • Parameters:
    • atom (CFBlock | CFEvent | None) – The parent atom of the datum.
    • datum (Datum) – The datum object.
    • net (CFNet | None) – The CFNet instance. Defaults to None.
  • Raises: AttributeError – If atom is None and net is None.
get_sub_datum()

Retrieve the sub-datum associated with this datum.

serialize()

Serialize the datum to bytes.

  • Returns: The serialized datum.
  • Return type: bytes
__repr__()

Return a string representation of the datum.

  • Returns: The string representation of the datum containing type and hash.
  • Return type: str

class pycfhelpers.node.datums.CFSubDatum(parent_datum: CFDatum | None, sub_datum: DatumTx | DatumToken | DatumEmission | DatumDecree | DatumAnchor | bytes, net: CFNet | None = None) ^CFSubDatum

Represent a sub-datum in CellFrame.

Attributes

hash

The hash value of the sub-datum.

  • Type: str
type

The type of the sub-datum, defaults to “DEFAULT”

  • Type: str

Methods

__init__(parent_datum: CFDatum | None, sub_datum: DatumTx | DatumToken | DatumEmission | DatumDecree | DatumAnchor | bytes, net: CFNet | None = None)

Initialize a new CFSubDatum instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (Union[DatumTx, DatumToken, DatumEmission, DatumDecree, DatumAnchor, bytes])
    • representation. (The sub-datum object or its bytes)
    • net (CFNet | None) – The CFNet instance representing the network, defaults to None.
property net : CFNet

Get the CFNet instance representing the network.

  • Returns: The CFNet instance.
  • Return type: CFNet

class pycfhelpers.node.datums.CFDatumTX(parent_datum: CFDatum | None, sub_datum: DatumTx, net: CFNet | None = None) ^CFDatumTX

Bases: CFSubDatum

The transaction sub-datum in CellFrame.

Attributes

created_at

The datetime when the sub-datum was created.

  • Type: datetime
ticker

The ticker associated with the transaction sub-datum.

  • Type: str
ledger_rc

The response code from the ledger cache.

accepted

Indicates whether the transaction is accepted or not.

  • Type: *bool

  • Parameters: CFSubDatum (CFSubDatum) – a sub-datum in CellFrame*

Methods

__init__(parent_datum: CFDatum | None, sub_datum: DatumTx, net: CFNet | None = None)

Initialize a new CFDatumTX instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (DatumTx) – The transaction sub-datum object.
    • net (CFNet | None) – The CFNet instance representing the
    • context (network)
    • None. (defaults to)
property items : list[CFItem]

Get the list of items associated with this transaction.

  • Returns: The list of items.
  • Return type: list[CFItem]
get_items(filter_type: Type[T] | None = None)

Get the list of items associated with transaction.

  • Parameters: filter_type (Type [T] | None) – The type to filter items. Defaults to None.
  • Returns: The list of filtered items.
  • Return type: list[T]

class pycfhelpers.node.datums.CFDatumToken(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumToken) ^CFDatumToken

Bases: CFSubDatum

Represents a token sub-datum in CellFrame.

Attributes

hash

The hash value of the token sub-datum.

  • Type: str
type

The type of the token sub-datum.

  • Type: str
ticker

The ticker symbol of the token.

  • Type: str
data

Additional data associated with the token.

  • Type: str
signs

List of cryptographic signatures associated with the token.

Methods

__init__(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumToken)

Initialize a new CFDatumToken instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (DatumToken) – The token sub-datum object.

class pycfhelpers.node.datums.CFDatumEmission(parent_datum: CFDatum | None, sub_datum: DatumEmission, net: CFNet | None = None) ^CFDatumEmission

Bases: CFSubDatum

The emission sub-datum in CellFrame.

Attributes

hash

The hash value of the emission sub-datum.

  • Type: str
type

The type of the emission sub-datum.

  • Type: str
ticker

The ticker symbol associated with the token.

  • Type: str
version

The version of the emission.

  • Type: str
address

The address associated with the emission.

  • Type: str
value

The value of the emission, representing a quantity of some unit.

  • Type: int
data

Additional data associated with the emission, including cryptographic signatures, dictionaries, or strings.

  • Type: list[Union[CFSign, dict, str]]
tsd

Typed section data associated with the emission, containing various information in a structured format.

  • Type: dict[str, Union[str, dict[str, Any]]]

Methods

__init__(parent_datum: CFDatum | None, sub_datum: DatumEmission, net: CFNet | None = None)

Initialize a new CFDatumEmission instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (DatumEmission) – The emission sub-datum object.
    • net (CFNet | None) – The CFNet instance representing the network context, defaults to None.
property signs : list[CFSign]

Get the list of signatures associated with the emission.

  • Returns: The list of signatures.
  • Return type: list[CFSign]
__repr__()

Return a string representation of the datum.

  • Returns: The string representation of the datum containing type and hash.
  • Return type: str
property valid_sign_hashes : list[str]

Get the list of valid signature hashes associated with the emission.

  • Returns: The list of valid signature hashes.
  • Return type: list[str]
add_sign(certificate: CFCertificate)

Add a cryptographic signature to the emission.

  • Parameters: certificate (CFCertificate) – The certificate containing the signature.
  • Returns: The cryptographic signature object.
  • Return type: CFSign

class pycfhelpers.node.datums.CFDatumDecree(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumDecree) ^CFDatumDecree

Bases: CFSubDatum

Represents a decree sub-datum in CellFrame.

Attributes

hash

The hash value of the decree sub-datum.

  • Type: str
type

The type of the decree sub-datum.

  • Type: str
subtype

The subtype of the decree sub-datum.

  • Type: str
created_at

The creation timestamp of the decree sub-datum.

  • Type: datetime
signs

List of cryptographic signatures associated with the decree.

Methods

__init__(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumDecree)

Initialize a new CFDatumDecree instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (DatumDecree) – The decree sub-datum object.

class pycfhelpers.node.datums.CFDatumAnchor(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumAnchor) ^CFDatumAnchor

Bases: CFSubDatum

Represents an anchor sub-datum in CellFrame.

Attributes

hash

The hash value of the anchor sub-datum.

  • Type: str
created_at

The creation timestamp of the anchor sub-datum.

  • Type: datetime
signs

List of cryptographic signatures associated with the anchor.

Methods

__init__(parent_datum: CFDatum | None, sub_datum: CellFrame.Common.DatumAnchor)

Initialize a new CFDatumAnchor instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (DatumAnchor) – The anchor sub-datum object.

class pycfhelpers.node.datums.CFDatumCustom(parent_datum: CFDatum | None, sub_datum: bytes) ^CFDatumCustom

Bases: CFSubDatum

Represents a custom sub-datum in CellFrame.

Attributes

hash

The hash value of the custom sub-datum.

  • Type: str
type

The type of the custom sub-datum.

  • Type: str
data

The raw data associated with the custom sub-datum, represented as hexadecimal string.

  • Type: str

Methods

__init__(parent_datum: CFDatum | None, sub_datum: bytes)

Initialize a new CFDatumCustom instance.

  • Parameters:
    • parent_datum (CFDatum | None) – The parent datum associated with the sub-datum, or None if there’s no parent datum.
    • sub_datum (bytes) – The raw data of the custom sub-datum.

pycfhelpers.node.gdb module


class pycfhelpers.node.gdb.GDBGroupBase(group) ^GDBGroupBase

Bases: ABC

Abstract base class representing a group in the GlobalDB.

Attributes

group

The name of the group.

  • Type: str

Methods

__init__(group)

Initialize a new GDBGroupBase instance.

  • Parameters: group (str) – The name of the group.
abstract set(key: str, value: Any)

Set the value associated with the given key in the group.

  • Parameters:
    • key (str) – The key.
    • value (Any) – The value.
  • Returns: True if successful, False otherwise.
  • Return type: bool
abstract get(key: str, net: CFNet, default=None)

Retrieve the value associated with the given key from the group.

  • Parameters:
    • key (str) – The key.
    • net (CFNet) – The CFNet instance.
    • default (Any | None) – The default value to return if the
    • None. (key is not found. Defaults to)
  • Returns: The value associated with the key, or the default value if the key is not found.
  • Return type: Any
abstract delete(key: str)

Delete the value associated with the given key from the group.

  • Parameters: key (str) – The key to delete.
  • Returns: True if successful, False otherwise.
  • Return type: bool
abstract group_list()

Retrieve the list of key-value pairs in the group.

  • Returns: The list of key-value pairs.
  • Return type: list[dict[str, Any]]
static add_to_white_list(net_name: str, group_mask: str, callback: Callable, callback_args: list)

Add the specified group to the GlobalDB white list.

  • Parameters:
    • net_name (str) – The name of the network.
    • group_mask (str) – The group mask pattern. Example: “raiden.emission-center.*”
    • callback (Callable) – The callback function.
    • callback_args (list) – The list of callback arguments.
  • Returns: None

class pycfhelpers.node.gdb.GDBGroup(group) ^GDBGroup

Bases: GDBGroupBase

Represents a group in the GlobalDB.

Attributes

group

The name of the group.

  • Type: str

Methods

set(key: str, value: bytes)

Set the value associated with the given key in the group.

  • Parameters:
    • key (str) – The key.
    • value (bytes) – The value.
  • Returns: True if successful, False otherwise.
  • Return type: bool
get(key: str, net: CFNet | None = None, default: D | None = None)

Retrieve the value associated with the given key from the group.

  • Parameters:
    • key (str) – The key.
    • net (CFNet | None) – The CFNet instance. Defaults to None.
    • default (D | None) – The default value to return if the key is not found. Defaults to None.
  • Returns: The value associated with the key, or the default value if the key is not found.
  • Return type: bytes | D
delete(key: str)

Delete the value associated with the given key from the group.

  • Parameters: key (str) – The key to delete.
  • Returns: True if successfull, overwise False.
  • Return type: bool
group_list()

Retrieve the list of key-value pairs in the group.

  • Returns: The list of key-value pairs.
  • Return type: list[dict[str, bytes]]

class pycfhelpers.node.gdb.SerializableObject(*args, **kwargs) ^SerializableObject

Bases: Protocol

Protocol representing a serializable object.

Methods

serialize()

Serialize the object to bytes.

  • Returns: The serialized object.
  • Return type: bytes
deserialize()

Deserialize the object.

  • Returns: The deserialized object.
  • Return type: object

class pycfhelpers.node.gdb.GDBGroupSign(group) ^GDBGroupSign

Bases: GDBGroupBase

Represents a group in the GlobalDB for signed data.

Attributes

group

The name of the group.

  • Type: str

Methods

set(key: str, value: SerializableObject)

Set the value associated with the given key in the group.

get(key: str, net: CFNet, default: D | None = None)

Retrieve the value associated with the given key from the group.

  • Parameters:
    • key (str) – The key.
    • net (CFNet) – The CFNet instance.
    • default (D | None) – The default value to return if the key is not found. Defaults to None.
  • Returns: The value associated with the key, or the default value if the key is not found.
  • Return type: SerializableObject | D
delete(key: str)

Delete the value associated with the given key from the group.

  • Parameters: key (str) – The key to delete.
  • Returns: True if successful, False otherwise.
  • Return type: bool
group_list()

Retrieve the list of key-value pairs in the group.

  • Returns: The list of key-value pairs.
  • Return type: list[dict[str, bytes]]

pycfhelpers.node.items module


class pycfhelpers.node.items.CFItem(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFItem

The item in CellFrame.

Attributes

type

The type of the item.

  • Type: str
net

The CFNet instance.

Methods

__init__(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet)

Initialize a new CFItem instance.

  • Parameters:
    • origin_item (OriginItemTypes) – The original item.
    • type (ItemTypes) – The type of the item.
    • net (CFNet) – The CFNet instance.

class pycfhelpers.node.items.CFTxIn(*args, **kwargs) ^CFTxIn

Bases: CFItem

The transaction input in CellFrame.

Attributes

prev_hash

The hash of the previous transaction.

  • Type: str
prev_idx

The index of the previous output in the previous transaction.

  • Type: int

Methods

__init__(*args, **kwargs)

Initialize a new CFTxIn instance.

class pycfhelpers.node.items.CFTxInCond(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxInCond

Bases: CFItem

The conditional transaction input in CellFrame.

class pycfhelpers.node.items.CFTxOut(*args, **kwargs) ^CFTxOut

Bases: CFItem

The transaction output in CellFrame.

Attributes

address

The address of the recipient.

  • Type: str
value

The value of the output.

  • Type: int

Methods

__init__(*args, **kwargs)

Initialize a new CFTxOut instance.

class pycfhelpers.node.items.CFTxOutCond(*args, **kwargs) ^CFTxOutCond

Bases: CFItem

The conditional transaction output in CellFrame.

Attributes

expires

The expiration timestamp of the conditional output.

  • Type: int
value

The value of the output.

  • Type: int
subtype

The subtype of the output.

  • Type: str

Methods

__init__(*args, **kwargs)

Initialize a new CFTxOutCond instance.

class pycfhelpers.node.items.CFTxPkey(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxPkey

Bases: CFItem

The transaction public key in CellFrame.

class pycfhelpers.node.items.CFTxSig(*args, **kwargs) ^CFTxSig

Bases: CFItem

The transaction signature in CellFrame.

Attributes

size

The size of the signature.

  • Type: int
sign

The cryptographic signature.

Methods

__init__(*args, **kwargs)

Initialize a new CFTxSig instance.

class pycfhelpers.node.items.CFTxToken(*args, **kwargs) ^CFTxToken

Bases: CFItem

The token transaction in CellFrame.

Attributes

ticker

The ticker symbol of the token.

  • Type: str
emission_hash

The hash of the token emission.

  • Type: str
emission_chain_id

The chain ID of the token emission.

  • Type: str

Methods

__init__(*args, **kwargs)

Initialize a new CFTxToken instance.

class pycfhelpers.node.items.CFTxReceipt(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxReceipt

Bases: CFItem

The transaction receipt in CellFrame.

class pycfhelpers.node.items.CFTxOutExt(*args, **kwargs) ^CFTxOutExt

Bases: CFItem

The extended transaction output in CellFrame.

Attributes

address

The address of the recipient.

  • Type: str
ticker

The ticker symbol of the token.

  • Type: str
value

The value of the output.

  • Type: int

Methods

__init__(*args, **kwargs)

Initialize a new CFTxOutExt instance.

class pycfhelpers.node.items.CFTxTSD(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxTSD

Bases: CFItem

The transaction TSD in CellFrame.

class pycfhelpers.node.items.CFTxOutCondSubtypeSrvPay(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxOutCondSubtypeSrvPay

Bases: CFItem

The server payment subtype of a conditional transaction output in CellFrame.

class pycfhelpers.node.items.CFTxOutCondSubtypeSrvXchange(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxOutCondSubtypeSrvXchange

Bases: CFItem

The server exchange subtype of a conditional transaction output in CellFrame.

class pycfhelpers.node.items.CFTxOutCondSubtypeSrvStakeLock(*args, **kwargs) ^CFTxOutCondSubtypeSrvStakeLock

Bases: CFItem

The server stake lock subtype of a conditional transaction output in CellFrame.

Attributes

unlock

The unlock time for the stake.

  • Type: int
value

The value of the stake.

  • Type: int
reinvest_percent

The reinvestment percentage for the stake.

  • Type: int

Methods

__init__(*args, **kwargs)

Initialize a new CFTxOutCondSubtypeSrvStakeLock instance.

class pycfhelpers.node.items.CFTxOutCondSubtypeSrvStakePosDelegate(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxOutCondSubtypeSrvStakePosDelegate

Bases: CFItem

The server stake pos delegate subtype of a conditional transaction output in CellFrame.

class pycfhelpers.node.items.CFTxVoting(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxVoting

Bases: CFItem

The transaction voting in CellFrame.

class pycfhelpers.node.items.CFTxVote(origin_item: OriginItemTypes, type: ItemTypes, net: CFNet) ^CFTxVote

Bases: CFItem

The transaction vote in CellFrame.

pycfhelpers.node.logging module


class pycfhelpers.node.logging.CFLog ^CFLog

Provides logging functionality for CellFrame.

Attributes

_logger

The logger instance.

Methods

__init__()

Initialize a new CFLog instance.

debug(message: str)

Log a message with the DEBUG level.

  • Parameters: message (str) – The debug message.
info(message: str)

Log a message with the INFO level

  • Parameters: message (str) – The informational message.
notice(message: str)

Log a message with the NOTICE level.

  • Parameters: message (str) – The notice message.
message(message: str)

Log a message with the MESSAGE level

  • Parameters: message (str) – The generic message.
dap(message: str)

Log a message with the DAP level

  • Parameters: message (str) – The DAP-specific message.
warning(message: str)

Log a message with the WARNING level.

  • Parameters: message (str) – The warning message.
att(message: str)

Log a message with the ATTENTION level.

  • Parameters: message (str) – The attention message.
error(message: str)

Log a message with the ERROR level.

  • Parameters: message (str) – The error message.
critical(message: str)

Log a message with the CRITICAL level

  • Parameters: message (str) – The critical error message.

pycfhelpers.node.mappings module


pycfhelpers.node.mappings.ItemMeta

alias of ItemMapping

class pycfhelpers.node.mappings.CFItemMapper ^CFItemMapper

Maps item types to corresponding CellFrame item wrapper classes.

Methods

static build(origin_item, net)

Build a CellFrame item based on the provided origin item.

  • Parameters:
    • origin_item – The original item.
    • net – The CFNet instance representing the network context.
  • Returns: The CellFrame item.
  • Return type: CFItem

pycfhelpers.node.mappings.SubDatumMeta

alias of SubDatumMapping

class pycfhelpers.node.mappings.CFSubDatumBuilder(type) ^CFSubDatumBuilder

Build sub-datums for CellFrame based on datum type.

Methods

__init__(type)

Initialize a new CFSubDatumBuilder instance.

  • Parameters: type (DatumTypes) – The type of datum for which sub-datum is being built. Should be one of the enumeration values from DatumTypes.
build(parent_datum)

Build a sub-datum for CellFrame based on the parent datum.

  • Parameters: parent_datum – The parent datum.
  • Returns: The sub-datum.
  • Return type: CFDatum

pycfhelpers.node.math module


pycfhelpers.node.net module


class pycfhelpers.node.net.NetFee(net: CFNet) ^NetFee

Represents network fee data.

Attributes

net

The CFNet object.

tx_fee

The transaction fee.

  • Type: str
tx_fee_addr

The transaction fee adress.

  • Type: int
validator_avg_fee

The average validator fee

  • Type: str
validator_max_fee

The maximum validator fee

  • Type: str
validator_min_fee

The minimum validator fee

  • Type: str
native_ticker

The native ticker of the network.

  • Type: str

Methods

__init__(net: CFNet)

Initialize NetFee object.

  • Parameters: net (CFNet) – The CFNet object.

class pycfhelpers.node.net.CFNetID(str_or_origin: str | CellFrame.Network.NetID) ^CFNetID

Represents the ID of a CellFrame network.

Attributes

_origin_net_id

The original NetID object.

  • Type: NetID

Methods

__init__(str_or_origin: str | CellFrame.Network.NetID)

Initialize CFNetID object.

  • Parameters: str_or_origin (Union[str, NetID]) – The string or NetID object.
property long

Return the long value of CFNetID.

  • Returns: The long value.
  • Return type: int

class pycfhelpers.node.net.CFNet(name_or_id: str | CFNetID) ^CFNet

Represents a CellFrame network.

Attributes

_origin_net

The original Net object.

  • Type: Net
name

The name of the network.

  • Type: str
address

The address of the network.

  • Type: str
main

The main chain of the network.

zerochain

The zerochain of the network.

fee_data

The fee data of the network.

Methods

__init__(name_or_id: str | CFNetID)

Initialize CFNet object.

  • Parameters: name_or_id (str | CFNetID) – The name or CFNetID object.
  • Raises: RuntimeError – If there is no network with such name and ID.
static active_nets()

Return the list of active CFNet objects.

  • Returns: The list of CFNet objects.
  • Return type: List[CFNet]
static net_id_from_wallet_str(wallet: str)

Return the net ID from the wallet string.

  • Parameters: wallet (str) – The wallet string.
  • Returns: The net ID.
  • Return type: int
property id : CFNetID

Return the CFNetID object.

  • Returns: The CFNetID object.
  • Return type: CFNetID
property chains : list[CFChain]

Return the list of CFChain objects.

  • Returns: The list of CFChain objects containing mainchain and zerochain.
  • Return type: List[CFChain]
property group_alias : str

Return the group alias.

  • Returns: The group alias.
  • Return type: str
get_ledger()

Return the CFLedger object.

  • Returns: The CFLedger object.
  • Return type: CFLedger
register_gdbsync_notification_callback(callback: Callable, *args, **kwargs)

Register the gdbsync notification callback.

  • Parameters: callback (Callable) – The callback function.
change_state(state: CFNetState)

Change the state of CFNet.

  • Parameters: state (CFNetState) – The state to change to.
  • Raises: NotImplemented – If there is no network with such name and ID.

class pycfhelpers.node.net.MempoolCallback(*args, **kwargs) ^MempoolCallback

Bases: Protocol

Represents the protocol for mempool callback functions.

Methods

__call__(op_code: Literal[‘a’, ‘d’], datum: CFDatum | datum_hash, *args, chain: CFChain, **kwargs)

Call the mempool callback function.

  • Parameters:
    • op_code (*Literal[“a”, “d”]) – The operation code.
    • datum (Union[CFDatum, datum_hash]) – The datum or datum hash.
    • chain (CFChain) – The CFChain object.

class pycfhelpers.node.net.CFChain(net: CFNet, chain_name: str) ^CFChain

Represents a CellFrame chain.

Attributes

net

The CFNet object.

type

The type of the chain.

  • Type: str
name

The name of the chain.

  • Type: str

Methods

__init__(net: CFNet, chain_name: str)

Initialize CFChain object.

  • Parameters:
    • net (CFNet) – The CFNet object.
    • chain_name (str) – The name of the chain.
  • Raises: RuntimeError – If there is no net with specified chain name.
get_atoms()

Return an iterator over CFBlock or CFEvent objects (atoms) contained in the chain.

  • Yields: Iterator[CFBlock | CFEvent] – An iterator over CFBlock or CFEvent objects.
  • Raises: TypeError – If Chain type neither ChainTypes.esbocs nor ChainTypes.dag_poa
get_datums(type: CFSubDatum | None = None)

Return an iterator over CFDatum objects (datums) in the chain, optionally filtered by type.

  • Parameters: type (CFSubDatum | None) – The subdatum type to filter by.
  • Yields: Iterator[CFDatum] – An iterator over CFDatum objects.
get_transactions()

Return an iterator over CFDatumTX objects representing transactions in the chain.

  • Yields: Iterator[CFDatumTX] – An iterator over CFDatumTX objects.
get_mempool()

Return the CFMempool object associated with the chain.

  • Returns: The CFMempool object.
  • Return type: CFMempool
register_mempool_notification_callback(callback: MempoolCallback, *args, **kwargs)

Register a callback function to be invoked when there are changes in the mempool.

register_atom_notification_callback(callback, *args, **kwargs)

Register a callback function to be invoked when there are changes in the chain’s atoms.

  • Parameters: callback – The callback function.

class pycfhelpers.node.net.CFLedger(net: CFNet, ledger: CellFrame.Chain.Ledger | None = None) ^CFLedger

Represents a CellFrame ledger.

Attributes

net

The CFNet object.

_origin_ledger

The original ledger object.

  • Type: Ledger

Methods

__init__(net: CFNet, ledger: CellFrame.Chain.Ledger | None = None)

Initialize CFLedger object.

  • Parameters:
    • net (CFNet) – The CFNet object.
    • ledger (Ledger | None) – The original ledger object. Defaults to None.
get_tx_ticker(datum: CFDatumTX)

Return the transaction ticker.

  • Parameters: datum (CFDatumTX) – The CFDatumTX object.
  • Returns: The transaction ticker or None if not found.
  • Return type: ticker | None
get_tx_ledger_rc(datum: CFDatumTX)

Return the transaction ledger Rc.

  • Parameters: datum (CFDatumTX) – The CFDatumTX object.
  • Returns: The transaction ledger RC or None if not found.
  • Return type: ledger_cache_rc | None
calc_address_balances(address: str)

Calculate the balances of an address.

  • Parameters: address (str) – The address.
  • Returns: A dictionary containing tickers and balances.
  • Return type: dict[ticker, str]
token_auth_signs_pkey_hashes(datum: CFDatum)

Return the public keys hashes of token declaration for provided emission.

  • Parameters: datum (CFDatum) – The CFDatum object.
  • Returns: A list of public key hashes.
  • Return type: List[str]
token_auth_signs_valid(datum: CFDatum)

Return the number of valid signature signs.

  • Parameters: datum (CFDatum) – The CFDatum object.
  • Returns: The number of valid signature signs.
  • Return type: int
token_auth_signs_total(datum: CFDatum)

Return the total number of signature signs.

  • Parameters: datum (CFDatum) – The CFDatum object.
  • Returns: The total number of signature signs.
  • Return type: int
has_emission(emission: CFDatumEmission)

Check if an emission exists in the ledger.

  • Parameters: emission (CFDatumEmission) – The CFDatumEmission object.
  • Returns: True if the emission exists, False otherwise.
  • Return type: bool
get_emission(emission_hash: str)

Return the emission from the ledger.

  • Parameters: emission_hash (str) – The hash of the emission.
  • Returns: The CFDatumEmission object.
  • Return type: CFDatumEmission
tx_by_hash(hash: str)

Return the transaction by its hash.

  • Parameters: hash (str) – The hash of the transaction.
  • Returns: The CFDatumTX object.
  • Return type: *CFDatumTX
  • Raises: ValueError – If the transaction with the specified hash is not found.*
register_ledger_tx_notification_callback(callback, *args, **kwargs)

Register the ledger transaction notification callback.

  • Parameters: callback – The callback function.

class pycfhelpers.node.net.CFMempool(chain: CFChain) ^CFMempool

Represents a CellFrame mempool.

Attributes

chain

The CFChain object.

Methods

__init__(chain: CFChain)

Initialize CFMempool object.

  • Parameters: chain (CFChain) – The CFChain object.
get_datums()

Return a list of CFDatum objects in the mempool.

  • Returns: A list of CFDatum objects.
  • Return type: List[CFDatum]
get_datum_from_bytes(value: bytes)

Return a CFDatum object from bytes.

  • Parameters: value (bytes) – The bytes value.
  • Returns: The CFDatum object or None if not found.
  • Return type: CFDatum | None
valid_signs_table()
reason()
remove(datum: CFDatum | CFSubDatum)

Remove a datum from the mempool.

  • Parameters: datum (CFDatum | CFSubDatum) – The CFDatum or CFSubDatum object.
  • Returns: True if removal is successful, False otherwise.
  • Return type: bool

pycfhelpers.node.notificators module


class pycfhelpers.node.notificators.CFNets(nets: list[CFNet]) ^CFNets

Represent a set of CFNet objects.

Attributes

nets

The list of CFNet objects.

Methods

__init__(nets: list[CFNet])

Initialize CFNets object.

  • Parameters: nets (List[CFNet]) – The list of CFNet objects.
mempool_notificator(*args, chain_name: Literal[‘main’, ‘zerochain’, ‘all’] = ‘all’, **kwargs)

Decorator for registering mempool notification callbacks.

  • Parameters:
    • *args – Positional arguments.
    • chain_name (Literal[“main”, “zerochain”, “all”]) – The chain name to register the callback. Defaults to “all”.
    • **kwargs – Keyword arguments.

Example

>>> @CFNets(NETS).mempool_notificator("to_args", chain_name="main", key="to_kwargs")
>>> def on_mempool_change(op_code: Literal["a", "d"], datum: CFDatum | datum_hash, *args, chain: 'CFChain', **kwargs):
>>>     pass

atom_notificator(*args, chain_name: Literal[‘main’, ‘zerochain’, ‘all’] = ‘all’, **kwargs)

Decorator for registering atom notification callbacks.

  • Parameters:
    • *args – Positional arguments.
    • chain_name (Literal[“main”, “zerochain”, “all”]) – The chain name to specify where to register the callback. Defaults to “all”.
    • **kwargs – Keyword arguments.

Example

>>> @CFNets(NETS).atom_notificator("to_args", chain_name="main", key="to_kwargs")
>>> def on_new_atom(atom: CFBlock | CFEvent, size: int, *args, chain: CFChain, **kwargs):
>>>     pass

gdbsync_notificator(*args, **kwargs)

Decorator for registering global database sync notification callbacks.

  • Parameters:
    • *args – Positional arguments.
    • **kwargs – Keyword arguments.

Example

>>> @CFNets(NETS).gdbsync_notificator("to_args", key="to_kwargs")
>>> def on_new_table_record(op_code, group, key, value, *args, net:CFNet, **kwargs):
>>>     pass

ledger_tx_notificator(*args, **kwargs)

Decorator for registering ledger transaction notification callbacks.

  • Parameters:
    • *args – Positional arguments.
    • **kwargs – Keyword arguments.

Example

>>> @CFNets(NETS).ledger_tx_notificator("to_args", key="to_kwargs")
>>> def on_new_ledger_transaction(ledger, tx, *args, net: CFNet, **kwargs):
>>>     pass

pycfhelpers.node.types module


class pycfhelpers.node.types.CFLedgerCacheResponse(value) ^CFLedgerCacheResponse

Bases: str, Enum

An enumeration.

Attributes

DAP_LEDGER_TX_CHECK_OK = ‘DAP_LEDGER_TX_CHECK_OK’
DAP_LEDGER_TX_CHECK_NULL_TX = ‘DAP_LEDGER_TX_CHECK_NULL_TX’
DAP_LEDGER_TX_CHECK_INVALID_TX_SIZE = ‘DAP_LEDGER_TX_CHECK_INVALID_TX_SIZE’
DAP_LEDGER_TX_ALREADY_CACHED = ‘DAP_LEDGER_TX_ALREADY_CACHED’
DAP_LEDGER_TX_CHECK_INVALID_TX_SIGN = ‘DAP_LEDGER_TX_CHECK_INVALID_TX_SIGN’
DAP_LEDGER_TX_CHECK_IN_EMS_ALREADY_USED = ‘DAP_LEDGER_TX_CHECK_IN_EMS_ALREADY_USED’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_IN_EMS_ALREADY_USED = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_IN_EMS_ALREADY_USED’
DAP_LEDGER_TX_CHECK_EMISSION_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_EMISSION_NOT_FOUND’
DAP_LEDGER_TX_CHECK_TX_NO_VALID_INPUTS = ‘DAP_LEDGER_TX_CHECK_TX_NO_VALID_INPUTS’
DAP_LEDGER_TX_CHECK_TICKER_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_TICKER_NOT_FOUND’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_INVALID_TOKEN = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_INVALID_TOKEN’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_NO_OUT_COND_FOR_IN_EMS = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_NO_OUT_COND_FOR_IN_EMS’
DAP_LEDGER_TX_CHECK_MULT256_OVERFLOW_EMS_LOCKED_X_RATE = ‘DAP_LEDGER_TX_CHECK_MULT256_OVERFLOW_EMS_LOCKED_X_RATE’
DAP_LEDGER_TX_CHECK_NO_OUT_EXT_FOR_GIRDLED_IN_EMS = ‘DAP_LEDGER_TX_CHECK_NO_OUT_EXT_FOR_GIRDLED_IN_EMS’
DAP_LEDGER_TX_CHECK_NO_OUT_ITEMS_FOR_BASE_TX = ‘DAP_LEDGER_TX_CHECK_NO_OUT_ITEMS_FOR_BASE_TX’
DAP_LEDGER_TX_CHECK_TOKEN_EMS_VALUE_EXEEDS_CUR_SUPPLY = ‘DAP_LEDGER_TX_CHECK_TOKEN_EMS_VALUE_EXEEDS_CUR_SUPPLY’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_UNEXPECTED_VALUE = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_UNEXPECTED_VALUE’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_TICKER_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_TICKER_NOT_FOUND’
DAP_LEDGER_TX_CHECK_STAKE_LOCK_OTHER_TICKER_EXPECTED = ‘DAP_LEDGER_TX_CHECK_STAKE_LOCK_OTHER_TICKER_EXPECTED’
DAP_LEDGER_TX_CHECK_OUT_ITEM_ALREADY_USED = ‘DAP_LEDGER_TX_CHECK_OUT_ITEM_ALREADY_USED’
DAP_LEDGER_TX_CHECK_PREV_TX_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_PREV_TX_NOT_FOUND’
DAP_LEDGER_TX_CHECK_PREV_OUT_ITEM_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_PREV_OUT_ITEM_NOT_FOUND’
DAP_LEDGER_TX_CHECK_PKEY_HASHES_DONT_MATCH = ‘DAP_LEDGER_TX_CHECK_PKEY_HASHES_DONT_MATCH’
DAP_LEDGER_TX_CHECK_PREV_OUT_ALREADY_USED_IN_CURRENT_TX = ‘DAP_LEDGER_TX_CHECK_PREV_OUT_ALREADY_USED_IN_CURRENT_TX’
DAP_LEDGER_TX_CHECK_NO_VERIFICATOR_SET = ‘DAP_LEDGER_TX_CHECK_NO_VERIFICATOR_SET’
DAP_LEDGER_TX_CHECK_VERIFICATOR_CHECK_FAILURE = ‘DAP_LEDGER_TX_CHECK_VERIFICATOR_CHECK_FAILURE’
DAP_LEDGER_TX_CHECK_PREV_TICKER_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_PREV_TICKER_NOT_FOUND’
DAP_LEDGER_TX_CHECK_PREV_TOKEN_NOT_FOUND = ‘DAP_LEDGER_TX_CHECK_PREV_TOKEN_NOT_FOUND’
DAP_LEDGER_PERMISSION_CHECK_FAILED = ‘DAP_LEDGER_PERMISSION_CHECK_FAILED’
DAP_LEDGER_TX_CHECK_SUM_INS_NOT_EQUAL_SUM_OUTS = ‘DAP_LEDGER_TX_CHECK_SUM_INS_NOT_EQUAL_SUM_OUTS’
DAP_LEDGER_TX_CHECK_REWARD_ITEM_ALREADY_USED = ‘DAP_LEDGER_TX_CHECK_REWARD_ITEM_ALREADY_USED’
DAP_LEDGER_TX_CHECK_REWARD_ITEM_ILLEGAL = ‘DAP_LEDGER_TX_CHECK_REWARD_ITEM_ILLEGAL’

Methods

__format__(format_spec)

Returns format using actual value type unless __str__ has been overridden.

class pycfhelpers.node.types.CFNetState(value) ^CFNetState

Bases: str, Enum

An enumeration.

Attributes

NET_STATE_OFFLINE = ‘NET_STATE_OFFLINE’
NET_STATE_ONLINE = ‘NET_STATE_ONLINE’

Methods

__format__(format_spec)

Returns format using actual value type unless __str__ has been overridden.

class pycfhelpers.node.types.TSD(value) ^TSD

Bases: Enum

An enumeration.

Attributes

TYPE_UNKNOWN = 0
TYPE_TIMESTAMP = 1
TYPE_ADDRESS = 2
TYPE_VALUE = 3
TYPE_CONTRACT = 4
TYPE_NET_ID = 5
TYPE_BLOCK_NUM = 6
TYPE_TOKEN_SYM = 7
TYPE_OUTER_TX_HASH = 8
TYPE_SOURCE = 9
TYPE_SOURCE_SUBTYPE = 10
TYPE_DATA = 11
TYPE_SENDER = 12
TYPE_TOKEN_ADDRESS = 13
TYPE_SIGNATURS = 14
TYPE_UNIQUE_ID = 15
TYPE_BASE_TX_HASH = 16
TYPE_EMISSION_CENTER_UID = 17
TYPE_EMISSION_CENTER_VER = 18

pycfhelpers.common package


Submodules


pycfhelpers.common.parsers module


pycfhelpers.common.parsers.parse_cf_v1_address(address: str)

Parse a CF v1 format address and returns its various components.

  • Parameters: address (str) – The CF v1 address string to parse. It should be a Base58 encoded string.
  • Returns: A tuple containing the following components: : - version (int): The address version.
    • net_id (int): The ID of the network to which this address belongs.
    • sign_id (int): The signature ID this wallet uses.
    • public_hash (bytes): The public hash. The main identifier of the wallet on the network.
    • summary_hash (bytes): The summary hash.
    • control_hash (bytes): The control hash.
  • Return type: *tuple
  • Raises: ValueError – If the address is invalid.*

pycfhelpers.common.types module


class pycfhelpers.common.types.ChainTypes(value) ^ChainTypes

Bases: str, Enum

An enumeration.

Attributes

esbocs = ‘esbocs’
dag_poa = ‘dag_poa’

Methods

__format__(format_spec)

Returns format using actual value type unless __str__ has been overridden.

class pycfhelpers.common.types.DatumTypes(value) ^DatumTypes

Bases: str, Enum

An enumeration.

Attributes

DATUM_TX = ‘DATUM_TX’
DATUM_TOKEN_DECL = ‘DATUM_TOKEN_DECL’
DATUM_TOKEN_EMISSION = ‘DATUM_TOKEN_EMISSION’
DATUM_CUSTOM = ‘DATUM_CUSTOM’
DATUM_DECREE = ‘DATUM_DECREE’
DATUM_ANCHOR = ‘DATUM_ANCHOR’

Methods

__format__(format_spec)

Returns format using actual value type unless __str__ has been overridden.

class pycfhelpers.common.types.ItemTypes(value) ^ItemTypes

Bases: str, Enum

An enumeration.

Attributes

TX_ITEM_TYPE_IN = ‘TX_ITEM_TYPE_IN’
TX_ITEM_TYPE_IN_COND = ‘TX_ITEM_TYPE_IN_COND’
TX_ITEM_TYPE_OUT = ‘TX_ITEM_TYPE_OUT’
TX_ITEM_TYPE_OUT_COND = ‘TX_ITEM_TYPE_OUT_COND’
TX_ITEM_TYPE_PKEY = ‘TX_ITEM_TYPE_PKEY’
TX_ITEM_TYPE_SIG = ‘TX_ITEM_TYPE_SIG’
TX_ITEM_TYPE_IN_EMS = ‘TX_ITEM_TYPE_IN_EMS’
TX_ITEM_TYPE_RECEIPT = ‘TX_ITEM_TYPE_RECEIPT’
TX_ITEM_TYPE_OUT_EXT = ‘TX_ITEM_TYPE_OUT_EXT’
TX_ITEM_TYPE_TSD = ‘TX_ITEM_TYPE_TSD’
TX_ITEM_TYPE_VOTING = ‘TX_ITEM_TYPE_VOTING’
TX_ITEM_TYPE_VOTE = ‘TX_ITEM_TYPE_VOTE’
DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_PAY = ‘DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_PAY’
DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE_LOCK = ‘DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE_LOCK’
DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_XCHANGE = ‘DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_XCHANGE’
DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE_POS_DELEGATE = ‘DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE_POS_DELEGATE’

Methods

__format__(format_spec)

Returns format using actual value type unless __str__ has been overridden.