[][src]Crate percentage

Percentage

percentage is a crate trying to make using percentages in a safer way and easier to debug. Whenever you see a Percentage, you will know what is being calculated, instead of having to revise the code.

Example

// You only need to import the `Percentage` struct
use percentage::Percentage;

// Here we create the percentage to apply
let percent = Percentage::from(50);

println!("{}", percent.value()); // Will print '50'

// We can apply the percent to any number we want
assert_eq!(15, percent.apply_to(30));
println!("50% of 30 is: {}", percent.apply_to(30)); // Will print '50% of 30 is: 15'

// If you need to use floating points for the percent, you can use `from_decimal` instead

let percent = Percentage::from_decimal(0.5);
assert_eq!(15.0, percent.apply_to(30.0));
println!("50% of 30.0 is: {}", percent.apply_to(30.0)); // Will print '50% of 30.0 is: 15.0'

Structs

Percentage
PercentageDecimal
PercentageInteger