v0.1.0-pre.062

This commit is contained in:
2026-07-30 10:27:06 +02:00
parent f40fb78817
commit 460671e19d
319 changed files with 392513 additions and 9507 deletions

View File

@@ -4,7 +4,6 @@
//! Consolidated decoder modules.
mod adapter;
mod admin;
mod amm;
mod anchor;
mod api;
@@ -27,6 +26,8 @@ mod solana;
mod spl;
mod stable;
mod staking;
mod storage;
mod strategy;
mod treasury;
mod vault;
mod vesting;
@@ -35,10 +36,9 @@ mod weighted;
/// Reserved `kb-lib.decoder.adapter.saber_decimal_wrapper` decoder.
pub use self::adapter::DcAdapterSaberDecimalWrapperDecoder;
/// Reserved `kb-lib.decoder.admin.jupiter_lock` decoder.
pub use self::admin::DcAdminJupiterLockDecoder;
/// Reserved `kb-lib.decoder.admin.pump_fees` decoder.
pub use self::admin::DcAdminPumpFeesDecoder;
/// Approve Collection Authority discriminator.
/// Reserved `kb-lib.decoder.adapter.spl_token_wrap` decoder.
pub use self::adapter::DcAdapterSplTokenWrapDecoder;
/// Reserved `kb-lib.decoder.amm.aldrin_v1` decoder.
pub use self::amm::DcAmmAldrinV1Decoder;
/// Reserved `kb-lib.decoder.amm.aldrin_v2` decoder.
@@ -61,8 +61,6 @@ pub use self::amm::DcAmmGoosefxV2Decoder;
pub use self::amm::DcAmmGuacSwapDecoder;
/// Reserved `kb-lib.decoder.amm.lifinity_swap_v2` decoder.
pub use self::amm::DcAmmLifinitySwapV2Decoder;
/// Reserved `kb-lib.decoder.amm.metadao_futarchy_amm` decoder.
pub use self::amm::DcAmmMetadaoFutarchyAmmDecoder;
/// Reserved `kb-lib.decoder.amm.metadao_v0_5` decoder.
pub use self::amm::DcAmmMetadaoV05Decoder;
/// Reserved `kb-lib.decoder.amm.meteora_damm_v1` decoder.
@@ -83,8 +81,6 @@ pub use self::amm::DcAmmSolfiDecoder;
pub use self::amm::DcAmmSolfiV2Decoder;
/// Reserved `kb-lib.decoder.amm.vertigo` decoder.
pub use self::amm::DcAmmVertigoDecoder;
/// Reserved `kb-lib.decoder.amm.virtuals` decoder.
pub use self::amm::DcAmmVirtualsDecoder;
/// Reserved `kb-lib.decoder.amm.woofi` decoder.
pub use self::amm::DcAmmWoofiDecoder;
/// Reserved `kb-lib.decoder.amm.zero_fi` decoder.
@@ -161,8 +157,14 @@ pub use self::dlmm::DcDlmmMeteoraDecoder;
pub use self::fees::DcFeesBagsFeeShareV1Decoder;
/// Reserved `kb-lib.decoder.fees.bags_fee_share_v2` decoder.
pub use self::fees::DcFeesBagsFeeShareV2Decoder;
/// Reserved `kb-lib.decoder.admin.pump_fees` decoder.
pub use self::fees::DcFeesPumpFeesDecoder;
/// Reserved `kb-lib.decoder.governance.metadao_bid_wall` decoder.
pub use self::governance::DcGovernanceMetadaoBidWallDecoder;
/// Reserved `kb-lib.decoder.amm.metadao_futarchy_amm` decoder.
pub use self::governance::DcGovernanceMetadaoFutarchyDecoder;
/// Reserved `kb-lib.decoder.governance.squads_multisig` decoder.
pub use self::governance::DcGovernanceSquadsMultisigDecoder;
/// Reserved `kb-lib.decoder.launchpad.boop_fun` decoder.
pub use self::launchpad::DcLaunchpadBoopFunDecoder;
/// Reserved `kb-lib.decoder.launchpad.metadao_ico` decoder.
@@ -181,6 +183,8 @@ pub use self::launchpad::DcLaunchpadPumpFunDecoder;
pub use self::launchpad::DcLaunchpadPumpPumpupAiDecoder;
/// Reserved `kb-lib.decoder.launchpad.raydium_launchlab` decoder.
pub use self::launchpad::DcLaunchpadRaydiumLaunchlabDecoder;
/// Reserved `kb-lib.decoder.amm.virtuals` decoder.
pub use self::launchpad::DcLaunchpadVirtualsDecoder;
/// Reserved `kb-lib.decoder.lending.clone` decoder.
pub use self::lending::DcLendingCloneDecoder;
/// Reserved `kb-lib.decoder.lending.jupiter_lend_borrow` decoder.
@@ -197,176 +201,6 @@ pub use self::lending::DcLendingKaminoDecoder;
pub use self::lending::DcLendingMarginfiV2Decoder;
/// Reserved `kb-lib.decoder.lock.raydium_lp` decoder.
pub use self::lock::DcLockRaydiumLpDecoder;
/// Exhaustive published Metaplex account-key inventory.
pub use self::metadata::DC_METADATA_MTM_METADATA_ACCOUNT_LAYOUT_AUDIT;
/// Exact decoder for the Metaplex Token Metadata program.
pub use self::metadata::DcMetadataMetaplexTokenMetadataDecoder;
/// Canonical projection shared by Collection and Use Authority records.
pub use self::metadata::DcMetadataMtmAuthorityRecordAccountSnapshot;
/// Stable identity and policy of one canonical account snapshot.
pub use self::metadata::DcMetadataMtmCanonicalAccountIdentity;
/// Lifecycle class of one canonical account layout.
pub use self::metadata::DcMetadataMtmCanonicalAccountLifecycle;
/// Provenance retained for one canonical account observation.
pub use self::metadata::DcMetadataMtmCanonicalAccountProvenance;
/// Execution policy separated from historical materialization.
pub use self::metadata::DcMetadataMtmCanonicalExecutionPolicy;
/// Materialization policy for active or historical state.
pub use self::metadata::DcMetadataMtmCanonicalMaterializationPolicy;
/// Canonical account envelope used by materializers and replay.
pub use self::metadata::DcMetadataMtmCanonicalMetadataAccountSnapshot;
/// Typed canonical Metaplex account state.
pub use self::metadata::DcMetadataMtmCanonicalMetadataAccountState;
/// Origin of one canonical account observation.
pub use self::metadata::DcMetadataMtmCanonicalObservationSource;
/// Canonical projection shared by Metadata and Holder delegate records.
pub use self::metadata::DcMetadataMtmDelegateRecordAccountSnapshot;
/// Supported edition account layout.
pub use self::metadata::DcMetadataMtmEditionAccountKind;
/// Canonical bounded projection of one edition or master-edition account.
pub use self::metadata::DcMetadataMtmEditionAccountSnapshot;
/// Supported Edition Marker account layout.
pub use self::metadata::DcMetadataMtmEditionMarkerAccountKind;
/// Canonical bounded projection of one Edition Marker account.
pub use self::metadata::DcMetadataMtmEditionMarkerAccountSnapshot;
/// Bounded error returned while decoding a Metadata account.
pub use self::metadata::DcMetadataMtmMetadataAccountDecodeError;
/// One entry in the exhaustive published account-key audit.
pub use self::metadata::DcMetadataMtmMetadataAccountLayoutAuditEntry;
/// Canonical bounded projection of one Metadata account.
pub use self::metadata::DcMetadataMtmMetadataAccountSnapshot;
/// One bounded historical reservation entry.
pub use self::metadata::DcMetadataMtmReservationEntrySnapshot;
/// Historical Reservation List account generation.
pub use self::metadata::DcMetadataMtmReservationListAccountKind;
/// Canonical decode-only projection of a historical Reservation List account.
pub use self::metadata::DcMetadataMtmReservationListAccountSnapshot;
/// Canonical projection of one Token Owned Escrow account.
pub use self::metadata::DcMetadataMtmTokenOwnedEscrowAccountSnapshot;
/// Authority form used by one Token Owned Escrow account.
pub use self::metadata::DcMetadataMtmTokenOwnedEscrowAuthorityKind;
/// Canonical bounded projection of one programmable Token Record account.
pub use self::metadata::DcMetadataMtmTokenRecordAccountSnapshot;
/// Reserved `kb-lib.decoder.metadata.spl_name_service` decoder.
pub use self::metadata::DcMetadataSplNameServiceDecoder;
/// Decodes one Collection Authority Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_collection_authority_record_account;
/// Decodes and validates one edition or master-edition account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_edition_account;
/// Decodes and validates one Edition Marker account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_edition_marker_account;
/// Decodes one Holder Delegate Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_holder_delegate_record_account;
/// Decodes and validates one canonical Metadata account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_metadata_account;
/// Decodes one Metadata Delegate Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_metadata_delegate_record_account;
/// Decodes one historical Reservation List V1 or V2 account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_reservation_list_account;
/// Decodes one Token Owned Escrow account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_token_owned_escrow_account;
/// Decodes and validates one programmable Token Record account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_token_record_account;
/// Decodes one Use Authority Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_use_authority_record_account;
/// Reserved `kb-lib.decoder.nft.metaplex_bubblegum` decoder.
pub use self::nft::DcNftMetaplexBubblegumDecoder;
/// Reserved `kb-lib.decoder.orderbook.jupiter_limit_order` decoder.
pub use self::orderbook::DcOrderbookJupiterLimitOrderDecoder;
/// Reserved `kb-lib.decoder.orderbook.jupiter_limit_order_v2` decoder.
pub use self::orderbook::DcOrderbookJupiterLimitOrderV2Decoder;
/// Reserved `kb-lib.decoder.orderbook.openbook_v2` decoder.
pub use self::orderbook::DcOrderbookOpenbookV2Decoder;
/// Reserved `kb-lib.decoder.perpetuals.drift_v2` decoder.
pub use self::perpetuals::DcPerpetualsDriftV2Decoder;
/// Reserved `kb-lib.decoder.perpetuals.jupiter` decoder.
pub use self::perpetuals::DcPerpetualsJupiterDecoder;
/// Reserved `kb-lib.decoder.perpetuals.zeta` decoder.
pub use self::perpetuals::DcPerpetualsZetaDecoder;
/// Reserved `kb-lib.decoder.router.dflow_aggregator_v4` decoder.
pub use self::router::DcRouterDflowAggregatorV4Decoder;
/// Reserved `kb-lib.decoder.router.jupiter_aggregator_v4` decoder.
pub use self::router::DcRouterJupiterAggregatorV4Decoder;
/// Reserved `kb-lib.decoder.router.jupiter_aggregator_v6` decoder.
pub use self::router::DcRouterJupiterAggregatorV6Decoder;
/// Reserved `kb-lib.decoder.router.jupiter_dca` decoder.
pub use self::router::DcRouterJupiterDcaDecoder;
/// Reserved `kb-lib.decoder.router.okx_labs_v1` decoder.
pub use self::router::DcRouterOkxLabsV1Decoder;
/// Reserved `kb-lib.decoder.router.okx_labs_v2` decoder.
pub use self::router::DcRouterOkxLabsV2Decoder;
/// Reserved `kb-lib.decoder.rwa.ondo_global_markets` decoder.
pub use self::rwa::DcRwaOndoGlobalMarketsDecoder;
/// Runtime-native Solana decoder with phased maximal native coverage.
pub use self::solana::DcSolanaCoreDecoder;
/// Exact byte length of one SPL ElGamal registry account.
pub use self::spl::DC_SPL_ELGAMAL_REGISTRY_ACCOUNT_LEN;
/// Reserved `kb-lib.decoder.spl.account_compression` decoder.
pub use self::spl::DcSplAccountCompressionDecoder;
/// Exact decoder for the SPL Associated Token Account program.
pub use self::spl::DcSplAssociatedTokenAccountDecoder;
/// Parsed SPL ElGamal public-key registry account.
pub use self::spl::DcSplElGamalRegistryState;
/// Exact decoder for the SPL ElGamal registry program.
pub use self::spl::DcSplElgamalRegistryDecoder;
/// Exact decoder for the three registered SPL Memo generations.
pub use self::spl::DcSplMemoDecoder;
/// Reserved `kb-lib.decoder.spl.noop` decoder.
pub use self::spl::DcSplNoopDecoder;
/// Reserved `kb-lib.decoder.spl.single_pool` decoder.
pub use self::spl::DcSplSinglePoolDecoder;
/// Reserved `kb-lib.decoder.spl.stake_pool` decoder.
pub use self::spl::DcSplStakePoolDecoder;
/// Exact decoder for the Token-2022 program.
pub use self::spl::DcSplToken2022Decoder;
/// Exact decoder for the classic SPL Token program.
pub use self::spl::DcSplTokenDecoder;
/// Parsed Token-2022 Mint, Account, or Multisig state.
pub use self::spl::DcToken2022State;
/// Exact Token-2022 base account state kind.
pub use self::spl::DcToken2022StateKind;
/// One exact Token-2022 TLV entry.
pub use self::spl::DcToken2022TlvEntry;
/// Parses one exact SPL ElGamal registry account.
pub use self::spl::decoder_spl_elgamal_registry_parse_elgamal_registry_state;
/// Parses one Token-2022 Mint, Account, or Multisig state.
pub use self::spl::decoder_spl_token_2022_parse_token_2022_state;
/// Reserved `kb-lib.decoder.stable.swap_hylo_exchange` decoder.
pub use self::stable::DcStableSwapHyloExchangeDecoder;
/// Reserved `kb-lib.decoder.stable.swap_jupiter_stable` decoder.
pub use self::stable::DcStableSwapJupiterStableDecoder;
/// Reserved `kb-lib.decoder.stable.swap_numeraire` decoder.
pub use self::stable::DcStableSwapNumeraireDecoder;
/// Reserved `kb-lib.decoder.stable.swap_stabble` decoder.
pub use self::stable::DcStableSwapStabbleDecoder;
/// Reserved `kb-lib.decoder.staking.kamino_farm` decoder.
pub use self::staking::DcStakingKaminoFarmDecoder;
/// Reserved `kb-lib.decoder.staking.marinade_finance` decoder.
pub use self::staking::DcStakingMarinadeFinanceDecoder;
/// Reserved `kb-lib.decoder.staking.solayer` decoder.
pub use self::staking::DcStakingSolayerDecoder;
/// Reserved `kb-lib.decoder.treasury.helium_treasury_management` decoder.
pub use self::treasury::DcTreasuryHeliumTreasuryManagementDecoder;
/// Reserved `kb-lib.decoder.vault.carrot_defi` decoder.
pub use self::vault::DcVaultCarrotDefiDecoder;
/// Reserved `kb-lib.decoder.vault.hylo_stability_pool` decoder.
pub use self::vault::DcVaultHyloStabilityPoolDecoder;
/// Reserved `kb-lib.decoder.vault.kamino` decoder.
pub use self::vault::DcVaultKaminoDecoder;
/// Reserved `kb-lib.decoder.vault.kamino_v2` decoder.
pub use self::vault::DcVaultKaminoV2Decoder;
/// Reserved `kb-lib.decoder.vault.kamino_yvaults` decoder.
pub use self::vault::DcVaultKaminoYvaultsDecoder;
/// Reserved `kb-lib.decoder.vault.meteora` decoder.
pub use self::vault::DcVaultMeteoraDecoder;
/// Reserved `kb-lib.decoder.vesting.streamflow` decoder.
pub use self::vesting::DcVestingStreamflowDecoder;
/// Reserved `kb-lib.decoder.wallet.jupiter_apepro_smart_wallet` decoder.
pub use self::wallet::DcWalletJupiterApeproSmartWalletDecoder;
/// Reserved `kb-lib.decoder.weighted.swap_stabble` decoder.
pub use self::weighted::DcWeightedSwapStabbleDecoder;
/// Approve Collection Authority discriminator.
pub(crate) use self::metadata::DC_METADATA_MTM_APPROVE_COLLECTION_AUTHORITY_DISCRIMINATOR;
/// Approve Use Authority discriminator.
pub(crate) use self::metadata::DC_METADATA_MTM_APPROVE_USE_AUTHORITY_DISCRIMINATOR;
@@ -430,6 +264,8 @@ pub(crate) use self::metadata::DC_METADATA_MTM_MAX_BASE64_BYTES;
pub(crate) use self::metadata::DC_METADATA_MTM_MAX_INSTRUCTION_ACCOUNTS;
/// Maximum retained instruction payload size.
pub(crate) use self::metadata::DC_METADATA_MTM_MAX_INSTRUCTION_BYTES;
/// Exhaustive published Metaplex account-key inventory.
pub use self::metadata::DC_METADATA_MTM_METADATA_ACCOUNT_LAYOUT_AUDIT;
/// Migrate discriminator.
pub(crate) use self::metadata::DC_METADATA_MTM_MIGRATE_DISCRIMINATOR;
/// Modern Mint discriminator.
@@ -496,14 +332,116 @@ pub(crate) use self::metadata::DC_METADATA_MTM_VERIFY_COLLECTION_DISCRIMINATOR;
pub(crate) use self::metadata::DC_METADATA_MTM_VERIFY_DISCRIMINATOR;
/// Verify Sized Collection Item discriminator.
pub(crate) use self::metadata::DC_METADATA_MTM_VERIFY_SIZED_COLLECTION_ITEM_DISCRIMINATOR;
/// Exact decoder for the Metaplex Token Metadata program.
pub use self::metadata::DcMetadataMetaplexTokenMetadataDecoder;
/// Canonical projection shared by Collection and Use Authority records.
pub use self::metadata::DcMetadataMtmAuthorityRecordAccountSnapshot;
/// Stable identity and policy of one canonical account snapshot.
pub use self::metadata::DcMetadataMtmCanonicalAccountIdentity;
/// Lifecycle class of one canonical account layout.
pub use self::metadata::DcMetadataMtmCanonicalAccountLifecycle;
/// Provenance retained for one canonical account observation.
pub use self::metadata::DcMetadataMtmCanonicalAccountProvenance;
/// Execution policy separated from historical materialization.
pub use self::metadata::DcMetadataMtmCanonicalExecutionPolicy;
/// Materialization policy for active or historical state.
pub use self::metadata::DcMetadataMtmCanonicalMaterializationPolicy;
/// Canonical account envelope used by materializers and replay.
pub use self::metadata::DcMetadataMtmCanonicalMetadataAccountSnapshot;
/// Typed canonical Metaplex account state.
pub use self::metadata::DcMetadataMtmCanonicalMetadataAccountState;
/// Origin of one canonical account observation.
pub use self::metadata::DcMetadataMtmCanonicalObservationSource;
/// Canonical projection shared by Metadata and Holder delegate records.
pub use self::metadata::DcMetadataMtmDelegateRecordAccountSnapshot;
/// Supported edition account layout.
pub use self::metadata::DcMetadataMtmEditionAccountKind;
/// Canonical bounded projection of one edition or master-edition account.
pub use self::metadata::DcMetadataMtmEditionAccountSnapshot;
/// Supported Edition Marker account layout.
pub use self::metadata::DcMetadataMtmEditionMarkerAccountKind;
/// Canonical bounded projection of one Edition Marker account.
pub use self::metadata::DcMetadataMtmEditionMarkerAccountSnapshot;
/// Bounded error returned while decoding a Metadata account.
pub use self::metadata::DcMetadataMtmMetadataAccountDecodeError;
/// One entry in the exhaustive published account-key audit.
pub use self::metadata::DcMetadataMtmMetadataAccountLayoutAuditEntry;
/// Canonical bounded projection of one Metadata account.
pub use self::metadata::DcMetadataMtmMetadataAccountSnapshot;
/// One bounded historical reservation entry.
pub use self::metadata::DcMetadataMtmReservationEntrySnapshot;
/// Historical Reservation List account generation.
pub use self::metadata::DcMetadataMtmReservationListAccountKind;
/// Canonical decode-only projection of a historical Reservation List account.
pub use self::metadata::DcMetadataMtmReservationListAccountSnapshot;
/// Canonical projection of one Token Owned Escrow account.
pub use self::metadata::DcMetadataMtmTokenOwnedEscrowAccountSnapshot;
/// Authority form used by one Token Owned Escrow account.
pub use self::metadata::DcMetadataMtmTokenOwnedEscrowAuthorityKind;
/// Canonical bounded projection of one programmable Token Record account.
pub use self::metadata::DcMetadataMtmTokenRecordAccountSnapshot;
/// Reserved `kb-lib.decoder.metadata.solana_program_metadata` decoder.
pub use self::metadata::DcMetadataSolanaProgramMetadataDecoder;
/// Reserved `kb-lib.decoder.metadata.spl_name_service` decoder.
pub use self::metadata::DcMetadataSplNameServiceDecoder;
/// Canonical tracing target for this crate.
pub(crate) use self::metadata::TRACING_TARGET_DECODER_METADATA_METAPLEX_TOKEN_METADATA;
/// Crate-root access to `decode` from `instruction`.
pub(crate) use self::metadata::decoder_metadata_metaplex_token_metadata_decode;
/// Decodes one Collection Authority Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_collection_authority_record_account;
/// Decodes and validates one edition or master-edition account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_edition_account;
/// Decodes and validates one Edition Marker account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_edition_marker_account;
/// Decodes one Holder Delegate Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_holder_delegate_record_account;
/// Decodes and validates one canonical Metadata account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_metadata_account;
/// Decodes one Metadata Delegate Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_metadata_delegate_record_account;
/// Decodes one historical Reservation List V1 or V2 account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_reservation_list_account;
/// Decodes one Token Owned Escrow account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_token_owned_escrow_account;
/// Decodes and validates one programmable Token Record account snapshot.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_token_record_account;
/// Decodes one Use Authority Record account.
pub use self::metadata::decoder_metadata_metaplex_token_metadata_decode_use_authority_record_account;
/// Crate-root access to `entry_for_discriminator` from `instruction`.
pub(crate) use self::metadata::decoder_metadata_metaplex_token_metadata_entry_for_discriminator;
/// Crate-root access to `payload_discriminator` from `instruction`.
pub(crate) use self::metadata::decoder_metadata_metaplex_token_metadata_payload_discriminator;
/// Reserved `kb-lib.decoder.nft.metaplex_bubblegum` decoder.
pub use self::nft::DcNftMetaplexBubblegumDecoder;
/// Reserved `kb-lib.decoder.nft.tensor_cnft` decoder.
pub use self::nft::DcNftTensorCnftDecoder;
/// Reserved `kb-lib.decoder.orderbook.jupiter_limit_order` decoder.
pub use self::orderbook::DcOrderbookJupiterLimitOrderDecoder;
/// Reserved `kb-lib.decoder.orderbook.jupiter_limit_order_v2` decoder.
pub use self::orderbook::DcOrderbookJupiterLimitOrderV2Decoder;
/// Reserved `kb-lib.decoder.orderbook.openbook_v2` decoder.
pub use self::orderbook::DcOrderbookOpenbookV2Decoder;
/// Reserved `kb-lib.decoder.perpetuals.drift_v2` decoder.
pub use self::perpetuals::DcPerpetualsDriftV2Decoder;
/// Reserved `kb-lib.decoder.perpetuals.jupiter` decoder.
pub use self::perpetuals::DcPerpetualsJupiterDecoder;
/// Reserved `kb-lib.decoder.perpetuals.phoenix_eternal` decoder.
pub use self::perpetuals::DcPerpetualsPhoenixEternalDecoder;
/// Reserved `kb-lib.decoder.perpetuals.zeta` decoder.
pub use self::perpetuals::DcPerpetualsZetaDecoder;
/// Reserved `kb-lib.decoder.router.dflow_aggregator_v4` decoder.
pub use self::router::DcRouterDflowAggregatorV4Decoder;
/// Reserved `kb-lib.decoder.router.jupiter_aggregator_v4` decoder.
pub use self::router::DcRouterJupiterAggregatorV4Decoder;
/// Reserved `kb-lib.decoder.router.jupiter_aggregator_v6` decoder.
pub use self::router::DcRouterJupiterAggregatorV6Decoder;
/// Reserved `kb-lib.decoder.router.okx_labs_v1` decoder.
pub use self::router::DcRouterOkxLabsV1Decoder;
/// Reserved `kb-lib.decoder.router.okx_labs_v2` decoder.
pub use self::router::DcRouterOkxLabsV2Decoder;
/// Reserved `kb-lib.decoder.rwa.ondo_global_markets` decoder.
pub use self::rwa::DcRwaOndoGlobalMarketsDecoder;
pub(crate) use self::solana::DC_SOLANA_CORE_ADDRESS_LOOKUP_TABLE_SURFACE_CODE;
pub(crate) use self::solana::DC_SOLANA_CORE_BPF_LOADER_DEPRECATED_SURFACE_CODE;
pub(crate) use self::solana::DC_SOLANA_CORE_BPF_LOADER_SURFACE_CODE;
@@ -534,6 +472,8 @@ pub(crate) use self::solana::DC_SOLANA_CORE_VOTE_SURFACE_CODE;
pub(crate) use self::solana::DC_SOLANA_CORE_ZK_ELGAMAL_PROOF_SURFACE_CODE;
pub(crate) use self::solana::DC_SOLANA_CORE_ZK_TOKEN_PROOF_SURFACE_CODE;
pub(crate) use self::solana::DcSolanaCoreAccountRole;
/// Runtime-native Solana decoder with phased maximal native coverage.
pub use self::solana::DcSolanaCoreDecoder;
pub(crate) use self::solana::DcSolanaCoreResolvedInstructionPayload;
pub(crate) use self::solana::TRACING_TARGET_DECODER_SOLANA_CORE;
pub(crate) use self::solana::decoder_solana_core_address_lookup_table_coverage;
@@ -605,6 +545,8 @@ pub(crate) use self::spl::DC_SPL_ATA_MAX_INSTRUCTION_BYTES;
pub(crate) use self::spl::DC_SPL_ATA_MAX_TRANSACTION_KEYS;
/// Stable protocol and surface code for the Associated Token Account program.
pub(crate) use self::spl::DC_SPL_ATA_SURFACE_CODE;
/// Exact byte length of one SPL ElGamal registry account.
pub use self::spl::DC_SPL_ELGAMAL_REGISTRY_ACCOUNT_LEN;
/// Current stable SPL ElGamal registry event contract version.
pub(crate) use self::spl::DC_SPL_ELGAMAL_REGISTRY_EVENT_VERSION;
/// Maximum retained SPL ElGamal registry instruction payload size.
@@ -655,8 +597,34 @@ pub(crate) use self::spl::DC_SPL_TOKEN_MAX_BATCH_INSTRUCTIONS;
pub(crate) use self::spl::DC_SPL_TOKEN_MAX_INSTRUCTION_BYTES;
/// Stable protocol and surface code for the classic SPL Token program.
pub(crate) use self::spl::DC_SPL_TOKEN_SURFACE_CODE;
/// Reserved `kb-lib.decoder.spl.account_compression` decoder.
pub use self::spl::DcSplAccountCompressionDecoder;
/// Exact decoder for the SPL Associated Token Account program.
pub use self::spl::DcSplAssociatedTokenAccountDecoder;
/// One parsed SPL ElGamal registry instruction.
pub(crate) use self::spl::DcSplElGamalRegistryParsedRegistryInstruction;
/// Parsed SPL ElGamal public-key registry account.
pub use self::spl::DcSplElGamalRegistryState;
/// Exact decoder for the SPL ElGamal registry program.
pub use self::spl::DcSplElgamalRegistryDecoder;
/// Exact decoder for the three registered SPL Memo generations.
pub use self::spl::DcSplMemoDecoder;
/// Reserved `kb-lib.decoder.spl.noop` decoder.
pub use self::spl::DcSplNoopDecoder;
/// Reserved `kb-lib.decoder.spl.single_pool` decoder.
pub use self::spl::DcSplSinglePoolDecoder;
/// Reserved `kb-lib.decoder.spl.stake_pool` decoder.
pub use self::spl::DcSplStakePoolDecoder;
/// Exact decoder for the Token-2022 program.
pub use self::spl::DcSplToken2022Decoder;
/// Exact decoder for the classic SPL Token program.
pub use self::spl::DcSplTokenDecoder;
/// Parsed Token-2022 Mint, Account, or Multisig state.
pub use self::spl::DcToken2022State;
/// Exact Token-2022 base account state kind.
pub use self::spl::DcToken2022StateKind;
/// One exact Token-2022 TLV entry.
pub use self::spl::DcToken2022TlvEntry;
/// Canonical tracing target for the Associated Token Account decoder.
pub(crate) use self::spl::TRACING_TARGET_DECODER_SPL_ATA;
/// Canonical tracing target for the SPL ElGamal registry decoder.
@@ -679,12 +647,16 @@ pub(crate) use self::spl::decoder_spl_elgamal_registry_decode;
pub(crate) use self::spl::decoder_spl_elgamal_registry_decode_payload;
/// Parses one exact SPL ElGamal registry instruction.
pub(crate) use self::spl::decoder_spl_elgamal_registry_parse;
/// Parses one exact SPL ElGamal registry account.
pub use self::spl::decoder_spl_elgamal_registry_parse_elgamal_registry_state;
/// Decodes one bounded SPL Memo instruction.
pub(crate) use self::spl::decoder_spl_memo_decode;
/// Decodes one bounded Token-2022 instruction.
pub(crate) use self::spl::decoder_spl_token_2022_decode;
/// Returns the exact entry matching one Token-2022 tag.
pub(crate) use self::spl::decoder_spl_token_2022_entry_for_tag;
/// Parses one Token-2022 Mint, Account, or Multisig state.
pub use self::spl::decoder_spl_token_2022_parse_token_2022_state;
/// Returns the first byte of one retained Token-2022 payload.
pub(crate) use self::spl::decoder_spl_token_2022_payload_tag;
/// Decodes one bounded classic SPL Token instruction.
@@ -693,15 +665,63 @@ pub(crate) use self::spl::decoder_spl_token_decode;
pub(crate) use self::spl::decoder_spl_token_entry_for_tag;
/// Returns the first byte of one retained classic SPL Token payload.
pub(crate) use self::spl::decoder_spl_token_payload_tag;
/// Reserved `kb-lib.decoder.stable.swap_hylo_exchange` decoder.
pub use self::stable::DcStableSwapHyloExchangeDecoder;
/// Reserved `kb-lib.decoder.stable.swap_jupiter_stable` decoder.
pub use self::stable::DcStableSwapJupiterStableDecoder;
/// Reserved `kb-lib.decoder.stable.swap_numeraire` decoder.
pub use self::stable::DcStableSwapNumeraireDecoder;
/// Reserved `kb-lib.decoder.stable.swap_stabble` decoder.
pub use self::stable::DcStableSwapStabbleDecoder;
/// Reserved `kb-lib.decoder.staking.jito_tip_distribution` decoder.
pub use self::staking::DcStakingJitoTipDistributionDecoder;
/// Reserved `kb-lib.decoder.staking.kamino_farm` decoder.
pub use self::staking::DcStakingKaminoFarmDecoder;
/// Reserved `kb-lib.decoder.staking.marinade_finance` decoder.
pub use self::staking::DcStakingMarinadeFinanceDecoder;
/// Reserved `kb-lib.decoder.staking.solayer` decoder.
pub use self::staking::DcStakingSolayerDecoder;
/// Reserved `kb-lib.decoder.storage.solana_record` decoder.
pub use self::storage::DcStorageSolanaRecordDecoder;
/// Reserved `kb-lib.decoder.router.jupiter_dca` decoder.
pub use self::strategy::DcStrategyJupiterDcaDecoder;
/// Reserved `kb-lib.decoder.treasury.helium_treasury_management` decoder.
pub use self::treasury::DcTreasuryHeliumTreasuryManagementDecoder;
/// Reserved `kb-lib.decoder.vault.carrot_defi` decoder.
pub use self::vault::DcVaultCarrotDefiDecoder;
/// Reserved `kb-lib.decoder.vault.hylo_stability_pool` decoder.
pub use self::vault::DcVaultHyloStabilityPoolDecoder;
/// Reserved `kb-lib.decoder.vault.kamino` decoder.
pub use self::vault::DcVaultKaminoDecoder;
/// Reserved `kb-lib.decoder.vault.kamino_v2` decoder.
pub use self::vault::DcVaultKaminoV2Decoder;
/// Reserved `kb-lib.decoder.vault.kamino_yvaults` decoder.
pub use self::vault::DcVaultKaminoYvaultsDecoder;
/// Reserved `kb-lib.decoder.vault.meteora` decoder.
pub use self::vault::DcVaultMeteoraDecoder;
/// Reserved `kb-lib.decoder.admin.jupiter_lock` decoder.
pub use self::vesting::DcVestingJupiterLockDecoder;
/// Reserved `kb-lib.decoder.vesting.streamflow` decoder.
pub use self::vesting::DcVestingStreamflowDecoder;
/// Reserved `kb-lib.decoder.wallet.jupiter_apepro_smart_wallet` decoder.
pub use self::wallet::DcWalletJupiterApeproSmartWalletDecoder;
/// Reserved `kb-lib.decoder.weighted.swap_stabble` decoder.
pub use self::weighted::DcWeightedSwapStabbleDecoder;
#[cfg(test)]
mod reserved_decoder_tests {
#[test]
fn every_reserved_decoder_exposes_only_registered_program_ids() {
let decoders: [&dyn crate::DcApiProtocolDecoder; 98] = [
let decoders: [&dyn crate::DcApiProtocolDecoder; 105] = [
&crate::DcAdapterSaberDecimalWrapperDecoder,
&crate::DcAdminJupiterLockDecoder,
&crate::DcAdminPumpFeesDecoder,
&crate::DcAdapterSplTokenWrapDecoder,
&crate::DcGovernanceSquadsMultisigDecoder,
&crate::DcMetadataSolanaProgramMetadataDecoder,
&crate::DcNftTensorCnftDecoder,
&crate::DcPerpetualsPhoenixEternalDecoder,
&crate::DcStakingJitoTipDistributionDecoder,
&crate::DcStorageSolanaRecordDecoder,
&crate::DcVestingJupiterLockDecoder,
&crate::DcFeesPumpFeesDecoder,
&crate::DcAmmAldrinV1Decoder,
&crate::DcAmmAldrinV2Decoder,
&crate::DcAmmAlphaqDecoder,
@@ -713,7 +733,7 @@ mod reserved_decoder_tests {
&crate::DcAmmGoosefxV2Decoder,
&crate::DcAmmGuacSwapDecoder,
&crate::DcAmmLifinitySwapV2Decoder,
&crate::DcAmmMetadaoFutarchyAmmDecoder,
&crate::DcGovernanceMetadaoFutarchyDecoder,
&crate::DcAmmMetadaoV05Decoder,
&crate::DcAmmMeteoraDammV1Decoder,
&crate::DcAmmMeteoraDammV2Decoder,
@@ -724,7 +744,7 @@ mod reserved_decoder_tests {
&crate::DcAmmSolfiDecoder,
&crate::DcAmmSolfiV2Decoder,
&crate::DcAmmVertigoDecoder,
&crate::DcAmmVirtualsDecoder,
&crate::DcLaunchpadVirtualsDecoder,
&crate::DcAmmWoofiDecoder,
&crate::DcAmmZeroFiDecoder,
&crate::DcAmmZoraDecoder,
@@ -772,7 +792,7 @@ mod reserved_decoder_tests {
&crate::DcRouterDflowAggregatorV4Decoder,
&crate::DcRouterJupiterAggregatorV4Decoder,
&crate::DcRouterJupiterAggregatorV6Decoder,
&crate::DcRouterJupiterDcaDecoder,
&crate::DcStrategyJupiterDcaDecoder,
&crate::DcRouterOkxLabsV1Decoder,
&crate::DcRouterOkxLabsV2Decoder,
&crate::DcRwaOndoGlobalMarketsDecoder,
@@ -827,6 +847,6 @@ mod reserved_decoder_tests {
assert!(decode_result.is_ok_and(|events| return events.is_empty()));
}
}
assert_eq!(names.len(), 98);
assert_eq!(names.len(), 105);
}
}