alloy-json-rpc

Crates.ioalloy-json-rpc
lib.rsalloy-json-rpc
version
sourcesrc
created_at2023-11-15 19:36:19.389089
updated_at2024-12-10 11:14:23.924227
descriptionCore types for JSON-RPC 2.0 clients
homepagehttps://github.com/alloy-rs/alloy
repositoryhttps://github.com/alloy-rs/alloy
max_upload_size
id1036740
Cargo.toml error:TOML parse error at line 23, column 1 | 23 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
core (github:alloy-rs:core)

documentation

README

alloy-json-rpc

Core types for JSON-RPC 2.0 clients.

This crate includes data types and traits for JSON-RPC 2.0 requests and responses, targeted at RPC client usage.

Core Model

A JSON-RPC 2.0 request is a JSON object containing an ID, a method name, and an arbitrary parameters object. The parameters object may be omitted if empty.

Any object that may be Serialized and Cloned may be used as RPC Parameters.

Requests are sent via transports (see alloy-transports). This results in 1 of 3 outcomes, captured in the RpcResult<E> enum:

  • Ok(Response) - The request was successful, and the server returned a response.
  • ErrResp(ErrorPayload) - The request was received by the server. Server-side handling was unsuccessful, and the server returned an error response. This indicates a server-side error.
  • Err(E) - Some client-side error prevented the request from being received by the server, or prevented the response from being processed. This indicates a client-side or transport-related error.

Limitations

  • This library does not support borrowing response data from the deserializer. This is intended to simplify client implementations, but makes the library poorly suited for use in a high-performance server.
Commit count: 1340

cargo fmt