Home | History | Annotate | Download | only in include

Lines Matching full:intmax_t

55   template<intmax_t _Pn>
57 : integral_constant<intmax_t, (_Pn < 0) ? -1 : 1>
60 template<intmax_t _Pn>
62 : integral_constant<intmax_t, _Pn * __static_sign<_Pn>::value>
65 template<intmax_t _Pn, intmax_t _Qn>
68 template<intmax_t _Pn, intmax_t _Qn>
73 template<intmax_t _Pn>
75 : integral_constant<intmax_t, __static_abs<_Pn>::value>
78 template<intmax_t _Qn>
80 : integral_constant<intmax_t, __static_abs<_Qn>::value>
83 // Let c = 2^(half # of bits in an intmax_t)
88 // is representable by intmax_t.
89 template<intmax_t _Pn, intmax_t _Qn>
93 static const uintmax_t __c = uintmax_t(1) << (sizeof(intmax_t) * 4);
110 static const intmax_t value = _Pn * _Qn;
114 template<intmax_t _Pn, intmax_t _Qn, bool>
119 template<intmax_t _Pn, intmax_t _Qn>
124 template<intmax_t _Pn, intmax_t _Qn>
129 template<intmax_t _Pn, intmax_t _Qn>
135 static const intmax_t value = _Pn + _Qn;
143 * type intmax_t. The ratio is simplified when instantiated.
152 template<intmax_t _Num, intmax_t _Den = 1>
160 static constexpr intmax_t num =
163 static constexpr intmax_t den =
169 template<intmax_t _Num, intmax_t _Den>
170 constexpr intmax_t ratio<_Num, _Den>::num;
172 template<intmax_t _Num, intmax_t _Den>
173 constexpr intmax_t ratio<_Num, _Den>::den;
180 static constexpr intmax_t __gcd =
182 static constexpr intmax_t __n = __safe_add<
188 static constexpr intmax_t __gcd2 = __static_gcd<__n, __gcd>::value;
194 static constexpr intmax_t num = type::num;
195 static constexpr intmax_t den = type::den;
199 constexpr intmax_t ratio_add<_R1, _R2>::num;
202 constexpr intmax_t ratio_add<_R1, _R2>::den;
212 static constexpr intmax_t num = type::num;
213 static constexpr intmax_t den = type::den;
217 constexpr intmax_t ratio_subtract<_R1, _R2>::num;
220 constexpr intmax_t ratio_subtract<_R1, _R2>::den;
227 static const intmax_t __gcd1 =
229 static const intmax_t __gcd2 =
239 static constexpr intmax_t num = type::num;
240 static constexpr intmax_t den = type::den;
244 constexpr intmax_t ratio_multiply<_R1, _R2>::num;
247 constexpr intmax_t ratio_multiply<_R1, _R2>::den;
259 static constexpr intmax_t num = type::num;
260 static constexpr intmax_t den = type::den;
264 constexpr intmax_t ratio_divide<_R1, _R2>::num;
267 constexpr intmax_t ratio_divide<_R1, _R2>::den;
289 template<typename _R1, typename _R2, intmax_t __q1 = _R1::num / _R1::den,
290 intmax_t __q2 = _R2::num / _R2::den, bool __eq = (__q1 == __q2)>
296 template<typename _R1, typename _R2, intmax_t __q1, intmax_t __q2>
307 template<intmax_t __d1, typename _R2>
312 template<typename _R1, intmax_t __d2>
317 template<intmax_t __d1, intmax_t __d2>