Crate xorca

Crate xorca 

Source
Expand description

§xORCA Rust Client

A Rust client library for interacting with the xORCA staking program on Solana.

§Features

  • Type-safe interactions with the xORCA staking program
  • WASM support for use in web applications
  • Auto-generated code from the program IDL using Codama
  • PDA utilities for Program Derived Address derivation
  • Math utilities with WASM compilation support
  • Serialization support with optional serde integration

§Quick Start

use xorca::*;

// Get the program ID
let program_id = XORCA_STAKING_PROGRAM_ID;

// Derive state address PDA
let (state_address, _bump) = find_state_address().unwrap();

§Features

The crate supports several optional features:

  • serde - Enable serde serialization/deserialization
  • fetch - Enable Solana client integration for fetching account data
  • floats - Enable floating-point math operations (default)
  • wasm - Enable WASM compilation for web use

§License

This project is licensed under a custom license. See LICENSE for details.

Re-exports§

pub use conversion::*;
pub use pda::*;

Modules§

conversion
Off-chain conversion helpers that mirror the on-chain staking math. These allow clients to predict xORCA/ORCA amounts using the exact same logic and virtual offsets as the program.
pda

Structs§

Initialize
Accounts.
InitializeBuilder
Instruction builder for Initialize.
InitializeCpi
initialize CPI instruction.
InitializeCpiAccounts
initialize CPI accounts.
InitializeCpiBuilder
Instruction builder for Initialize via CPI.
InitializeInstructionArgs
InitializeInstructionData
PendingWithdraw
Set
Accounts.
SetBuilder
Instruction builder for Set.
SetCpi
set CPI instruction.
SetCpiAccounts
set CPI accounts.
SetCpiBuilder
Instruction builder for Set via CPI.
SetInstructionArgs
SetInstructionData
Stake
Accounts.
StakeBuilder
Instruction builder for Stake.
StakeCpi
stake CPI instruction.
StakeCpiAccounts
stake CPI accounts.
StakeCpiBuilder
Instruction builder for Stake via CPI.
StakeInstructionArgs
StakeInstructionData
State
TokenAccount
TokenMint
Unstake
Accounts.
UnstakeBuilder
Instruction builder for Unstake.
UnstakeCpi
unstake CPI instruction.
UnstakeCpiAccounts
unstake CPI accounts.
UnstakeCpiBuilder
Instruction builder for Unstake via CPI.
UnstakeInstructionArgs
UnstakeInstructionData
Withdraw
Accounts.
WithdrawBuilder
Instruction builder for Withdraw.
WithdrawCpi
withdraw CPI instruction.
WithdrawCpiAccounts
withdraw CPI accounts.
WithdrawCpiBuilder
Instruction builder for Withdraw via CPI.
WithdrawInstructionArgs
WithdrawInstructionData

Enums§

AccountDiscriminator
Event
StateUpdateInstruction
TokenAccountState
XorcaStakingProgramError

Constants§

ID
xorca_staking_program program ID.
INITIALIZE_DISCRIMINATOR
PENDING_WITHDRAW_DISCRIMINATOR
SET_DISCRIMINATOR
STAKE_DISCRIMINATOR
STATE_DISCRIMINATOR
UNSTAKE_DISCRIMINATOR
WITHDRAW_DISCRIMINATOR
XORCA_STAKING_PROGRAM_ID
xorca_staking_program program ID.