0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-04 10:07:27 -05:00
bitcoin-bitcoin-core/src/node
Russell Yanofsky 5c5d0b6264 Add FoundBlock.found member
This change lets IPC serialization code handle FoundBlock arguments more
simply and efficiently. Without this change there was no way to
determine from a FoundBlock object whether a block was found or not. So
in order to correctly implement behavior of leaving FoundBlock output
variables unmodified when a block was not found, IPC code would have to
read preexisting output variable values from the local process, send
them to the remote process, receive output values back from the remote
process, and save them to output variables unconditionally. With
FoundBlock.found method, the process is simpler. There's no need to read
or send preexisting local output variable values, just to read final
output values from the remote process and set them conditionally if the
block was found.
2021-06-10 09:58:45 -05:00
..
blockstorage.cpp style: Add { } to multi-line if 2021-04-27 10:36:41 +02:00
blockstorage.h style: Add { } to multi-line if 2021-04-27 10:36:41 +02:00
coin.cpp node: Avoid potential UB by asserting assumptions 2021-03-30 13:52:22 -04:00
coin.h node: Use mempool from node context instead of global 2019-12-05 14:22:05 -05:00
coinstats.cpp index, rpc: Add use_index option for gettxoutsetinfo 2021-04-19 21:11:33 +02:00
coinstats.h index, rpc: Add use_index option for gettxoutsetinfo 2021-04-19 21:11:33 +02:00
context.cpp [net] Construct addrman outside connman 2021-03-20 10:24:36 +00:00
context.h multiprocess: Add bitcoin-node process spawning support 2021-04-23 03:02:50 -05:00
interfaces.cpp Add FoundBlock.found member 2021-06-10 09:58:45 -05:00
psbt.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
psbt.h refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
README.md doc: Remove irrelevant link to GitHub 2021-04-06 09:34:21 +02:00
transaction.cpp [net processing] Add internal _RelayTransactions() 2021-05-04 09:31:03 +01:00
transaction.h scripted-diff: Use [[nodiscard]] (C++17) instead of NODISCARD 2020-11-26 09:05:59 +00:00
ui_interface.cpp gui: change combiner for signals to optional_last_value 2020-07-01 21:40:51 +08:00
ui_interface.h scripted-diff: Move ui_interface to the node lib 2020-06-27 11:49:28 -04:00
utxo_snapshot.h validation: remove nchaintx from assumeutxo metadata 2021-04-26 13:22:37 -04:00

src/node/

The src/node/ directory contains code that needs to access node state (state in CChain, CBlockIndex, CCoinsView, CTxMemPool, and similar classes).

Code in src/node/ is meant to be segregated from code in src/wallet/ and src/qt/, to ensure wallet and GUI code changes don't interfere with node operation, to allow wallet and GUI code to run in separate processes, and to perhaps eventually allow wallet and GUI code to be maintained in separate source repositories.

As a rule of thumb, code in one of the src/node/, src/wallet/, or src/qt/ directories should avoid calling code in the other directories directly, and only invoke it indirectly through the more limited src/interfaces/ classes.

This directory is at the moment sparsely populated. Eventually more substantial files like src/validation.cpp and src/txmempool.cpp might be moved there.