Package bitcoinunlimited. libbitcoincash
Types
Spend a coin (aka UTXO, prevout) in a transaction
Output of a bitcoin transaction
Bitcoin transaction
Helper class that saves/loads data needed by the Bip44Wallet
Header of a block for bitcoin-family cryptocurrencies
An array of block hashes, starting at the current block, and ending at the genesis block. The creator can skip blocks, populating whatever hashes he feels is most likely to identify a specific chain, closest to the splitoff point. Typically, some kind of exponential backoff is used. For example: The next 10 hashes are the previous 10 blocks (gap 1). After these, the gap is multiplied by 2 for each hash, until the genesis block is added
Call the passed function after this function has been called 'count times
Identify the cryptocurrency/blockchain.
indicates that a member field or function should be displayed in the command line interface @param display Provides a user "capability" level to indicate more esoteric or dangerous options @param help Provides a short description of the field @param delve Should this member be displayed recursively? If delve recursive depth, then the field will be fully shown
This class provides implementations to for functions that are common to many blockchains and wallet types
Open a JSON-RPC over TCP connection to an Electrum X server
The reply doesn't adhere to the protocol in some manner
The request was not accepted by the server
A passed entity was not found (transaction, block, scripthash, etc).
Electrum server never replied
This class behaves like a function and its sole purpose is to wrap a bytearray into another class so that when we serialize it we know not to include the length
Helper class that glues a wallet to a blockchain
A block that contains a subset of the total number of transactions, and includes a merkle proof that the provided transactions are part of the block
Represents a "standard" P2PKH payment destination
Represents an arbitrary P2SH destination
Represents a P2PK (pay to public key) destination wrapped in a P2SH script
A destination for payments. This includes all the information needed to send and spend from this destination. It is often assumed that Bitcoin addresses are payment destinations, but this is not true. You really need an output script, and also (if P2SH) a redeem script. The reason why P2PKH addresses "work" as payment destinations is because they imply a specific script. But "baking in" this assumption will make the wallet a lot less flexible.
A Bitcoin Cash contract is a designed to allow maximum arbitrary data payload in the input spending from the contract
Track the history of individual payments (inputs or outputs), made by this wallet
This class tracks possible blockchain nodes -- we have learned about this node from some source but the data may not be accurate
A class that encapsulates the idea that when an object changes, other entities should be notified of the change. This is extremely useful in GUI development since onscreen object can be made to "automatically" update based on changes to the "Reactive" underlying object that is being displayed.
If a block is rewound, this is how to undo it. Also constitutes all the data needed to show transaction history.
Let's be blunt: Kotlin enums are unusable
This class behaves like a function and its sole purpose is to wrap a bytearray into another class so that when we serialize it we know to include the length
Functions
Return the Bip44 address number based on this blockchain
Create a BigDecimal that is appropriate for currency mathematics (with lots of decimal places)
Delete all block headers in the database -- used in regression testing
Delete a wallet on disk
Deserialize any object that is nullable, but prepending a byte indicating whether this object is null or not. This API should only be used for DISK serialization because this nullable technique is not part of the network protocol
Connects a gui switch to a preference DB item. To be called in onCreate. Returns the current state of the preference item. Uses setOnCheckedChangeListener, so you cannot call that yourself. Instead pass your listener into this function
Connects a gui text entry field to a preference DB item. To be called in onCreate