Skip to content

Commit 5f82fb7

Browse files
committed
Add some more description of interactions between Display and FromStr
1 parent 6a09a85 commit 5f82fb7

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

library/core/src/str/traits.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -761,6 +761,12 @@ unsafe impl SliceIndex<str> for ops::RangeToInclusive<usize> {
761761
/// mistake, unless the type has provided and documented additional guarantees about its `Display`
762762
/// and `FromStr` implementations.
763763
///
764+
/// If a type happens to have a lossless `Display` implementation whose output is meant to be
765+
/// conveniently machine-parseable and not just meant for human consumption, then the type may wish
766+
/// to accept the same format in `FromStr`, and document that usage. Having both `Display` and
767+
/// `FromStr` implementations where the result of `Display` cannot be parsed with `FromStr` may
768+
/// surprise users. (However, the result of such parsing may not have the same value as the input.)
769+
///
764770
/// # Examples
765771
///
766772
/// Basic implementation of `FromStr` on an example `Point` type:

0 commit comments

Comments
 (0)