Module tetcore_test_client::client [−][src]
Tetcore Client and associated logic.
The Client is one of the most important components of Tetcore. It mainly comprises two
parts:
- A database containing the blocks and chain state, generally referred to as
the
Backend. - A runtime environment, generally referred to as the
Executor.
Initialization
Creating a Client is done by calling the new method and passing to it a
Backend and an
Executor.
The former is typically provided by the tc-client-db crate.
The latter typically requires passing one of:
- A
LocalCallExecutorrunning the runtime locally. - A
RemoteCallExecutorthat will ask a third-party to perform the executions. - A
RemoteOrLocalCallExecutor, combination of the two.
Additionally, the fourth generic parameter of the Client is a marker type representing
the ways in which the runtime can interface with the outside. Any code that builds a Client
is responsible for putting the right marker.
Modules
| genesis | Tool for creating the genesis block. |
| light | Light client utilities. |
Structs
| Client | Tetcore Client |
| ClientConfig | Relevant client configuration items relevant for the client. |
| LocalCallExecutor | Call executor that executes methods locally, querying all required data from local backend. |
Functions
| new_in_mem | Create an instance of in-memory client. |
| new_with_backend | Create a client with the explicitly provided backend. This is useful for testing backend implementations. |