The problem is that nanos_part implies that itās only nanoseconds; not milli- or microseconds. Actually, thatās a problem with secs/seconds: Iāve seen APIs that provide each ātierā independently, and it wouldnāt be obvious from a glance what this API is doing.
What about as_secs for āthis duration represented as secondsā? I think that has a much stronger implication that itās the whole duration, not just the seconds portion.
In that case, Iād also go for subsec_nanos over extra_nanos or nanos_part. That said, I donāt think extra_nanos is much worse, but for one extra character, subsec_nanos seems clearer.
Itād also be very nice to have convenience methods that deal in f64s (e.g. as_frac_secs) for when you want sub-second precision, but donāt care about nanosecond precision. Obviously, those can be bolted on later, though theyād be nice to have in the first pass none the less. 