p2p/network/identify/
p2p_network_identify_reducer.rs

1use super::{stream::P2pNetworkIdentifyStreamState, P2pNetworkIdentifyAction};
2use crate::P2pLimits;
3use openmina_core::Substate;
4use redux::ActionWithMeta;
5
6impl super::P2pNetworkIdentifyState {
7    pub fn reducer<Action, State>(
8        state_context: Substate<Action, State, Self>,
9        action: ActionWithMeta<P2pNetworkIdentifyAction>,
10        limits: &P2pLimits,
11    ) -> Result<(), String>
12    where
13        State: crate::P2pStateTrait,
14        Action: crate::P2pActionTrait<State>,
15    {
16        let (action, meta) = action.split();
17        match action {
18            P2pNetworkIdentifyAction::Stream(action) => P2pNetworkIdentifyStreamState::reducer(
19                state_context,
20                meta.with_action(action),
21                limits,
22            ),
23        }
24    }
25}