carbon-zeta-decoder 2.0.0

Zeta Program Decoder
Documentation
//! This code was AUTOGENERATED using the Codama library.
pub mod add_market_indexes_schema;
pub mod add_perp_market_index_schema;
pub mod apply_perp_funding_schema;
pub mod burn_vault_tokens_schema;
pub mod cancel_all_market_orders_schema;
pub mod cancel_order_by_client_order_id_no_error_schema;
pub mod cancel_order_by_client_order_id_schema;
pub mod cancel_order_halted_schema;
pub mod cancel_order_no_error_schema;
pub mod cancel_order_schema;
pub mod claim_referrals_rewards_schema;
pub mod clean_zeta_market_halted_schema;
pub mod clean_zeta_markets_schema;
pub mod close_cross_margin_account_manager_schema;
pub mod close_cross_margin_account_schema;
pub mod close_margin_account_schema;
pub mod close_open_orders_schema;
pub mod close_open_orders_v2_schema;
pub mod close_open_orders_v3_schema;
pub mod close_spread_account_schema;
pub mod collect_treasury_funds_schema;
pub mod cpi_event_schema;
pub mod crank_event_queue_schema;
pub mod deposit_insurance_vault_schema;
pub mod deposit_insurance_vault_v2_schema;
pub mod deposit_schema;
pub mod deposit_v2_schema;
pub mod edit_delegated_pubkey_schema;
pub mod expire_series_override_schema;
pub mod expire_series_schema;
pub mod force_cancel_order_by_order_id_schema;
pub mod force_cancel_order_by_order_id_v2_schema;
pub mod force_cancel_orders_schema;
pub mod force_cancel_orders_v2_schema;
pub mod halt_schema;
pub mod initialize_combined_insurance_vault_schema;
pub mod initialize_combined_socialized_loss_account_schema;
pub mod initialize_combined_vault_schema;
pub mod initialize_cross_margin_account_manager_schema;
pub mod initialize_cross_margin_account_schema;
pub mod initialize_insurance_deposit_account_schema;
pub mod initialize_margin_account_schema;
pub mod initialize_market_indexes_schema;
pub mod initialize_market_node_schema;
pub mod initialize_market_strikes_schema;
pub mod initialize_market_tif_epoch_cycle_schema;
pub mod initialize_open_orders_schema;
pub mod initialize_open_orders_v2_schema;
pub mod initialize_open_orders_v3_schema;
pub mod initialize_perp_sync_queue_schema;
pub mod initialize_referrer_account_schema;
pub mod initialize_referrer_alias_schema;
pub mod initialize_spread_account_schema;
pub mod initialize_underlying_schema;
pub mod initialize_whitelist_deposit_account_schema;
pub mod initialize_whitelist_insurance_account_schema;
pub mod initialize_whitelist_trading_fees_account_schema;
pub mod initialize_zeta_group_schema;
pub mod initialize_zeta_market_schema;
pub mod initialize_zeta_pricing_schema;
pub mod initialize_zeta_referrals_rewards_wallet_schema;
pub mod initialize_zeta_state_schema;
pub mod initialize_zeta_treasury_wallet_schema;
pub mod liquidate_schema;
pub mod liquidate_v2_schema;
pub mod migrate_to_cross_margin_account_schema;
pub mod override_expiry_schema;
pub mod place_order_schema;
pub mod place_order_v2_schema;
pub mod place_order_v3_schema;
pub mod place_order_v4_schema;
pub mod place_perp_order_schema;
pub mod place_perp_order_v2_schema;
pub mod place_perp_order_v3_schema;
pub mod position_movement_schema;
pub mod prune_expired_tif_orders_schema;
pub mod rebalance_insurance_vault_schema;
pub mod refer_user_schema;
pub mod reset_num_flex_underlyings_schema;
pub mod set_referrals_rewards_schema;
pub mod settle_dex_funds_schema;
pub mod settle_positions_halted_schema;
pub mod toggle_market_maker_schema;
pub mod toggle_zeta_group_perps_only_schema;
pub mod transfer_excess_spread_balance_schema;
pub mod treasury_movement_schema;
pub mod unhalt_schema;
pub mod update_admin_schema;
pub mod update_halt_state_schema;
pub mod update_interest_rate_schema;
pub mod update_margin_parameters_schema;
pub mod update_oracle_backup_feed_schema;
pub mod update_oracle_schema;
pub mod update_perp_parameters_schema;
pub mod update_pricing_parameters_schema;
pub mod update_pricing_v2_schema;
pub mod update_referrals_admin_schema;
pub mod update_secondary_admin_schema;
pub mod update_volatility_schema;
pub mod update_zeta_group_expiry_parameters_schema;
pub mod update_zeta_group_margin_parameters_schema;
pub mod update_zeta_group_perp_parameters_schema;
pub mod update_zeta_pricing_pubkeys_schema;
pub mod update_zeta_state_schema;
pub mod withdraw_insurance_vault_schema;
pub mod withdraw_insurance_vault_v2_schema;
pub mod withdraw_schema;
pub mod withdraw_v2_schema;

