aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Mueller <deso@posteo.net>2020-09-03 08:39:04 -0700
committerDaniel Mueller <deso@posteo.net>2020-09-03 08:39:04 -0700
commit940889b26a2fcb59a7dd0410f9efcf5deca30c82 (patch)
tree85f395669215959fd4afd3e06ff80654c43f4359
parent38d3b05fab6339d7354b6a19eadaab80ec519e6e (diff)
downloadnitrocli-940889b26a2fcb59a7dd0410f9efcf5deca30c82.tar.gz
nitrocli-940889b26a2fcb59a7dd0410f9efcf5deca30c82.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.rs25
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;