rpn-reckoner 0.1.3

A Reverse Polish Notation library
Documentation
  • Coverage
  • 100%
    2 out of 2 items documented1 out of 2 items with examples
  • Size
  • Source code size: 9.22 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.09 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 10s Average build duration of successful builds.
  • all releases: 10s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • rei-ashine/rpn-reckoner
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • Rei-Ashine

RPN-Reckoner

DATE: Feb. 8th, 2023

This package provides a Rust library and an executable for doing Reverse Polish Notation (: RPN) calculations.

Library

This package's library allows for evaluating RPN expressions by using the function rpn_reckoner::eval(expression: String) -> Result<f64, String>. This function takes an RPN expression as a string argument and returns a result, either the evaluated value as a float or an error message as a string.

Installation

cargo add rpn_reckoner

Example1

extern crate rpn_reckoner;


fn main() {
    let expression = String::from("3 2 +");
    let solution = rpn_reckoner::eval(expression).unwrap();
    println!("{}", solution); // -> 5
}

Example2

extern crate rpn_reckoner;


fn main() {
    let expression = String::from("6 4 ! +");
    let solution = rpn_reckoner::eval(expression).unwrap();
    println!("{}", solution); // -> 30
}

Read-Eval-Print Loop (: REPL)

git clone https://github.com/Rei-Ashine/rpn-reckoner.git

To start the REPL for evaluating RPN expressions, the command cargo run should be run in the terminal.

REPL

Directory Structure

.
├── README.md
├── Cargo.toml
├── LICENSE
└── src
    ├── lib.rs
    ├── main.rs
    ├── operation.rs
    └── test.rs

===============================================================================
 Language            Files        Lines         Code     Comments       Blanks
===============================================================================
 TOML                    1           20           17            0            3
-------------------------------------------------------------------------------
 Markdown                1           46            0           29           17
 |- Rust                 1           16           12            0            4
 (Total)                             62           12           29           21
-------------------------------------------------------------------------------
 Rust                    4          145          105            8           32
 |- Markdown             1           27            0           27            0
 (Total)                            172          105           35           32
===============================================================================
 Total                   6          211          122           37           52
===============================================================================

Reference

ref1

License