[−][src]Module sc_service::client
Substrate Client and associated logic.
The Client
is one of the most important components of Substrate. 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 sc-client-db
crate.
The latter typically requires passing one of:
- A
LocalCallExecutor
running the runtime locally. - A
RemoteCallExecutor
that 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 | Substrate 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. |