Skip to content

Latest commit

 

History

History
47 lines (36 loc) · 1.18 KB

README.md

File metadata and controls

47 lines (36 loc) · 1.18 KB

calc

Build Status crates.io

calc is a Rust library for tokenizing and evaluating arithmetic expressions with a command line application of the same name included.

NOTE: The name of the project, binary, and library are calc but the package name is calculate. This will remain depending on if this project can acquire the calc crate which is currently being squatted on.

Usage

As a Library

Add calc as a dependency in your Cargo.toml:

[dependencies]
calculate = "0.5.*"

Then make use of the library functions:

extern crate calc;

use calc::eval;
use std::io::{self, BufRead, stdout, stdin, Write};

fn main() {
    let stdout = stdout();
    let mut stdout = stdout.lock();
    let stdin = stdin();
    for line in stdin.lock().lines() {
        match line.unwrap().trim() {
            "" => (),
            "exit" => break,
            s => writeln!(stdout, "{}", eval(s)).unwrap(),
        }
    }
}

As an Executable

$ cargo install calculate
...
$ calc