add block_time and block_time_ms

This commit is contained in:
wood
2025-07-25 15:32:05 +08:00
parent 566c2fda0d
commit 3b89ca381c
11 changed files with 84 additions and 61 deletions
@@ -1,3 +1,4 @@
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
@@ -419,9 +420,10 @@ impl EventParser for BonkEventParser {
inner_instruction: &UiCompiledInstruction,
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_inner_instruction(inner_instruction, signature, slot)
.parse_events_from_inner_instruction(inner_instruction, signature, slot, block_time)
}
fn parse_events_from_instruction(
@@ -430,9 +432,10 @@ impl EventParser for BonkEventParser {
accounts: &[Pubkey],
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_instruction(instruction, accounts, signature, slot)
.parse_events_from_instruction(instruction, accounts, signature, slot, block_time)
}
fn should_handle(&self, program_id: &Pubkey) -> bool {
@@ -1,3 +1,4 @@
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
@@ -224,9 +225,10 @@ impl EventParser for PumpFunEventParser {
inner_instruction: &UiCompiledInstruction,
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_inner_instruction(inner_instruction, signature, slot)
.parse_events_from_inner_instruction(inner_instruction, signature, slot, block_time)
}
fn parse_events_from_instruction(
@@ -235,9 +237,10 @@ impl EventParser for PumpFunEventParser {
accounts: &[Pubkey],
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_instruction(instruction, accounts, signature, slot)
.parse_events_from_instruction(instruction, accounts, signature, slot, block_time)
}
fn should_handle(&self, program_id: &Pubkey) -> bool {
@@ -1,3 +1,4 @@
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
@@ -360,9 +361,10 @@ impl EventParser for PumpSwapEventParser {
inner_instruction: &UiCompiledInstruction,
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_inner_instruction(inner_instruction, signature, slot)
.parse_events_from_inner_instruction(inner_instruction, signature, slot, block_time)
}
fn parse_events_from_instruction(
@@ -371,9 +373,10 @@ impl EventParser for PumpSwapEventParser {
accounts: &[Pubkey],
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_instruction(instruction, accounts, signature, slot)
.parse_events_from_instruction(instruction, accounts, signature, slot, block_time)
}
fn should_handle(&self, program_id: &Pubkey) -> bool {
@@ -1,3 +1,4 @@
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
@@ -144,9 +145,10 @@ impl EventParser for RaydiumClmmEventParser {
inner_instruction: &UiCompiledInstruction,
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_inner_instruction(inner_instruction, signature, slot)
.parse_events_from_inner_instruction(inner_instruction, signature, slot, block_time)
}
fn parse_events_from_instruction(
@@ -155,9 +157,10 @@ impl EventParser for RaydiumClmmEventParser {
accounts: &[Pubkey],
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_instruction(instruction, accounts, signature, slot)
.parse_events_from_instruction(instruction, accounts, signature, slot, block_time)
}
fn should_handle(&self, program_id: &Pubkey) -> bool {
@@ -1,3 +1,4 @@
use prost_types::Timestamp;
use solana_sdk::{instruction::CompiledInstruction, pubkey::Pubkey};
use solana_transaction_status::UiCompiledInstruction;
@@ -133,9 +134,10 @@ impl EventParser for RaydiumCpmmEventParser {
inner_instruction: &UiCompiledInstruction,
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_inner_instruction(inner_instruction, signature, slot)
.parse_events_from_inner_instruction(inner_instruction, signature, slot, block_time)
}
fn parse_events_from_instruction(
@@ -144,9 +146,10 @@ impl EventParser for RaydiumCpmmEventParser {
accounts: &[Pubkey],
signature: &str,
slot: u64,
block_time: Option<Timestamp>,
) -> Vec<Box<dyn UnifiedEvent>> {
self.inner
.parse_events_from_instruction(instruction, accounts, signature, slot)
.parse_events_from_instruction(instruction, accounts, signature, slot, block_time)
}
fn should_handle(&self, program_id: &Pubkey) -> bool {