145
147 if (shift <= 0) {
148 return static_cast<u32
>(
value);
149 }
150 if (shift >= 64) {
151 return 0;
152 }
153 const u64 half =
u64(1) << (shift - 1);
154 const u64 mask = (
u64(1) << shift) - 1;
155 const u64 truncated =
value >> shift;
157 const bool round_up = remainder > half || (remainder == half && (truncated & 1));
u32 round_shift_right_u64(u64 value, int shift) FL_NO_EXCEPT
u8 u8 fract8 blur_amount FL_NO_EXCEPT
constexpr int type_rank< T >::value
integral_constant< bool, true > true_type