summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/clippy_dummy/build.rs
blob: 21af4f8244f44f93d5d2b73c5cde5af59162c8aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
use term::color::{GREEN, RED, WHITE};
use term::{Attr, Error, Result};

fn main() {
    if foo().is_err() {
        eprintln!(
            "error: Clippy is no longer available via crates.io\n\n\
             help: please run `rustup component add clippy` instead"
        );
    }
    std::process::exit(1);
}

fn foo() -> Result<()> {
    let mut t = term::stderr().ok_or(Error::NotSupported)?;

    t.attr(Attr::Bold)?;
    t.fg(RED)?;
    write!(t, "\nerror: ")?;

    t.reset()?;
    t.fg(WHITE)?;
    writeln!(t, "Clippy is no longer available via crates.io\n")?;

    t.attr(Attr::Bold)?;
    t.fg(GREEN)?;
    write!(t, "help: ")?;

    t.reset()?;
    t.fg(WHITE)?;
    write!(t, "please run `")?;

    t.attr(Attr::Bold)?;
    write!(t, "rustup component add clippy")?;

    t.reset()?;
    t.fg(WHITE)?;
    writeln!(t, "` instead")?;

    t.reset()?;
    Ok(())
}