pub struct PumpFunTradeEvent {Show 68 fields
pub metadata: EventMetadata,
pub mint: Pubkey,
pub sol_amount: u64,
pub token_amount: u64,
pub is_buy: bool,
pub is_created_buy: bool,
pub user: Pubkey,
pub timestamp: i64,
pub virtual_sol_reserves: u64,
pub virtual_token_reserves: u64,
pub real_sol_reserves: u64,
pub real_token_reserves: u64,
pub fee_recipient: Pubkey,
pub fee_basis_points: u64,
pub fee: u64,
pub creator: Pubkey,
pub creator_fee_basis_points: u64,
pub creator_fee: u64,
pub track_volume: bool,
pub total_unclaimed_tokens: u64,
pub total_claimed_tokens: u64,
pub current_sol_volume: u64,
pub last_update_timestamp: i64,
pub ix_name: String,
pub mayhem_mode: bool,
pub cashback_fee_basis_points: u64,
pub cashback: u64,
pub buyback_fee_basis_points: u64,
pub buyback_fee: u64,
pub shareholders: Vec<PumpFeesShareholder>,
pub quote_mint: Pubkey,
pub quote_amount: u64,
pub virtual_quote_reserves: u64,
pub real_quote_reserves: u64,
pub is_cashback_coin: bool,
pub amount: u64,
pub max_sol_cost: u64,
pub min_sol_output: u64,
pub spendable_sol_in: u64,
pub spendable_quote_in: u64,
pub min_tokens_out: u64,
pub token_balance: Option<u64>,
pub sol_balance: Option<u64>,
pub global: Pubkey,
pub bonding_curve: Pubkey,
pub bonding_curve_v2: Pubkey,
pub associated_bonding_curve: Pubkey,
pub associated_user: Pubkey,
pub system_program: Pubkey,
pub token_program: Pubkey,
pub quote_token_program: Pubkey,
pub associated_token_program: Pubkey,
pub creator_vault: Pubkey,
pub associated_quote_fee_recipient: Pubkey,
pub buyback_fee_recipient: Pubkey,
pub associated_quote_buyback_fee_recipient: Pubkey,
pub associated_quote_bonding_curve: Pubkey,
pub associated_quote_user: Pubkey,
pub associated_creator_vault: Pubkey,
pub sharing_config: Pubkey,
pub event_authority: Pubkey,
pub program: Pubkey,
pub global_volume_accumulator: Pubkey,
pub user_volume_accumulator: Pubkey,
pub associated_user_volume_accumulator: Pubkey,
pub fee_config: Pubkey,
pub fee_program: Pubkey,
pub account: Option<Pubkey>,
}Expand description
PumpFun Trade Event - 基于官方IDL定义
字段来源标记:
- EVENT: 来自原始IDL事件定义,由程序日志直接解析获得
- INSTRUCTION: 来自指令解析,用于补充事件缺失的上下文信息
Fields§
§metadata: EventMetadata§mint: Pubkey§sol_amount: u64§token_amount: u64§is_buy: bool§is_created_buy: bool§user: Pubkey§timestamp: i64§virtual_sol_reserves: u64§virtual_token_reserves: u64§real_sol_reserves: u64§real_token_reserves: u64§fee_recipient: Pubkey§fee_basis_points: u64§fee: u64§creator: Pubkey§creator_fee_basis_points: u64§creator_fee: u64§track_volume: bool§total_unclaimed_tokens: u64§total_claimed_tokens: u64§current_sol_volume: u64§last_update_timestamp: i64§ix_name: StringInstruction name as emitted by the program, for example "buy", "buy_v2",
"sell", "sell_v2", "buy_exact_sol_in", or "buy_exact_quote_in_v2".
mayhem_mode: bool与链上 / Explorer tradeEvent 中 mayhemMode 一致(gRPC 日志解析填充;勿用 fee 地址推断)。
cashback_fee_basis_points: u64Cashback fee basis points (PUMP_CASHBACK_README)
cashback: u64Cashback amount (PUMP_CASHBACK_README)
buyback_fee_basis_points: u64§buyback_fee: u64§quote_mint: Pubkey§quote_amount: u64§virtual_quote_reserves: u64§real_quote_reserves: u64§is_cashback_coin: bool是否返现代币(由 cashback_fee_basis_points > 0 推导,供 sol-trade-sdk 等构造 sell 指令用)
amount: u64§max_sol_cost: u64§min_sol_output: u64§spendable_sol_in: u64§spendable_quote_in: u64§min_tokens_out: u64§token_balance: Option<u64>User’s base-mint token-account balance after this transaction. None when transaction
meta is unavailable (for example, ShredStream events).
sol_balance: Option<u64>User’s native SOL balance in lamports after this transaction.
global: Pubkey§bonding_curve: Pubkey§bonding_curve_v2: Pubkey§associated_bonding_curve: Pubkey§associated_user: Pubkey§system_program: Pubkey§token_program: Pubkey§quote_token_program: Pubkey§associated_token_program: Pubkey§creator_vault: Pubkey§associated_quote_fee_recipient: Pubkey§buyback_fee_recipient: Pubkey§associated_quote_buyback_fee_recipient: Pubkey§associated_quote_bonding_curve: Pubkey§associated_quote_user: Pubkey§associated_creator_vault: Pubkey§sharing_config: Pubkey§program: Pubkey§global_volume_accumulator: Pubkey§user_volume_accumulator: Pubkey§associated_user_volume_accumulator: Pubkey§fee_config: Pubkey§fee_program: Pubkey§account: Option<Pubkey>Legacy fallback alias for the last post-upgrade extra account. Prefer
bonding_curve_v2 and buyback_fee_recipient for structured access.
Trait Implementations§
Source§impl BorshDeserialize for PumpFunTradeEvent
impl BorshDeserialize for PumpFunTradeEvent
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl Clone for PumpFunTradeEvent
impl Clone for PumpFunTradeEvent
Source§fn clone(&self) -> PumpFunTradeEvent
fn clone(&self) -> PumpFunTradeEvent
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PumpFunTradeEvent
impl Debug for PumpFunTradeEvent
Source§impl Default for PumpFunTradeEvent
impl Default for PumpFunTradeEvent
Source§fn default() -> PumpFunTradeEvent
fn default() -> PumpFunTradeEvent
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for PumpFunTradeEvent
impl<'de> Deserialize<'de> for PumpFunTradeEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PumpFunTradeEvent
impl RefUnwindSafe for PumpFunTradeEvent
impl Send for PumpFunTradeEvent
impl Sync for PumpFunTradeEvent
impl Unpin for PumpFunTradeEvent
impl UnsafeUnpin for PumpFunTradeEvent
impl UnwindSafe for PumpFunTradeEvent
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
Causes
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
Causes
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
Causes
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
Causes
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
Causes
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
Causes
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
Calls
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
Calls
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls
.tap_deref() only in debug builds, and is erased in release
builds.