use juniper::GraphQLObject;
pub use {
    add_market_indexes_schema::*, add_perp_market_index_schema::*, apply_perp_funding_schema::*,
    burn_vault_tokens_schema::*, cancel_all_market_orders_schema::*,
    cancel_order_by_client_order_id_no_error_schema::*, cancel_order_by_client_order_id_schema::*,
    cancel_order_halted_schema::*, cancel_order_no_error_schema::*, cancel_order_schema::*,
    claim_referrals_rewards_schema::*, clean_zeta_market_halted_schema::*,
    clean_zeta_markets_schema::*, close_cross_margin_account_manager_schema::*,
    close_cross_margin_account_schema::*, close_margin_account_schema::*,
    close_open_orders_schema::*, close_open_orders_v2_schema::*, close_open_orders_v3_schema::*,
    close_spread_account_schema::*, collect_treasury_funds_schema::*, cpi_event_schema::*,
    crank_event_queue_schema::*, deposit_insurance_vault_schema::*,
    deposit_insurance_vault_v2_schema::*, deposit_schema::*, deposit_v2_schema::*,
    edit_delegated_pubkey_schema::*, expire_series_override_schema::*, expire_series_schema::*,
    force_cancel_order_by_order_id_schema::*, force_cancel_order_by_order_id_v2_schema::*,
    force_cancel_orders_schema::*, force_cancel_orders_v2_schema::*, halt_schema::*,
    initialize_combined_insurance_vault_schema::*,
    initialize_combined_socialized_loss_account_schema::*, initialize_combined_vault_schema::*,
    initialize_cross_margin_account_manager_schema::*, initialize_cross_margin_account_schema::*,
    initialize_insurance_deposit_account_schema::*, initialize_margin_account_schema::*,
    initialize_market_indexes_schema::*, initialize_market_node_schema::*,
    initialize_market_strikes_schema::*, initialize_market_tif_epoch_cycle_schema::*,
    initialize_open_orders_schema::*, initialize_open_orders_v2_schema::*,
    initialize_open_orders_v3_schema::*, initialize_perp_sync_queue_schema::*,
    initialize_referrer_account_schema::*, initialize_referrer_alias_schema::*,
    initialize_spread_account_schema::*, initialize_underlying_schema::*,
    initialize_whitelist_deposit_account_schema::*,
    initialize_whitelist_insurance_account_schema::*,
    initialize_whitelist_trading_fees_account_schema::*, initialize_zeta_group_schema::*,
    initialize_zeta_market_schema::*, initialize_zeta_pricing_schema::*,
    initialize_zeta_referrals_rewards_wallet_schema::*, initialize_zeta_state_schema::*,
    initialize_zeta_treasury_wallet_schema::*, liquidate_schema::*, liquidate_v2_schema::*,
    migrate_to_cross_margin_account_schema::*, override_expiry_schema::*, place_order_schema::*,
    place_order_v2_schema::*, place_order_v3_schema::*, place_order_v4_schema::*,
    place_perp_order_schema::*, place_perp_order_v2_schema::*, place_perp_order_v3_schema::*,
    position_movement_schema::*, prune_expired_tif_orders_schema::*,
    rebalance_insurance_vault_schema::*, refer_user_schema::*,
    reset_num_flex_underlyings_schema::*, set_referrals_rewards_schema::*,
    settle_dex_funds_schema::*, settle_positions_halted_schema::*, toggle_market_maker_schema::*,
    toggle_zeta_group_perps_only_schema::*, transfer_excess_spread_balance_schema::*,
    treasury_movement_schema::*, unhalt_schema::*, update_admin_schema::*,
    update_halt_state_schema::*, update_interest_rate_schema::*,
    update_margin_parameters_schema::*, update_oracle_backup_feed_schema::*,
    update_oracle_schema::*, update_perp_parameters_schema::*, update_pricing_parameters_schema::*,
    update_pricing_v2_schema::*, update_referrals_admin_schema::*,
    update_secondary_admin_schema::*, update_volatility_schema::*,
    update_zeta_group_expiry_parameters_schema::*, update_zeta_group_margin_parameters_schema::*,
    update_zeta_group_perp_parameters_schema::*, update_zeta_pricing_pubkeys_schema::*,
    update_zeta_state_schema::*, withdraw_insurance_vault_schema::*,
    withdraw_insurance_vault_v2_schema::*, withdraw_schema::*, withdraw_v2_schema::*,
};

#[derive(Debug, Clone, GraphQLObject)]
#[graphql(name = "InstructionMetadata")]
pub struct InstructionMetadataGraphQL {
    pub signature: String,
    pub instruction_index: carbon_core::graphql::primitives::U32,
    pub stack_height: carbon_core::graphql::primitives::U32,
    pub slot: Option<carbon_core::graphql::primitives::U64>,
}

impl From<carbon_core::postgres::metadata::InstructionRowMetadata> for InstructionMetadataGraphQL {
    fn from(metadata: carbon_core::postgres::metadata::InstructionRowMetadata) -> Self {
        Self {
            signature: metadata.signature,
            instruction_index: carbon_core::graphql::primitives::U32(
                (*metadata.instruction_index) as u32,
            ),
            stack_height: carbon_core::graphql::primitives::U32((*metadata.stack_height) as u32),
            slot: metadata
                .slot
                .map(|v| carbon_core::graphql::primitives::U64(*v)),
        }
    }
}