refactor(pumpswap): refactor account handling logic in logs_parser and optimize account data extraction

This commit is contained in:
sgxiang
2025-06-10 00:54:42 +08:00
parent 94c2a22ab7
commit 651789b553
+5 -1
View File
@@ -90,7 +90,7 @@ fn current_timestamp() -> i64 {
}
/// 从指令中解析PumpSwap指令
pub fn parse_pumpswap_instruction(instruction: &CompiledInstruction, accounts: &[Pubkey]) -> Option<PumpSwapInstruction> {
pub fn parse_pumpswap_instruction(instruction: &CompiledInstruction, _accounts: &[Pubkey]) -> Option<PumpSwapInstruction> {
if instruction.data.len() < 8 {
return None;
}
@@ -98,6 +98,10 @@ pub fn parse_pumpswap_instruction(instruction: &CompiledInstruction, accounts: &
let discriminator = &instruction.data[..8];
let data = &instruction.data[8..];
let accounts: Vec<Pubkey> = instruction.accounts.iter()
.map(|&idx| _accounts[idx as usize])
.collect();
match discriminator {
d if d == discriminators::BUY_IX => {
// buy指令参数: base_amount_out: u64, max_quote_amount_in: u64