Expand description

Tendermint RPC definitions and types.

Client

This crate optionally provides access to different types of RPC client functionality and different client transports based on which features you select when using it.

Several client-related features are provided at present:

  • http-client - Provides HttpClient, which is a basic RPC client that interacts with remote Tendermint nodes via JSON-RPC over HTTP or HTTPS. This client does not provide event::Event subscription functionality. See the Tendermint RPC for more details.
  • websocket-client - Provides WebSocketClient, which provides full client functionality, including general RPC functionality as well as event::Event subscription functionality. Can be used over secure (wss://) and unsecure (ws://) connections.

Mock Clients

Mock clients are included when either of the http-client or websocket-client features are enabled to aid in testing. This includes MockClient, which implements both Client and SubscriptionClient traits.

Re-exports

pub use error::Error;
pub use request::Request;
pub use request::SimpleRequest;
pub use response::Response;
pub use response_error::Code;
pub use response_error::ResponseError;

Modules

Tendermint JSON-RPC endpoints

JSON-RPC error types

RPC subscription event-related data structures.

Structured querying for the Tendermint RPC event subscription system.

JSON-RPC requests

JSON-RPC response types

Structs

A JSON-RPC/HTTP Tendermint RPC client (implements crate::Client).

A URL limited to use with HTTP clients.

A mock client implementation for use in testing.

Provides a simple MockRequestMatcher implementation that simply maps requests with specific methods to responses.

A page number in paginated RPC responses.

The number of items to return per page, for paginated RPC responses.

An interface that can be used to asynchronously receive Events for a particular subscription.

A uniform resource locator (URL), with support for only those schemes/protocols supported by Tendermint RPC clients.

JSON-RPC version

Tendermint RPC client that provides access to all RPC functionality (including Event subscription) over a WebSocket connection.

Drives the WebSocket connection for a WebSocketClient instance.

A URL limited to use with WebSocket clients.

The configuration for WebSocket connection.

Enums

JSON-RPC ID: request-specific identifier

JSON-RPC request methods.

Ordering of paginated RPC responses.

Pagination control for those RPC client methods supporting pagination.

The various schemes supported by Tendermint RPC clients.

Traits

Provides lightweight access to the Tendermint RPC. It gives access to all endpoints with the exception of the event subscription-related ones.

A trait required by the MockClient that allows for different approaches to mocking responses for specific requests.

A client that exclusively provides Event subscription capabilities, without any other RPC method support.