Expand description
Solana chain support.
Implements structured extraction of Solana blocks, transactions, token
transfers, and account activity from JSON-RPC getBlock responses.
§Two Approaches
Custom extraction — implement Plugin::on_raw and parse raw JSON yourself:
use quicknode_cascade::solana::{Plugin, PluginFuture};
struct MyParser;
impl Plugin for MyParser {
fn name(&self) -> &'static str { "my-parser" }
fn on_raw<'a>(&'a self, slot: u64, raw: &'a serde_json::Value) -> PluginFuture<'a> {
Box::pin(async move {
// parse raw JSON however you need
Ok(())
})
}
}Built-in extraction — use Plugin::on_block, Plugin::on_transaction, etc.
and let the framework extract structured data for you.
Both can be combined. extract_block() is also exposed as a public utility
you can call from on_raw if you want the framework’s extraction as a starting point.
Modules§
- prelude
- Re-exports for convenience.
use quicknode_cascade::solana::prelude::*;
Structs§
- Account
Activity Data - SOL balance change data passed to
Plugin::on_account_activity. - Block
Data - Block-level data passed to
Plugin::on_block. - Slot
Extract - All extracted data for a single slot.
- Token
Transfer Data - Token balance change data passed to
Plugin::on_token_transfer. - Transaction
Data - Transaction-level data passed to
Plugin::on_transaction.
Traits§
- Plugin
- Observe Solana block and transaction events.
Functions§
- extract_
block - Extract structured data from a raw
getBlockJSON-RPC response.
Type Aliases§
- Plugin
Future - The return type for all plugin hooks. A boxed async future that returns
Result<(), Box<dyn Error>>. UseBox::pin(async move { ... })to create one.