use crate::core::events::*;
use solana_sdk::pubkey::Pubkey;
pub type AccountGetter<'a> = dyn Fn(usize) -> Pubkey + 'a;
pub fn fill_damm_v2_swap_accounts(_e: &mut MeteoraDammV2SwapEvent, _get: &AccountGetter<'_>) {
}
pub fn fill_damm_v2_create_position_accounts(
_e: &mut MeteoraDammV2CreatePositionEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_damm_v2_close_position_accounts(
_e: &mut MeteoraDammV2ClosePositionEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_damm_v2_add_liquidity_accounts(
_e: &mut MeteoraDammV2AddLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_damm_v2_remove_liquidity_accounts(
_e: &mut MeteoraDammV2RemoveLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_damm_v2_initialize_pool_accounts(
e: &mut MeteoraDammV2InitializePoolEvent,
get: &AccountGetter<'_>,
) {
if e.creator == Pubkey::default() {
e.creator = get(0);
}
if e.position_nft_mint == Pubkey::default() {
e.position_nft_mint = get(1);
}
if e.pool == Pubkey::default() {
e.pool = get(6);
}
if e.position == Pubkey::default() {
e.position = get(7);
}
if e.token_a_mint == Pubkey::default() {
e.token_a_mint = get(8);
}
if e.token_b_mint == Pubkey::default() {
e.token_b_mint = get(9);
}
}
pub fn fill_pools_swap_accounts(_e: &mut MeteoraPoolsSwapEvent, _get: &AccountGetter<'_>) {
}
pub fn fill_pools_add_liquidity_accounts(
_e: &mut MeteoraPoolsAddLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_pools_remove_liquidity_accounts(
_e: &mut MeteoraPoolsRemoveLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_dlmm_swap_accounts(e: &mut MeteoraDlmmSwapEvent, get: &AccountGetter<'_>) {
if e.token_x_mint == Pubkey::default() {
e.token_x_mint = get(6);
}
if e.token_y_mint == Pubkey::default() {
e.token_y_mint = get(7);
}
}
pub fn fill_dlmm_add_liquidity_accounts(
_e: &mut MeteoraDlmmAddLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}
pub fn fill_dlmm_remove_liquidity_accounts(
_e: &mut MeteoraDlmmRemoveLiquidityEvent,
_get: &AccountGetter<'_>,
) {
}