pub fn limit_denominator(
numerator: &BigInt,
denominator: &BigInt,
limit: &BigInt,
) -> Result<(BigInt, BigInt)>Expand description
The fraction nearest numerator / denominator whose denominator is at
most limit: Python’s Fraction.limit_denominator, which music21’s
_preFracLimitDenominator copies. A fraction already within the limit
comes back as it is.
use music21::common::numbertools::limit_denominator;
use num::BigInt;
let third = limit_denominator(&100_001.into(), &300_001.into(), &65535.into())?;
assert_eq!(third, (BigInt::from(1), BigInt::from(3)));§Errors
A limit below one, which no denominator meets.