Expand description
Format trait for an empty format, {}
.
Display
is similar to Debug
, but Display
is for user-facing
output, and so cannot be derived.
For more information on formatters, see the module-level documentation.
Examples
Implementing Display
on a type:
use std::fmt;
struct Point {
x: i32,
y: i32,
}
impl fmt::Display for Point {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "({}, {})", self.x, self.y)
}
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin}"), "The origin is: (0, 0)");
Required Methods
Formats the value using the given formatter.
Examples
use std::fmt;
struct Position {
longitude: f32,
latitude: f32,
}
impl fmt::Display for Position {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "({}, {})", self.longitude, self.latitude)
}
}
assert_eq!("(1.987, 2.983)",
format!("{}", Position { longitude: 1.987, latitude: 2.983, }));
Implementations on Foreign Types
1.34.0 · sourceimpl Display for NonZeroI128
impl Display for NonZeroI128
1.9.0 · sourceimpl Display for DecodeUtf16Error
impl Display for DecodeUtf16Error
sourceimpl Display for ParseBoolError
impl Display for ParseBoolError
1.34.0 · sourceimpl Display for TryFromIntError
impl Display for TryFromIntError
1.34.0 · sourceimpl Display for NonZeroI16
impl Display for NonZeroI16
1.59.0 · sourceimpl Display for TryFromCharError
impl Display for TryFromCharError
1.34.0 · sourceimpl<'a> Display for EscapeDefault<'a>
impl<'a> Display for EscapeDefault<'a>
1.28.0 · sourceimpl Display for NonZeroU64
impl Display for NonZeroU64
1.34.0 · sourceimpl Display for Infallible
impl Display for Infallible
1.28.0 · sourceimpl Display for NonZeroU128
impl Display for NonZeroU128
1.28.0 · sourceimpl Display for LayoutError
impl Display for LayoutError
1.34.0 · sourceimpl Display for NonZeroI32
impl Display for NonZeroI32
1.28.0 · sourceimpl Display for NonZeroU32
impl Display for NonZeroU32
sourceimpl Display for FromBytesUntilNulError
impl Display for FromBytesUntilNulError
1.16.0 · sourceimpl Display for EscapeDefault
impl Display for EscapeDefault
1.28.0 · sourceimpl Display for NonZeroU16
impl Display for NonZeroU16
1.20.0 · sourceimpl Display for ParseCharError
impl Display for ParseCharError
1.28.0 · sourceimpl Display for NonZeroUsize
impl Display for NonZeroUsize
sourceimpl Display for FromFloatSecsError
impl Display for FromFloatSecsError
1.34.0 · sourceimpl Display for CharTryFromError
impl Display for CharTryFromError
1.60.0 · sourceimpl<'a> Display for EscapeAscii<'a>
impl<'a> Display for EscapeAscii<'a>
sourceimpl Display for ParseFloatError
impl Display for ParseFloatError
1.17.0 · sourceimpl Display for FromBytesWithNulError
impl Display for FromBytesWithNulError
1.34.0 · sourceimpl<'a> Display for EscapeDebug<'a>
impl<'a> Display for EscapeDebug<'a>
1.39.0 · sourceimpl Display for EscapeDefault
impl Display for EscapeDefault
1.34.0 · sourceimpl Display for NonZeroI64
impl Display for NonZeroI64
1.34.0 · sourceimpl<'a> Display for EscapeUnicode<'a>
impl<'a> Display for EscapeUnicode<'a>
1.36.0 · sourceimpl Display for TryFromSliceError
impl Display for TryFromSliceError
1.13.0 · sourceimpl Display for BorrowError
impl Display for BorrowError
1.34.0 · sourceimpl Display for NonZeroIsize
impl Display for NonZeroIsize
1.16.0 · sourceimpl Display for ToUppercase
impl Display for ToUppercase
1.16.0 · sourceimpl Display for EscapeUnicode
impl Display for EscapeUnicode
1.13.0 · sourceimpl Display for BorrowMutError
impl Display for BorrowMutError
sourceimpl<T> Display for Saturating<T> where
T: Display,
impl<T> Display for Saturating<T> where
T: Display,
1.16.0 · sourceimpl Display for ToLowercase
impl Display for ToLowercase
1.20.0 · sourceimpl Display for EscapeDebug
impl Display for EscapeDebug
1.57.0 · sourceimpl Display for TryReserveError
impl Display for TryReserveError
sourceimpl<'_, B> Display for Cow<'_, B> where
B: Display + ToOwned + ?Sized,
<B as ToOwned>::Owned: Display,
impl<'_, B> Display for Cow<'_, B> where
B: Display + ToOwned + ?Sized,
<B as ToOwned>::Owned: Display,
sourceimpl Display for FromUtf16Error
impl Display for FromUtf16Error
1.58.0 · sourceimpl Display for FromVecWithNulError
impl Display for FromVecWithNulError
1.7.0 · sourceimpl Display for IntoStringError
impl Display for IntoStringError
1.8.0 · sourceimpl Display for SystemTimeError
impl Display for SystemTimeError
sourceimpl<W> Display for IntoInnerError<W>
impl<W> Display for IntoInnerError<W>
1.26.0 · sourceimpl Display for AccessError
impl Display for AccessError
1.20.0 · sourceimpl<'_, T> Display for RwLockWriteGuard<'_, T> where
T: Display + ?Sized,
impl<'_, T> Display for RwLockWriteGuard<'_, T> where
T: Display + ?Sized,
1.56.0 · sourceimpl Display for WriterPanicked
impl Display for WriterPanicked
1.20.0 · sourceimpl<'_, T> Display for MutexGuard<'_, T> where
T: Display + ?Sized,
impl<'_, T> Display for MutexGuard<'_, T> where
T: Display + ?Sized,
sourceimpl Display for Ipv6Addr
impl Display for Ipv6Addr
Write an Ipv6Addr, conforming to the canonical style described by RFC 5952.
1.20.0 · sourceimpl<'_, T> Display for RwLockReadGuard<'_, T> where
T: Display + ?Sized,
impl<'_, T> Display for RwLockReadGuard<'_, T> where
T: Display + ?Sized,
1.15.0 · sourceimpl Display for RecvTimeoutError
impl Display for RecvTimeoutError
sourceimpl<T> Display for PoisonError<T>
impl<T> Display for PoisonError<T>
sourceimpl Display for ExitStatusError
impl Display for ExitStatusError
1.60.0 · sourceimpl Display for ErrorKind
impl Display for ErrorKind
sourcefn fmt(&self, fmt: &mut Formatter<'_>) -> Result<(), Error>
fn fmt(&self, fmt: &mut Formatter<'_>) -> Result<(), Error>
Shows a human-readable description of the ErrorKind
.
This is similar to impl Display for Error
, but doesn’t require first converting to Error.
Examples
use std::io::ErrorKind;
assert_eq!("entity not found", ErrorKind::NotFound.to_string());
sourceimpl<'a, K, V> Display for OccupiedError<'a, K, V> where
K: Debug,
V: Debug,
impl<'a, K, V> Display for OccupiedError<'a, K, V> where
K: Debug,
V: Debug,
sourceimpl<T> Display for TrySendError<T>
impl<T> Display for TrySendError<T>
1.4.0 · sourceimpl Display for AddrParseError
impl Display for AddrParseError
sourceimpl Display for JoinPathsError
impl Display for JoinPathsError
sourceimpl<T> Display for TryLockError<T>
impl<T> Display for TryLockError<T>
1.7.0 · sourceimpl Display for StripPrefixError
impl Display for StripPrefixError
sourceimpl<'a> Display for Unexpected<'a>
impl<'a> Display for Unexpected<'a>
sourceimpl Display for PrimitiveDateTime
impl Display for PrimitiveDateTime
sourceimpl Display for Duration
impl Display for Duration
The format returned by this implementation is not stable and must not be relied upon.
For the purposes of this implementation, a day is exactly 24 hours and a minute is exactly 60 seconds.
sourceimpl Display for InvalidFormatDescription
impl Display for InvalidFormatDescription
sourceimpl Display for InvalidVariant
impl Display for InvalidVariant
sourceimpl Display for ParseFromDescription
impl Display for ParseFromDescription
sourceimpl Display for DifferentVariant
impl Display for DifferentVariant
sourceimpl Display for ComponentRange
impl Display for ComponentRange
sourceimpl Display for OffsetDateTime
impl Display for OffsetDateTime
sourceimpl Display for ConversionRange
impl Display for ConversionRange
sourceimpl Display for ParseFloatError
impl Display for ParseFloatError
sourceimpl<C> Display for NonZeroScalar<C> where
C: Curve + ScalarArithmetic,
impl<C> Display for NonZeroScalar<C> where
C: Curve + ScalarArithmetic,
sourceimpl<C> Display for ScalarCore<C> where
C: Curve,
impl<C> Display for ScalarCore<C> where
C: Curve,
sourceimpl<Size> Display for EncodedPoint<Size> where
Size: ModulusSize,
impl<Size> Display for EncodedPoint<Size> where
Size: ModulusSize,
sourceimpl<'a> Display for Utf8String<'a>
impl<'a> Display for Utf8String<'a>
sourceimpl<'a> Display for PrintableString<'a>
impl<'a> Display for PrintableString<'a>
sourceimpl Display for ObjectIdentifier
impl Display for ObjectIdentifier
sourceimpl<'_> Display for HexDisplay<'_>
impl<'_> Display for HexDisplay<'_>
sourceimpl<C> Display for Signature<C> where
C: PrimeCurve,
<<<C as Curve>::UInt as ArrayEncoding>::ByteSize as Add<<<C as Curve>::UInt as ArrayEncoding>::ByteSize>>::Output: ArrayLength<u8>,
impl<C> Display for Signature<C> where
C: PrimeCurve,
<<<C as Curve>::UInt as ArrayEncoding>::ByteSize as Add<<<C as Curve>::UInt as ArrayEncoding>::ByteSize>>::Output: ArrayLength<u8>,
sourceimpl Display for InvalidKeyLength
impl Display for InvalidKeyLength
sourceimpl Display for Value
impl Display for Value
sourcefn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Display a JSON value as a string.
let json = json!({ "city": "London", "street": "10 Downing Street" });
// Compact format:
//
// {"city":"London","street":"10 Downing Street"}
let compact = format!("{}", json);
assert_eq!(compact,
"{\"city\":\"London\",\"street\":\"10 Downing Street\"}");
// Pretty format:
//
// {
// "city": "London",
// "street": "10 Downing Street"
// }
let pretty = format!("{:#}", json);
assert_eq!(pretty,
"{\n \"city\": \"London\",\n \"street\": \"10 Downing Street\"\n}");