pub fn second<A, B, Env, E1, E2>( e1: E1, e2: E2, ) -> BoxedEffect<B, AnalysisError, Env>where A: Send + 'static, B: Send + 'static, Env: Clone + Send + Sync + 'static, E1: Effect<Output = A, Error = AnalysisError, Env = Env> + Send + 'static, E2: Effect<Output = B, Error = AnalysisError, Env = Env> + Send + 'static,
Run the first effect, returning the second’s value.
This is useful when the first effect has side effects but you want the second’s result.
let effect = second(setup_context(), compute_result()); // Returns compute_result's value, but setup_context runs first