Struct conch_runtime::eval::EvalRedirectOrCmdWord [−][src]
#[must_use = "futures do nothing unless polled"]pub struct EvalRedirectOrCmdWord<R, W, I, E: ?Sized, RR = RedirectRestorer<E>> where
R: RedirectEval<E>,
W: WordEval<E>, { /* fields omitted */ }
A future which will evaluate a series of redirections and shell words.
All redirections will be applied to the environment. On successful completion,
a RedirectEnvRestorer
will be returned which allows the caller to reverse the
changes from applying these redirections. On error, the redirections will
be automatically restored.
Trait Implementations
impl<R, W, I, E: ?Sized, RR> Debug for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Debug,
R: RedirectEval<E>,
R::EvalFuture: Debug,
W: WordEval<E>,
W::EvalFuture: Debug,
W::EvalResult: Debug,
RR: Debug,
[src]
impl<R, W, I, E: ?Sized, RR> Debug for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Debug,
R: RedirectEval<E>,
R::EvalFuture: Debug,
W: WordEval<E>,
W::EvalFuture: Debug,
W::EvalResult: Debug,
RR: Debug,
fn fmt(&self, fmt: &mut Formatter) -> Result
[src]
fn fmt(&self, fmt: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<R, W, I, E: ?Sized, RR> EnvFuture<E> for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Iterator<Item = RedirectOrCmdWord<R, W>>,
R: RedirectEval<E, Handle = E::FileHandle>,
R::Error: From<RedirectionError>,
W: WordEval<E>,
E: AsyncIoEnvironment + FileDescEnvironment,
E::FileHandle: From<FileDesc>,
RR: RedirectEnvRestorer<E>,
[src]
impl<R, W, I, E: ?Sized, RR> EnvFuture<E> for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Iterator<Item = RedirectOrCmdWord<R, W>>,
R: RedirectEval<E, Handle = E::FileHandle>,
R::Error: From<RedirectionError>,
W: WordEval<E>,
E: AsyncIoEnvironment + FileDescEnvironment,
E::FileHandle: From<FileDesc>,
RR: RedirectEnvRestorer<E>,
type Item = (RR, Vec<W::EvalResult>)
The type of value that this future will resolved with if it is successful. Read more
type Error = EvalRedirectOrCmdWordError<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]
fn poll(&mut self, env: &mut E) -> Poll<Self::Item, Self::Error>
Behaves identical to Future::poll
when polled with a provided environment. Read more
fn cancel(&mut self, env: &mut E)
[src]
fn cancel(&mut self, env: &mut E)
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]
fn pin_env(self, env: E) -> Pinned<E, Self> where
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]
fn fuse(self) -> Fuse<Self> where
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]
fn boxed_result<'a>(self) -> BoxedResult<'a, Self> where
Self: Sized,
Self::Item: 'a + Future,
Converts the resulting future into a boxed trait object. Read more
Auto Trait Implementations
impl<R, W, I, E: ?Sized, RR> Send for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Send,
RR: Send,
<R as RedirectEval<E>>::EvalFuture: Send,
<W as WordEval<E>>::EvalFuture: Send,
<W as WordEval<E>>::EvalResult: Send,
impl<R, W, I, E: ?Sized, RR> Send for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Send,
RR: Send,
<R as RedirectEval<E>>::EvalFuture: Send,
<W as WordEval<E>>::EvalFuture: Send,
<W as WordEval<E>>::EvalResult: Send,
impl<R, W, I, E: ?Sized, RR> Sync for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Sync,
RR: Sync,
<R as RedirectEval<E>>::EvalFuture: Sync,
<W as WordEval<E>>::EvalFuture: Sync,
<W as WordEval<E>>::EvalResult: Sync,
impl<R, W, I, E: ?Sized, RR> Sync for EvalRedirectOrCmdWord<R, W, I, E, RR> where
I: Sync,
RR: Sync,
<R as RedirectEval<E>>::EvalFuture: Sync,
<W as WordEval<E>>::EvalFuture: Sync,
<W as WordEval<E>>::EvalResult: Sync,