Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

API

pool

Module0x67b3…928a
Move path
0x3492…c267::pool
Functions
7051 public, 0 entry
Structs
5
Friend modules
admin
pool

Declarations

Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.

module pool;
struct FlashSwapReceipt<phantom T0, phantom T1> {
pool_id: ID,
a2b: bool,
pay_amount: u64,
}
struct Pool<phantom T0, phantom T1> has store, key {
id: UID,
name: String,
coin_a: Balance<T0>,
coin_b: Balance<T1>,
fee_rate: u64,
protocol_fee_share: u64,
fee_growth_global_coin_a: u128,
fee_growth_global_coin_b: u128,
protocol_fee_coin_a: u64,
protocol_fee_coin_b: u64,
ticks_manager: tick::TickManager,
observations_manager: oracle::ObservationManager,
current_sqrt_price: u128,
current_tick_index: i32::I32,
liquidity: u128,
reward_infos: vector<PoolRewardInfo>,
is_paused: bool,
icon_url: String,
position_index: u128,
sequence_number: u128,
}
struct PoolRewardInfo has copy, drop, store {
reward_coin_symbol: String,
reward_coin_decimals: u8,
reward_coin_type: String,
last_update_time: u64,
ended_at_seconds: u64,
total_reward: u64,
total_reward_allocated: u64,
reward_per_seconds: u128,
reward_growth_global: u128,
}
struct SwapResult has copy, drop {
a2b: bool,
by_amount_in: bool,
amount_specified: u64,
amount_specified_remaining: u64,
amount_calculated: u64,
fee_growth_global: u128,
fee_amount: u64,
protocol_fee: u64,
start_sqrt_price: u128,
end_sqrt_price: u128,
current_tick_index: i32::I32,
is_exceed: bool,
starting_liquidity: u128,
liquidity: u128,
steps: u64,
step_results: vector<SwapStepResult>,
}
struct SwapStepResult has copy, drop, store {
tick_index_next: i32::I32,
initialized: bool,
sqrt_price_start: u128,
sqrt_price_next: u128,
amount_in: u64,
amount_out: u64,
fee_amount: u64,
remaining_amount: u64,
}
public fun add_liquidity<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,&mut position::Position,Balance<T0>,Balance<T1>,u128): (u64, u64, Balance<T0>, Balance<T1>)
public fun add_liquidity_with_fixed_amount<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,&mut position::Position,Balance<T0>,Balance<T1>,u64,bool): (u64, u64, Balance<T0>, Balance<T1>)
public(package) fun add_reward_info<T0, T1, T2>(&mut Pool<T0, T1>,PoolRewardInfo)
public fun calculate_swap_results<T0, T1>(&Pool<T0, T1>,bool,bool,u64,u128): SwapResult
fun charge_pool_creation_fee<T0>(&mut config::GlobalConfig,ID,Balance<T0>)
public fun close_position<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,position::Position): (Balance<T0>, Balance<T1>)
public fun close_position_v2<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,position::Position)
public fun coin_reserves<T0, T1>(&Pool<T0, T1>): (u64, u64)
public fun collect_fee<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,&mut position::Position): (u64, u64, Balance<T0>, Balance<T1>)
public fun collect_reward<T0, T1, T2>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,&mut position::Position): Balance<T2>
public fun create_pool<T0, T1, T2>(&Clock,&mut config::GlobalConfig,vector<u8>,vector<u8>,vector<u8>,u8,vector<u8>,vector<u8>,u8,vector<u8>,u32,u64,u128,Balance<T2>): ID
fun create_pool_internal<T0, T1>(&Clock,&config::GlobalConfig,vector<u8>,vector<u8>,vector<u8>,u8,vector<u8>,vector<u8>,u8,vector<u8>,u32,u64,u128): Pool<T0, T1>
public fun create_pool_with_liquidity<T0, T1, T2>(&Clock,&mut config::GlobalConfig,vector<u8>,vector<u8>,vector<u8>,u8,vector<u8>,vector<u8>,u8,vector<u8>,u32,u64,u128,Balance<T2>,u32,u32,Balance<T0>,Balance<T1>,u64,bool): (ID, position::Position, u64, u64, Balance<T0>, Balance<T1>)
public fun current_sqrt_price<T0, T1>(&Pool<T0, T1>): u128
public fun current_tick_index<T0, T1>(&Pool<T0, T1>): i32::I32
public fun default_reward_info(String,String,u8,u64): PoolRewardInfo
public fun fetch_provided_ticks<T0, T1>(&Pool<T0, T1>,vector<u32>): vector<tick::TickInfo>
fun find_reward_info_index<T0, T1, T2>(&Pool<T0, T1>): u64
public fun flash_swap<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,bool,bool,u64,u128): (Balance<T0>, Balance<T1>, FlashSwapReceipt<T0, T1>)
fun get_accrued_fee<T0, T1>(&Clock,&mut Pool<T0, T1>,&mut position::Position): (u64, u64)
fun get_accrued_rewards<T0, T1, T2>(&Clock,&mut Pool<T0, T1>,&mut position::Position): (u64, PoolRewardInfo)
public fun get_amount_by_liquidity(i32::I32,i32::I32,i32::I32,u128,u128,bool): (u64, u64)
public fun get_fee_rate<T0, T1>(&Pool<T0, T1>): u64
public fun get_liquidity_by_amount(i32::I32,i32::I32,i32::I32,u128,u64,bool): (u128, u64, u64)
public fun get_pool_manager<T0, T1>(&Pool<T0, T1>): address
public fun get_protocol_fee_for_coin_a<T0, T1>(&Pool<T0, T1>): u64
public fun get_protocol_fee_for_coin_b<T0, T1>(&Pool<T0, T1>): u64
public fun get_swap_result_a2b(&SwapResult): bool
public fun get_swap_result_amount_calculated(&SwapResult): u64
public fun get_swap_result_amount_specified(&SwapResult): u64
public fun get_swap_result_amount_specified_remaining(&SwapResult): u64
public fun get_swap_result_by_amount_in(&SwapResult): bool
public fun get_swap_result_current_tick_index(&SwapResult): i32::I32
public fun get_swap_result_end_sqrt_price(&SwapResult): u128
public fun get_swap_result_fee_amount(&SwapResult): u64
public fun get_swap_result_fee_growth_global(&SwapResult): u128
public fun get_swap_result_is_exceed(&SwapResult): bool
public fun get_swap_result_liquidity(&SwapResult): u128
public fun get_swap_result_protocol_fee(&SwapResult): u64
public fun get_swap_result_start_sqrt_price(&SwapResult): u128
public fun get_swap_result_starting_liquidity(&SwapResult): u128
public fun get_swap_result_steps(&SwapResult): u64
public fun get_tick_manager<T0, T1>(&Pool<T0, T1>): &tick::TickManager
public fun get_tick_spacing<T0, T1>(&Pool<T0, T1>): u32
public(package) fun increase_observation_cardinality_next<T0, T1>(&mut Pool<T0, T1>,u64)
public(package) fun increase_reward_coin_reserves<T0, T1, T2>(&mut Pool<T0, T1>,Balance<T2>)
public(package) fun increase_sequence_number<T0, T1>(&mut Pool<T0, T1>): u128
fun is_flash_swap_in_progress(&UID): bool
public fun is_reward_present<T0, T1, T2>(&Pool<T0, T1>): bool
public fun liquidity<T0, T1>(&Pool<T0, T1>): u128
public fun new<T0, T1>(&Clock,vector<u8>,vector<u8>,vector<u8>,u8,vector<u8>,vector<u8>,u8,vector<u8>,u32,u64,u128)
public fun open_position<T0, T1>(&config::GlobalConfig,&mut Pool<T0, T1>,u32,u32): position::Position
public fun protocol_fee_share<T0, T1>(&Pool<T0, T1>): u64
public fun remove_liquidity<T0, T1>(&config::GlobalConfig,&mut Pool<T0, T1>,&mut position::Position,u128,&Clock): (u64, u64, Balance<T0>, Balance<T1>)
public fun repay_flash_swap<T0, T1>(&config::GlobalConfig,&mut Pool<T0, T1>,Balance<T0>,Balance<T1>,FlashSwapReceipt<T0, T1>)
public fun reward_infos_length<T0, T1>(&Pool<T0, T1>): u64
public fun sequence_number<T0, T1>(&Pool<T0, T1>): u128
public fun set_manager<T0, T1>(&config::GlobalConfig,&mut Pool<T0, T1>,address)
public(package) fun set_protocol_fee_amount<T0, T1>(&mut Pool<T0, T1>,u64,u64)
public(package) fun set_protocol_fee_share<T0, T1>(&mut Pool<T0, T1>,u64)
public fun swap<T0, T1>(&Clock,&config::GlobalConfig,&mut Pool<T0, T1>,Balance<T0>,Balance<T1>,bool,bool,u64,u64,u128): (Balance<T0>, Balance<T1>)
fun swap_in_pool<T0, T1>(&Clock,&mut Pool<T0, T1>,bool,bool,u64,u128): SwapResult
public fun swap_pay_amount<T0, T1>(&FlashSwapReceipt<T0, T1>): u64
fun update_data_for_delta_l<T0, T1>(&Clock,&mut Pool<T0, T1>,&mut position::Position,i128::I128): (u64, u64)
public(package) fun update_pause_status<T0, T1>(&mut Pool<T0, T1>,bool)
public(package) fun update_pool_reward_emission<T0, T1, T2>(&mut Pool<T0, T1>,Balance<T2>,u64)
fun update_pool_state<T0, T1>(&mut Pool<T0, T1>,SwapResult,u64)
public(package) fun update_reward_infos<T0, T1>(&mut Pool<T0, T1>,u64): vector<u128>
public fun verify_pool_manager<T0, T1>(&Pool<T0, T1>,address): bool
public(package) fun withdraw_balances<T0, T1>(&mut Pool<T0, T1>,u64,u64): (Balance<T0>, Balance<T1>)