#[macro_use] extern crate quicli; extern crate ansi_term; use ansi_term::Color::{Green, Red, Yellow}; use quicli::prelude::*; use std::fmt::Display; pub fn verify(left: T, right: T) { if left == right { println!("{} {} == {}", Green.bold().paint("PASS"), left, right); } else { println!( "{} You submitted {}, but that's not correct!", Red.bold().paint("FAIL"), left ); println!(" Please correct your code to make this test pass!"); } } pub fn verify_easy(left: T, right: T) { if left == right { println!("{} {} == {}", Green.bold().paint("PASS"), left, right); } else { println!( "{} You submitted {}, but that's not correct!", Red.bold().paint("FAIL"), left ); println!(" Expected: {}", right); println!(" Please correct your code to make this test pass!"); } } pub fn title(s: &str) { println!("{} {}", Yellow.bold().paint("RUN"), s); } mod about_variables; #[derive(Debug, StructOpt)] struct Cli { exercise: Option, } main!(|args: Cli| if let Some(e) = args.exercise { println!("selected {}", e); } else { println!("Welcome to {}!\n", Yellow.paint("Rustlings")); about_variables::exec(); });