In general I would expect you should also explicitly provide e.g. digits, since it’s not always obvious what it would mean to round up to n digits. (Say you want to round a Date. Then ‘digits’ might mean you want to round up to a day, week, month, etc. But there will not be any default mechanism to fall back on. (Edit: round is actually already canonically implemented for Dates, where you should just provide Day, Week, Month,… The keyword digits is not supported. )
But in this case you can just pass through all keyword arguments to round(::T).
Thank you. Yes, in the case of Interval, you can do that, but that’s only possible because the fields are floats for which we already have the methods with the keyword arguments implemented.
The keyword arguments digits and sigdigits make sense for rounding a Decimal, and I have an implementation. However, I already had to add some extra methods to resolve ambiguities, and the whole thing starts to feel “awkward”, which makes me think that I am not connecting to the whole round-machinery as I should.