pub trait Display {
// Required method
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}Expand description
Format trait for an empty format, {}.
Implementing this trait for a type will automatically implement the
ToString trait for the type, allowing the usage
of the .to_string() method. Prefer implementing
the Display trait for a type, rather than ToString.
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.
§Completeness and parseability
Display for a type might not necessarily be a lossless or complete representation of the type.
It may omit internal state, precision, or other information the type does not consider important
for user-facing output, as determined by the type. As such, the output of Display might not be
possible to parse, and even if it is, the result of parsing might not exactly match the original
value.
However, if a type has a lossless Display implementation whose output is meant to be
conveniently machine-parseable and not just meant for human consumption, then the type may wish
to accept the same format in FromStr, and document that usage. Having both Display and
FromStr implementations where the result of Display cannot be parsed with FromStr may
surprise users.
§Internationalization
Because a type can only have one Display implementation, it is often preferable
to only implement Display when there is a single most “obvious” way that
values can be formatted as text. This could mean formatting according to the
“invariant” culture and “undefined” locale, or it could mean that the type
display is designed for a specific culture/locale, such as developer logs.
If not all values have a justifiably canonical textual format or if you want
to support alternative formats not covered by the standard set of possible
formatting traits, the most flexible approach is display adapters: methods
like str::escape_default or Path::display which create a wrapper
implementing Display to output the specific display format.
§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§
1.0.0 · Sourcefn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Formats the value using the given formatter.
§Errors
This function should return Err if, and only if, the provided Formatter returns Err.
String formatting is considered an infallible operation; this function only
returns a Result because writing to the underlying stream might fail and it must
provide a way to propagate the fact that an error has occurred back up the stack.
§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, }),
);Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
impl Display for !
impl Display for AccessCheckError
impl Display for std::thread::local::AccessError
impl Display for vulkano::sync::future::AccessError
impl Display for AcquireError
impl Display for AddrParseError
impl Display for nix::sys::socket::addr::alg::AlgAddr
impl Display for nix::sys::socket::addr::alg::AlgAddr
impl Display for AllocError
impl Display for Argument
impl Display for Arguments<'_>
impl Display for AsciiChar
impl Display for Attribute<'_>
impl Display for AutoCommandBufferBuilderContextError
impl Display for Backtrace
impl Display for BadIcon
impl Display for BeginError
impl Display for BeginQueryError
impl Display for BeginRenderPassError
impl Display for BernoulliError
impl Display for BlitImageError
impl Display for BorderRadii
impl Display for BorrowError
impl Display for BorrowMutError
impl Display for BrushError
impl Display for BufferCreationError
impl Display for BufferViewCreationError
impl Display for BuildError
impl Display for ByteStr
impl Display for ByteString
impl Display for CacheWriteErr
impl Display for CapabilitiesError
impl Display for CharTryFromError
impl Display for CheckBeginQueryError
impl Display for CheckBlitImageError
impl Display for CheckClearColorImageError
impl Display for CheckClearDepthStencilImageError
impl Display for CheckColorError
impl Display for CheckCopyBufferError
impl Display for CheckCopyBufferImageError
impl Display for CheckCopyImageError
impl Display for CheckCopyQueryPoolResultsError
impl Display for CheckDescriptorSetsValidityError
impl Display for CheckDispatchError
impl Display for CheckDynamicStateValidityError
impl Display for CheckEndQueryError
impl Display for CheckFillBufferError
impl Display for CheckIndexBufferError
impl Display for CheckIndirectBufferError
impl Display for CheckPipelineError
impl Display for CheckPushConstantsValidityError
impl Display for CheckResetQueryPoolError
impl Display for CheckUpdateBufferError
impl Display for CheckVertexBufferError
impl Display for CheckWriteTimestampError
impl Display for CheckedCastError
impl Display for ClearColorImageError
impl Display for ClockId
impl Display for CollectionAllocErr
impl Display for CommandBufferExecError
impl Display for CommandPoolTrimError
impl Display for ComputePipelineCreationError
impl Display for ConformanceVersion
impl Display for ConnectError
impl Display for CopyBufferError
impl Display for CopyBufferImageError
impl Display for CopyImageError
impl Display for CopyQueryPoolResultsError
impl Display for CreationError
impl Display for DebugCallbackCreationError
impl Display for DebugMarkerError
impl Display for DecodeUtf16Error
impl Display for DescriptorPoolAllocError
impl Display for DescriptorRequirementsIncompatible
impl Display for DescriptorRequirementsNotMet
impl Display for DescriptorSetError
impl Display for DescriptorSetLayoutError
impl Display for DeviceAddressUsageNotEnabledError
impl Display for DeviceCreationError
impl Display for DeviceMemoryAllocError
impl Display for DispatchError
impl Display for DispatchIndirectError
impl Display for std::ffi::os_str::Display<'_>
impl Display for std::path::Display<'_>
impl Display for DisplayMode
impl Display for DlError
impl Display for DrawError
impl Display for DrawIndexedError
impl Display for DrawIndexedIndirectError
impl Display for DrawIndirectError
impl Display for EmitterError
impl Display for Empty
impl Display for Encoding
impl Display for EndQueryError
impl Display for nix::errno::consts::Errno
impl Display for nix::errno::consts::Errno
impl Display for narui::re_export::smallvec::alloc::io::Error
impl Display for narui::re_export::smallvec::alloc::fmt::Error
impl Display for libloading::error::Error
impl Display for getrandom::error::Error
impl Display for rand::distr::uniform::Error
impl Display for rand::distr::weighted::Error
impl Display for getrandom::error::Error
impl Display for libloading::error::Error
impl Display for nix::Error
impl Display for libloading::error::Error
impl Display for nix::Error
impl Display for walkdir::error::Error
impl Display for xdg::base_directories::Error
impl Display for xml::reader::error::Error
impl Display for anyhow::Error
impl Display for ErrorKind
impl Display for core::char::EscapeDebug
impl Display for core::ascii::EscapeDefault
impl Display for core::char::EscapeDefault
impl Display for core::char::EscapeUnicode
impl Display for ExecuteCommandsError
impl Display for ExitStatus
impl Display for ExitStatusError
impl Display for ExtensionRestriction
impl Display for ExtensionRestrictionError
impl Display for ExternalError
impl Display for ttf_parser::FaceParsingError
impl Display for ttf_parser::FaceParsingError
impl Display for FeatureRestriction
impl Display for FeatureRestrictionError
impl Display for FenceWaitError
impl Display for FillBufferError
impl Display for ordered_float::FloatIsNan
impl Display for ordered_float::FloatIsNan
impl Display for FlushError
impl Display for FramebufferCreationError
impl Display for FromBytesUntilNulError
impl Display for FromBytesWithNulError
impl Display for FromHexError
impl Display for FromUtf8Error
impl Display for FromUtf16Error
impl Display for FromVecWithNulError
impl Display for FullscreenExclusiveError
impl Display for GetDisjointMutError
impl Display for GetResultsError
impl Display for nix::unistd::Gid
impl Display for nix::unistd::Gid
impl Display for GlobalError
impl Display for GraphicsPipelineCreationError
impl Display for Id
impl Display for Image
impl Display for ImageCreationError
impl Display for ImageViewCreationError
impl Display for IncompatiblePixelsType
impl Display for IncompatibleRenderPassAttachmentError
impl Display for IncompatibleVertexDefinitionError
impl Display for nix::sys::socket::addr::InetAddr
impl Display for nix::sys::socket::addr::InetAddr
impl Display for Infallible
impl Display for InstanceCreationError
impl Display for InstanceError
impl Display for IntoStringError
impl Display for InvalidFont
impl Display for core::net::ip_addr::IpAddr
impl Display for nix::sys::socket::addr::IpAddr
impl Display for nix::sys::socket::addr::IpAddr
impl Display for core::net::ip_addr::Ipv4Addr
impl Display for nix::sys::socket::addr::Ipv4Addr
impl Display for nix::sys::socket::addr::Ipv4Addr
impl Display for core::net::ip_addr::Ipv6Addr
Writes an Ipv6Addr, conforming to the canonical style described by RFC 5952.
impl Display for nix::sys::socket::addr::Ipv6Addr
impl Display for nix::sys::socket::addr::Ipv6Addr
impl Display for JoinPathsError
impl Display for Language
impl Display for LayersListError
impl Display for LayoutError
impl Display for Level
impl Display for LevelFilter
impl Display for nix::sys::socket::addr::datalink::LinkAddr
impl Display for nix::sys::socket::addr::datalink::LinkAddr
impl Display for vulkano::instance::loader::LoadingError
impl Display for ash::entry_libloading::LoadingError
impl Display for Location<'_>
impl Display for MessageParseError
impl Display for MessageWriteError
impl Display for Name<'_>
impl Display for nix::sys::socket::addr::netlink::NetlinkAddr
impl Display for nix::sys::socket::addr::netlink::NetlinkAddr
impl Display for NormalizeError
impl Display for NotSupportedError
impl Display for NotificationId
impl Display for NulError
impl Display for OomError
impl Display for OpenError
impl Display for OsError
impl Display for OwnedAttribute
impl Display for OwnedName
impl Display for PanicHookInfo<'_>
impl Display for PanicInfo<'_>
impl Display for PanicMessage<'_>
impl Display for ParseBoolError
impl Display for ParseCharError
impl Display for ParseError
impl Display for ParseErrors
impl Display for core::num::float_parse::ParseFloatError
impl Display for num_traits::ParseFloatError
impl Display for ParseIntError
impl Display for ParseLevelError
impl Display for PercentEncode<'_>
impl Display for nix::unistd::Pid
impl Display for nix::unistd::Pid
impl Display for PipelineLayoutCreationError
impl Display for PipelineLayoutLimitsError
impl Display for PipelineLayoutSupersetError
impl Display for PodCastError
impl Display for ProtocolError
impl Display for QueryPoolCreationError
impl Display for ReadLockError
impl Display for std::sync::mpsc::RecvError
impl Display for crossbeam_channel::err::RecvError
impl Display for std::sync::mpsc::RecvTimeoutError
impl Display for crossbeam_channel::err::RecvTimeoutError
impl Display for RenderPassCreationError
impl Display for ResetQueryPoolError
impl Display for Result
impl Display for SamplerCreationError
impl Display for SelectTimeoutError
impl Display for SemaphoreError
impl Display for SetLoggerError
impl Display for ShaderCreationError
impl Display for ShaderInterfaceMismatchError
impl Display for ShaderSupportError
impl Display for nix::sys::signal::Signal
impl Display for nix::sys::signal::Signal
impl Display for nix::sys::socket::addr::SockAddr
impl Display for nix::sys::socket::addr::SockAddr
impl Display for SocketAddr
impl Display for SocketAddrV4
impl Display for SocketAddrV6
impl Display for SpirvError
impl Display for String
impl Display for StripPrefixError
impl Display for SubmitBindSparseError
impl Display for SubmitCommandBufferError
impl Display for SubmitPresentError
impl Display for SupportedExtensionsError
impl Display for SurfaceCreationError
impl Display for SwapchainCreationError
impl Display for SyncCommandBufferBuilderError
impl Display for SystemTimeError
impl Display for ttf_parser::Tag
impl Display for ttf_parser::Tag
impl Display for TextPosition
impl Display for ThreadPoolBuildError
impl Display for nix::sys::time::TimeSpec
impl Display for nix::sys::time::TimeSpec
impl Display for nix::sys::time::TimeVal
impl Display for nix::sys::time::TimeVal
impl Display for ToCasefold
impl Display for ToLowercase
impl Display for ToTitlecase
impl Display for ToUppercase
impl Display for TryFromCharError
impl Display for TryFromFloatSecsError
impl Display for TryFromIntError
impl Display for TryFromSliceError
impl Display for std::fs::TryLockError
impl Display for std::sync::mpsc::TryRecvError
impl Display for crossbeam_channel::err::TryRecvError
impl Display for TryReserveError
impl Display for TrySelectError
impl Display for nix::unistd::Uid
impl Display for nix::unistd::Uid
impl Display for nix::sys::socket::addr::UnixAddr
impl Display for nix::sys::socket::addr::UnixAddr
impl Display for UnorderedKeyError
impl Display for UpdateBufferError
impl Display for Utf8Error
impl Display for VarError
impl Display for Version
impl Display for VideoMode
impl Display for nix::sys::socket::addr::vsock::VsockAddr
impl Display for nix::sys::socket::addr::vsock::VsockAddr
impl Display for WouldBlock
impl Display for WriteLockError
impl Display for WriteTimestampError
impl Display for WriterPanicked
impl Display for XError
impl Display for XNotSupported
impl Display for XmlVersion
impl Display for bf16
impl Display for bool
impl Display for char
impl Display for f16
impl Display for f16
impl Display for f32
impl Display for f64
impl Display for i8
impl Display for i16
impl Display for i32
impl Display for i64
impl Display for i128
impl Display for isize
impl Display for str
impl Display for u8
impl Display for u16
impl Display for u32
impl Display for u64
impl Display for u128
impl Display for usize
impl<'a, 'b> Display for ReprDisplay<'a, 'b>where
'b: 'a,
impl<'a, K, V, S, A> Display for OccupiedError<'a, K, V, S, A>
impl<'a, R, G, T> Display for MappedReentrantMutexGuard<'a, R, G, T>
impl<'a, R, G, T> Display for ReentrantMutexGuard<'a, R, G, T>
impl<'a, R, T> Display for lock_api::mutex::MappedMutexGuard<'a, R, T>
impl<'a, R, T> Display for lock_api::rwlock::MappedRwLockReadGuard<'a, R, T>
impl<'a, R, T> Display for lock_api::rwlock::MappedRwLockWriteGuard<'a, R, T>
impl<'a, R, T> Display for lock_api::mutex::MutexGuard<'a, R, T>
impl<'a, R, T> Display for lock_api::rwlock::RwLockReadGuard<'a, R, T>
impl<'a, R, T> Display for RwLockUpgradableReadGuard<'a, R, T>
impl<'a, R, T> Display for lock_api::rwlock::RwLockWriteGuard<'a, R, T>
impl<'a> Display for EscapeAscii<'a>
impl<'a> Display for narui::re_export::smallvec::alloc::str::EscapeDebug<'a>
impl<'a> Display for narui::re_export::smallvec::alloc::str::EscapeDefault<'a>
impl<'a> Display for narui::re_export::smallvec::alloc::str::EscapeUnicode<'a>
impl<A> Display for ArrayString<A>
impl<B> Display for Cow<'_, B>
impl<E> Display for InsertError<E>
tarpaulin_include only.