var._cmpUlongVsDouble
private
int _cmpUlongVsDouble(ulong u, double d) static @safe pure nothrow @nogcExact ordering between a non-negative ulong magnitude and a positive finite double.
Converting the integer to double first would round it (above 2^53 integers lose distinctions), making mixed ordering non-transitive; this helper instead truncates the double side to its exact integral part and compares magnitudes, then the fraction.
Preconditions: d > 0, finite, and not NaN.