fmt/strtime: support parsing and formatting fractional seconds #55
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This isn't supported in the analogous C APIs, but it turns out it was
supported in the
chrono
crate and was actually being used.This adds two new directives,
%f
and%.f
. The former always writesout at least one digit (and parsing requires at least one digit) and
corresponds to the number of fractional nanoseconds. The latter includes
the leading
.
and is satisfied by the empty string. That is, if a.
isn't found when
%.f
is expected, then it is skipped entirely whenparsing. Similarly, when formatting, if there are no fractional seconds
(i.e., the subsecond component is
0
), then no fractional component iswritten either.
It is expected that most use cases will reach for just
%.f
, since itwill just do the "right" thing without thinking much about it. For
example,
%H:%M:%S%.f
will parse both23:30:01
and23:30:01.789
.Closes #54