di 0.1.0
Loading...
Searching...
No Matches
ratio.h File Reference

Go to the source code of this file.

Classes

struct  di::math::Ratio< numerator, denominator >
struct  di::Ratio< numerator, denominator >

Namespaces

namespace  di
namespace  di::math

Typedefs

using di::math::ratio_intmax_t = i64
template<Rational< ratio_intmax_t > rational>
using di::math::RatioFromRational = Ratio<rational.numerator(), rational.denominator()>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioAdd = RatioFromRational<A::rational + B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioSubtract = RatioFromRational<A::rational - B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioMultiply = RatioFromRational<A::rational * B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioDivide = RatioFromRational<A::rational / B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioEqual = Constexpr<A::rational == B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioNotEqual = Constexpr<A::rational != B::rational>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioLess = Constexpr<(A::rational < B::rational)>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioLessEqual = Constexpr<(A::rational <= B::rational)>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioGreater = Constexpr<(A::rational > B::rational)>
template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioGreaterEqual = Constexpr<(A::rational >= B::rational)>
using di::math::Atto = Ratio<1, 1000000000000000000>
using di::math::Femto = Ratio<1, 1000000000000000>
using di::math::Pico = Ratio<1, 1000000000000>
using di::math::Nano = Ratio<1, 1000000000>
using di::math::Micro = Ratio<1, 1000000>
using di::math::Milli = Ratio<1, 1000>
using di::math::Centi = Ratio<1, 100>
using di::math::Deci = Ratio<1, 10>
using di::math::Deca = Ratio<10>
using di::math::Hecto = Ratio<100>
using di::math::Kilo = Ratio<1000>
using di::math::Mega = Ratio<1000000>
using di::math::Giga = Ratio<1000000000>
using di::math::Tera = Ratio<1000000000000>
using di::math::Peta = Ratio<1000000000000000>
using di::math::Exa = Ratio<1000000000000000000>
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioAdd
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioDivide
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioMultiply
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioSubtract
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioEqual
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioGreater
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioGreaterEqual
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioLess
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioLessEqual
template<detail::IsRatio A, detail::IsRatio B>
using di::RatioNotEqual