Struct conch_runtime::eval::EvalRedirectOrVarAssig2
[−]
[src]
#[must_use = "futures do nothing unless polled"]pub struct EvalRedirectOrVarAssig2<R, V, W, I, E: ?Sized, RR, VR> where
R: RedirectEval<E>,
V: Hash + Eq,
W: WordEval<E>, { /* fields omitted */ }
A future which will evaluate a series of redirections and variable assignments.
All redirections will be applied to the environment. On successful completion,
a RedirectRestorer will be returned which allows the caller to reverse the
changes from applying these redirections. On error, the redirections will
be automatically restored.
In addition, all evaluated variable names and values to be assigned will be
evaluated and added to the environment. On successful completeion, a
VarRestorer will be returned which allows the caller to reverse the
changes from applying those assignments. On error, the assignments will be
automatically restored.
Trait Implementations
impl<R, V, W, I, E: ?Sized, RR, VR> Debug for EvalRedirectOrVarAssig2<R, V, W, I, E, RR, VR> where
I: Debug,
R: RedirectEval<E>,
R::EvalFuture: Debug,
V: Hash + Eq + Debug,
W: WordEval<E>,
W::EvalFuture: Debug,
W::EvalResult: Debug,
RR: Debug,
VR: Debug, [src]
I: Debug,
R: RedirectEval<E>,
R::EvalFuture: Debug,
V: Hash + Eq + Debug,
W: WordEval<E>,
W::EvalFuture: Debug,
W::EvalResult: Debug,
RR: Debug,
VR: Debug,
impl<R, V, W, I, E: ?Sized, RR, VR> EnvFuture<E> for EvalRedirectOrVarAssig2<R, V, W, I, E, RR, VR> where
I: Iterator<Item = RedirectOrVarAssig<R, V, W>>,
R: RedirectEval<E, Handle = E::FileHandle>,
R::Error: From<RedirectionError>,
V: Hash + Eq,
W: WordEval<E>,
E: AsyncIoEnvironment + FileDescEnvironment + VariableEnvironment,
E::FileHandle: From<FileDesc> + Borrow<FileDesc>,
E::VarName: Borrow<String> + From<V>,
E::Var: Borrow<String> + From<W::EvalResult>,
RR: RedirectEnvRestorer<E>,
VR: VarEnvRestorer2<E>, [src]
I: Iterator<Item = RedirectOrVarAssig<R, V, W>>,
R: RedirectEval<E, Handle = E::FileHandle>,
R::Error: From<RedirectionError>,
V: Hash + Eq,
W: WordEval<E>,
E: AsyncIoEnvironment + FileDescEnvironment + VariableEnvironment,
E::FileHandle: From<FileDesc> + Borrow<FileDesc>,
E::VarName: Borrow<String> + From<V>,
E::Var: Borrow<String> + From<W::EvalResult>,
RR: RedirectEnvRestorer<E>,
VR: VarEnvRestorer2<E>,
type Item = (RR, VR)
The type of value that this future will resolved with if it is successful. Read more
type Error = EvalRedirectOrVarAssigError<R::Error, W::Error>
The type of error that this future will resolve with if it fails in a normal fashion. Read more
fn poll(&mut self, env: &mut E) -> Poll<Self::Item, Self::Error>[src]
Behaves identical to Future::poll when polled with a provided environment. Read more
fn cancel(&mut self, env: &mut E)[src]
Cancel a future and consider it as completed, thus giving it a chance to run any clean up as if it had resolved on its own. Read more
fn pin_env(self, env: E) -> Pinned<E, Self> where
E: Sized,
Self: Sized, [src]
E: Sized,
Self: Sized,
Pin an environment to this future, allowing the resulting future to be polled from anywhere without needing the caller to specify an environment. Read more
fn fuse(self) -> Fuse<Self> where
Self: Sized, [src]
Self: Sized,
Fuse a future such that poll and cancel will never again be called once it has completed. Read more
fn boxed_result<'a>(self) -> BoxedResult<'a, Self> where
Self: Sized,
Self::Item: 'a + Future, [src]
Self: Sized,
Self::Item: 'a + Future,
Converts the resulting future into a boxed trait object. Read more