diff options
author | Daniel Mueller <deso@posteo.net> | 2020-09-03 08:39:04 -0700 |
---|---|---|
committer | Daniel Mueller <deso@posteo.net> | 2020-09-03 08:39:04 -0700 |
commit | ac19dd1b91ee29bf67c44503c99297483df5c374 (patch) | |
tree | fa5a9f3dd7ebf422b0c9339cf5ce3df7a288089c | |
parent | 6a9c31f19617f01f17d71b8a85f94cf6877fe7c8 (diff) | |
download | nitrocli-ac19dd1b91ee29bf67c44503c99297483df5c374.tar.gz nitrocli-ac19dd1b91ee29bf67c44503c99297483df5c374.tar.bz2 |
Remove Stdio trait
With the switch from argparse over to structopt a while back the need
for the Stdio trait that we used for abstracting over the different
contexts vanished. With this change we remove the trait and its various
implementations.
-rw-r--r-- | src/main.rs | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/src/main.rs b/src/main.rs index b53358e..9e52613 100644 --- a/src/main.rs +++ b/src/main.rs @@ -85,25 +85,6 @@ const NITROCLI_NEW_ADMIN_PIN: &str = "NITROCLI_NEW_ADMIN_PIN"; const NITROCLI_NEW_USER_PIN: &str = "NITROCLI_NEW_USER_PIN"; const NITROCLI_PASSWORD: &str = "NITROCLI_PASSWORD"; -trait Stdio { - fn stdio(&mut self) -> (&mut dyn io::Write, &mut dyn io::Write); -} - -impl<'io> Stdio for RunCtx<'io> { - fn stdio(&mut self) -> (&mut dyn io::Write, &mut dyn io::Write) { - (self.stdout, self.stderr) - } -} - -impl<W> Stdio for (&mut W, &mut W) -where - W: io::Write, -{ - fn stdio(&mut self) -> (&mut dyn io::Write, &mut dyn io::Write) { - (self.0, self.1) - } -} - /// A command execution context that captures additional data pertaining /// the command execution. #[allow(missing_debug_implementations)] @@ -126,12 +107,6 @@ pub struct ExecCtx<'io> { pub config: config::Config, } -impl<'io> Stdio for ExecCtx<'io> { - fn stdio(&mut self) -> (&mut dyn io::Write, &mut dyn io::Write) { - (self.stdout, self.stderr) - } -} - /// Parse the command-line arguments and execute the selected command. fn handle_arguments(ctx: &mut RunCtx<'_>, args: Vec<String>) -> anyhow::Result<()> { use structopt::StructOpt; |