async fn next_step(
        &self,
        pipeline_state: &Self::PipelineState,
        _client_state: Arc<RwLock<State>>,
    ) -> Result<Option<Self::ActionType>> {
        // If we have a response already, things are done
        if let Some(_) = pipeline_state {
            Ok(None)
        }
        // Else this request itself is the first (and only) item in the pipeline
        else {
            Ok(Some(self.clone()))
        }
    }
// This will only return a next step once assuming state is set by client in `process_step`
This will only return a next step once assuming state is set by client in `process_step`
This will only return a next step once assuming state is set by client in ` process_step `
async fn next_step(
        &self,
        pipeline_state: &Self::PipelineState,
        _client_state: Arc<RwLock<State>>,
    ) -> Result<Option<Self::ActionType>> {
        // If we have a response already, things are done
        if let Some(_) = pipeline_state {
            Ok(None)
        }
        // Else this request itself is the first (and only) item in the pipeline
        else {
            Ok(Some(self.clone()))
        }
    }
async fn next_step ( & self , pipeline_state : & Self :: PipelineState , _client_state : Arc < RwLock < State > > , ) -> Result < Option < Self :: ActionType > > { // If we have a response already, things are done if let Some ( _ ) = pipeline_state { Ok ( None ) } // Else this request itself is the first (and only) item in the pipeline else { Ok ( Some ( self . clone ( ) ) ) } }
This will only return a next step once assuming state is set by client in `process_step`
This will only return a next step once assuming state is set by client in ` process_step `
&self
pipeline_state
&Self::PipelineState
_client_state
Arc<RwLock<State>>