kaspa_rpc_core/lib.rs
1//! # RPC Core
2//!
3//! This crate provides foundational primitives used in Rusty Kaspa node RPC subsystem.
4//! These include the main [`RpcApi`](api::rpc::RpcApi) trait, [`RpcApiOps`](crate::api::ops::RpcApiOps)
5//! enum used in RPC method dispatching, and various data structures used in RPC method arguments.
6//!
7//! This crate acts as a foundation for [`kaspa_grpc_client`](https://docs.rs/kaspa_grpc_client) and
8//! [`kaspa_wrpc_client`](https://docs.rs/kaspa_wrpc_client) crates, which provide gRPC and WebSocket
9//! RPC client implementations. This crate is also used by WASM bindings to provide [WASM RpcClient
10//! implementation](https://docs.rs/kaspa-wrpc-client/latest/kaspa_wrpc_client/wasm/struct.RpcClient.html)
11//! (based on wRPC).
12//!
13
14// This attribute is required by BorshSerialize/Deserialize
15#![recursion_limit = "256"]
16
17pub mod api;
18pub mod convert;
19pub mod error;
20pub mod model;
21pub mod notify;
22pub mod wasm;
23
24pub mod prelude {
25 //! Re-exports of the most commonly used types and traits in this crate.
26 pub use super::api::notifications::*;
27 pub use super::model::script_class::*;
28 pub use super::model::*;
29}
30
31pub use api::notifications::*;
32pub use convert::utxo::*;
33pub use error::*;
34pub use model::script_class::*;
35pub use model::*;