mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-15 14:23:04 +02:00
[docs] Document src subdirectories and different libraries
This commit is contained in:
22
src/node/README.md
Normal file
22
src/node/README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# 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/`](../wallet/) and [`src/qt/`](../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/`](../wallet/), or [`src/qt/`](../qt/) directories should avoid
|
||||
calling code in the other directories directly, and only invoke it indirectly
|
||||
through the more limited [`src/interfaces/`](../interfaces/) classes.
|
||||
|
||||
The [`src/node/`](./) directory is a new directory introduced in
|
||||
[#14978](https://github.com/bitcoin/bitcoin/pull/14978) and at the moment is
|
||||
sparsely populated. Eventually more substantial files like
|
||||
[`src/validation.cpp`](../validation.cpp) and
|
||||
[`src/txmempool.cpp`](../txmempool.cpp) might be moved there.
|
Reference in New Issue
Block a user