balancer_maths_rust/pools/buffer/
buffer_data.rs

1use crate::common::types::BasePoolState;
2use alloy_primitives::U256;
3use serde::{Deserialize, Serialize};
4
5/// Buffer mutable state
6#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7pub struct BufferMutable {
8    pub rate: U256,
9    pub max_deposit: Option<U256>,
10    pub max_mint: Option<U256>,
11}
12
13/// Buffer immutable state
14#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
15pub struct BufferImmutable {
16    pub pool_address: String,
17    pub tokens: Vec<String>,
18}
19
20/// Buffer pool state
21#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
22pub struct BufferState {
23    pub base: BasePoolState,
24    pub mutable: BufferMutable,
25    pub immutable: BufferImmutable,
26}