A minimal library for representing rational numbers (ratios of integers).
Construction
// Rationals are automatically reduced when created:
let one_half = new;
let two_quarters = new;
assert_eq!;
// You can use Rationals to make new Rationals:
let one_half_over_one_quarter = new;
assert_eq!;
Mathematical operations
// Operations are implemented for Rationals and integers:
let one_ninth = new;
assert_eq!;
assert_eq!;
assert_eq!;
Other properties
// Inverse:
let eight_thirds = new;
let inverse = eight_thirds.inverse;
assert_eq!;
// Mixed fractions:
let = eight_thirds.mixed_fraction;
assert_eq!;
assert_eq!;