aboutsummaryrefslogtreecommitdiff
path: root/vendor/anstyle-wincon/examples/set-wincon.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/anstyle-wincon/examples/set-wincon.rs')
-rw-r--r--vendor/anstyle-wincon/examples/set-wincon.rs58
1 files changed, 0 insertions, 58 deletions
diff --git a/vendor/anstyle-wincon/examples/set-wincon.rs b/vendor/anstyle-wincon/examples/set-wincon.rs
deleted file mode 100644
index 6febb0a..0000000
--- a/vendor/anstyle-wincon/examples/set-wincon.rs
+++ /dev/null
@@ -1,58 +0,0 @@
-#![cfg_attr(not(windows), allow(dead_code))]
-
-#[cfg(not(windows))]
-fn main() {
- panic!("unsupported");
-}
-
-#[cfg(windows)]
-fn main() -> Result<(), lexopt::Error> {
- use anstyle_wincon::WinconStream as _;
-
- let args = Args::parse()?;
- let stdout = std::io::stdout();
- let mut stdout = stdout.lock();
-
- let fg = args.fg.and_then(|c| c.into_ansi());
- let bg = args.bg.and_then(|c| c.into_ansi());
-
- let _ = stdout.write_colored(fg, bg, "".as_bytes());
-
- std::mem::forget(stdout);
-
- Ok(())
-}
-
-#[derive(Default)]
-struct Args {
- fg: Option<anstyle::Ansi256Color>,
- bg: Option<anstyle::Ansi256Color>,
-}
-
-impl Args {
- fn parse() -> Result<Self, lexopt::Error> {
- use lexopt::prelude::*;
-
- let mut res = Args::default();
-
- let mut args = lexopt::Parser::from_env();
- while let Some(arg) = args.next()? {
- match arg {
- Long("fg") => {
- res.fg = Some(
- args.value()?
- .parse_with(|s| s.parse::<u8>().map(anstyle::Ansi256Color))?,
- );
- }
- Long("bg") => {
- res.fg = Some(
- args.value()?
- .parse_with(|s| s.parse::<u8>().map(anstyle::Ansi256Color))?,
- );
- }
- _ => return Err(arg.unexpected()),
- }
- }
- Ok(res)
- }
-}