#console #stdout #stderr #stdin #cli

cnsl

A crate that provides methods and macros for interacting with the command line

3 releases

Uses new Rust 2021

0.1.3 May 27, 2022
0.1.2 May 20, 2022
0.1.1 May 17, 2022
0.1.0 May 17, 2022

#221 in Command-line interface

48 downloads per month

WTFPL license

6KB
65 lines

cnsl

cnsl is a crate for writing to the standard output, standard error, and reading from standard input.
This crate is lightly coded, and also requires no external dependencies.

Rust Build Status


Usage

readln macro


// without a prompt
use cnsl::readln;

fn main() {
    println!("What is your name?");
    let name = readln!();
    println!("Hello, {}!", name);
}

// with a prompt
use cnsl::readln;

fn main() {
    let name = readln!("Enter your name: ");
    println!("Hello, {}!", name);
}

// with a formatted prompt
// note: defaults are not actually supported, this is just a demonstration
use cnsl::readln;

const DEFAULT_AGE: u8 = 18;

fn main() {
    let age_input = readln!("Enter your age (default {}): ", DEFAULT_AGE);
    
    let age = if age_input.is_empty() {
        DEFAULT_AGE
    } else {
        age_input.parse::<u8>().expect("invalid input for age")
    };
}

Information

License

This software is licensed under the WTFPL.

Contributors


© 2022 WTFPL – Do What the Fuck You Want to Public License.

No runtime deps