pub struct PoolAnalytics {
pub total_amount0_deposited: U256,
pub total_amount1_deposited: U256,
pub total_amount0_collected: U256,
pub total_amount1_collected: U256,
pub total_swaps: u64,
pub total_mints: u64,
pub total_burns: u64,
pub total_fee_collects: u64,
pub total_flashes: u64,
pub liquidity_utilization_rate: f64,
}Expand description
Analytics counters and metrics for pool operations.
It tracks cumulative statistics about pool activity, including deposit and collection flows, event counts, and performance metrics for debugging.
Fields§
§total_amount0_deposited: U256Total amount of token0 deposited through mints.
total_amount1_deposited: U256Total amount of token1 deposited through mints.
total_amount0_collected: U256Total amount of token0 collected
total_amount1_collected: U256Total amount of token1 collected.
total_swaps: u64Total number of swap events processed.
total_mints: u64Total number of mint events processed.
total_burns: u64Total number of burn events processed.
total_fee_collects: u64Total number of fee collection events processed.
total_flashes: u64Total number of flash events processed.
liquidity_utilization_rate: f64Liquidity utilization rate (active liquidity / total liquidity)
Trait Implementations§
Source§impl Clone for PoolAnalytics
impl Clone for PoolAnalytics
Source§fn clone(&self) -> PoolAnalytics
fn clone(&self) -> PoolAnalytics
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PoolAnalytics
impl Debug for PoolAnalytics
Source§impl Default for PoolAnalytics
impl Default for PoolAnalytics
Source§impl<'de> Deserialize<'de> for PoolAnalytics
impl<'de> Deserialize<'de> for PoolAnalytics
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<'py> IntoPyObject<'py> for PoolAnalytics
impl<'py> IntoPyObject<'py> for PoolAnalytics
Source§type Target = PoolAnalytics
type Target = PoolAnalytics
The Python output type
Source§type Output = Bound<'py, <PoolAnalytics as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <PoolAnalytics as IntoPyObject<'py>>::Target>
The smart pointer type to use. Read more
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Performs the conversion.
Source§impl PartialEq for PoolAnalytics
impl PartialEq for PoolAnalytics
Source§impl PyClass for PoolAnalytics
impl PyClass for PoolAnalytics
Source§impl PyClassImpl for PoolAnalytics
impl PyClassImpl for PoolAnalytics
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[pyclass(subclass)]
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
#[pyclass(immutable_type)]
Source§const RAW_DOC: &'static CStr = /// Analytics counters and metrics for pool operations.
///
/// It tracks cumulative statistics about pool activity, including
/// deposit and collection flows, event counts, and performance metrics for debugging.
const RAW_DOC: &'static CStr = /// Analytics counters and metrics for pool operations. /// /// It tracks cumulative statistics about pool activity, including /// deposit and collection flows, event counts, and performance metrics for debugging.
Docstring for the class provided on the struct or enum. Read more
Source§const DOC: &'static CStr
const DOC: &'static CStr
Fully rendered class doc, including the
text_signature if a constructor is defined. Read moreSource§type ThreadChecker = SendablePyClass<PoolAnalytics>
type ThreadChecker = SendablePyClass<PoolAnalytics>
This handles following two situations: Read more
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn dict_offset() -> Option<isize>
fn weaklist_offset() -> Option<isize>
Source§impl<'a, 'holder, 'py> PyFunctionArgument<'a, 'holder, 'py, false> for &'holder PoolAnalytics
impl<'a, 'holder, 'py> PyFunctionArgument<'a, 'holder, 'py, false> for &'holder PoolAnalytics
Source§impl<'a, 'holder, 'py> PyFunctionArgument<'a, 'holder, 'py, false> for &'holder mut PoolAnalytics
impl<'a, 'holder, 'py> PyFunctionArgument<'a, 'holder, 'py, false> for &'holder mut PoolAnalytics
Source§impl PyTypeInfo for PoolAnalytics
impl PyTypeInfo for PoolAnalytics
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
Checks if
object is an instance of this type or a subclass of this type.§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
Checks if
object is an instance of this type.Source§impl Serialize for PoolAnalytics
impl Serialize for PoolAnalytics
impl DerefToPyAny for PoolAnalytics
impl StructuralPartialEq for PoolAnalytics
Auto Trait Implementations§
impl Freeze for PoolAnalytics
impl RefUnwindSafe for PoolAnalytics
impl Send for PoolAnalytics
impl Sync for PoolAnalytics
impl Unpin for PoolAnalytics
impl UnwindSafe for PoolAnalytics
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FromPyObject<'_> for Twhere
T: PyClass + Clone,
impl<T> FromPyObject<'_> for Twhere
T: PyClass + Clone,
§fn extract_bound(obj: &Bound<'_, PyAny>) -> Result<T, PyErr>
fn extract_bound(obj: &Bound<'_, PyAny>) -> Result<T, PyErr>
§impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
§fn from_py_object_bound(ob: Borrowed<'_, 'py, PyAny>) -> Result<T, PyErr>
fn from_py_object_bound(ob: Borrowed<'_, 'py, PyAny>) -> Result<T, PyErr>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
Converts
self into an owned Python object, dropping type information.§fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
Converts
self into an owned Python object, dropping type information and unbinding it
from the 'py lifetime.§fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
Converts
self into a Python object. Read more