Tick
Manages tick processes and computes variables stored in the tick state
tickSpacingToMaxLiquidityPerTick
Derives max liquidity per tick from given tick spacing. Executed within the pool constructor.
Params:
Name
Type
Description
tickSpacing
int24
The amount of required tick separation, realized in multiples of tickSpacing
Returns:
Type
Description
uint128
Maximum liquidity per tick
getGrowthInside
Computes growth of fees, collateral, Spear and Shield deltas within a tick boundary.
Params:
Name
Type
Description
self
mapping(int24 => struct Tick.Info)
tickLower
int24
The lower tick boundary of the position
tickUpper
int24
The upper tick boundary of the position
tickCurrent
int24
The current tick
global
GrowthX128
Returns:
Name
Type
Description
inside
GrowthX128
update
Updates a tick and returns true if the tick was flipped from initialized to uninitialized, or vice versa.
Params:
Name
Type
Description
self
mapping(int24 => struct Tick.Info)
tick
int24
The tick that will be updated
tickCurrent
int24
The current tick
liquidityDelta
int128
The change in liquidity
global
GrowthX128
maxLiquidity
uint128
The maximum liquidity allocation for a single tick
upper
bool
Indicates whether the tick represents the upper boundary
Returns:
Name
Type
Description
flipped
bool
Whether the tick was flipped from initialized to uninitialized, or vice versa
clear
Clears tick data
Params:
Name
Type
Description
self
mapping(int24 => struct Tick.Info)
tick
int24
The tick that will be cleared
cross
Transitions to next tick as needed by price movement
Params:
Name
Type
Description
self
mapping(int24 => struct Tick.Info)
tick
int24
The destination tick of the transition
global
GrowthX128
Returns:
Name
Type
Description
liquidityNet
int128
The net liquidity
Last updated