Trait frame_support::dispatch::fmt::Display

1.0.0 · source ·
pub trait Display {
    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.

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, }));

Trait Implementations§

Perform the conversion.

Implementors§

Print a display representation of this Ast.

This does not preserve any of the original whitespace formatting that may have originally been present in the concrete syntax from which this Ast was generated.

This implementation uses constant stack space and heap space proportional to the size of the Ast.

The Display output of the naive date d is the same as d.format("%Y-%m-%d").

The string printed can be readily parsed via the parse method on str.

Example

use chrono::NaiveDate;

assert_eq!(format!("{}", NaiveDate::from_ymd(2015,  9,  5)), "2015-09-05");
assert_eq!(format!("{}", NaiveDate::from_ymd(   0,  1,  1)), "0000-01-01");
assert_eq!(format!("{}", NaiveDate::from_ymd(9999, 12, 31)), "9999-12-31");

ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.

assert_eq!(format!("{}", NaiveDate::from_ymd(   -1,  1,  1)),  "-0001-01-01");
assert_eq!(format!("{}", NaiveDate::from_ymd(10000, 12, 31)), "+10000-12-31");

The Display output of the naive date and time dt is the same as dt.format("%Y-%m-%d %H:%M:%S%.f").

It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)

Example

use chrono::NaiveDate;

let dt = NaiveDate::from_ymd(2016, 11, 15).and_hms(7, 39, 24);
assert_eq!(format!("{}", dt), "2016-11-15 07:39:24");

Leap seconds may also be used.

let dt = NaiveDate::from_ymd(2015, 6, 30).and_hms_milli(23, 59, 59, 1_500);
assert_eq!(format!("{}", dt), "2015-06-30 23:59:60.500");

The Display output of the naive time t is the same as t.format("%H:%M:%S%.f").

The string printed can be readily parsed via the parse method on str.

It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)

Example

use chrono::NaiveTime;

assert_eq!(format!("{}", NaiveTime::from_hms(23, 56, 4)),              "23:56:04");
assert_eq!(format!("{}", NaiveTime::from_hms_milli(23, 56, 4, 12)),    "23:56:04.012");
assert_eq!(format!("{}", NaiveTime::from_hms_micro(23, 56, 4, 1234)),  "23:56:04.001234");
assert_eq!(format!("{}", NaiveTime::from_hms_nano(23, 56, 4, 123456)), "23:56:04.000123456");

Leap seconds may also be used.

assert_eq!(format!("{}", NaiveTime::from_hms_milli(6, 59, 59, 1_500)), "06:59:60.500");

Print a display representation of this Hir.

The result of this is a valid regular expression pattern string.

This implementation uses constant stack space and heap space proportional to the size of the Hir.

Display the name of the address format (not the description).

Write an Ipv6Addr, conforming to the canonical style described by RFC 5952.

impl Display for Error

impl<T> Display for SendError<T>

impl<T> Display for TrySendError<T>

impl<T: Display + ?Sized> Display for MutexGuard<'_, T>

impl<T: Display + ?Sized> Display for MutexGuardArc<T>

impl<T: Display + ?Sized> Display for RwLockReadGuard<'_, T>

impl<T: Display + ?Sized> Display for RwLockWriteGuard<'_, T>

impl Display for TaskId

impl<T: Display> Display for Round<T>

impl<E> Display for Error<E>where
    E: Display,

impl<T, U> Display for Cow<'_, T, U>where
    T: Beef + Display + ?Sized,
    U: Capacity,

impl Display for Error

impl Display for Public

impl Display for Hash

impl Display for HexError

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for BString

impl Display for BStr

impl Display for AllocErr

impl Display for Reason

impl<'a> Display for Token<'a>

impl Display for Triple

impl Display for Arch

impl Display for Vendor

impl Display for Os

impl Display for Family

impl Display for Env

impl Display for Panic

impl Display for Families

impl<const S: usize> Display for Cid<S>

impl Display for Error

impl Display for Error

impl<'help> Display for Arg<'help>

impl Display for App<'_>

impl Display for Error

impl Display for Table

impl Display for PopError

impl<T> Display for PushError<T>

impl Display for Error

impl<'a> Display for Name<'a>

impl Display for Error

impl<T> Display for BitFlags<T>where
    T: BitFlag + Debug,

impl<T: BitFlag + Debug> Display for FromBitsError<T>

impl Display for Error

impl<Frac: LeEqU8> Display for FixedU8<Frac>

impl<Frac: LeEqU16> Display for FixedU16<Frac>

impl<Frac: LeEqU32> Display for FixedU32<Frac>

impl<Frac: LeEqU64> Display for FixedU64<Frac>

impl<Frac: LeEqU128> Display for FixedU128<Frac>

impl<Frac: LeEqU8> Display for FixedI8<Frac>

impl<Frac: LeEqU16> Display for FixedI16<Frac>

impl<Frac: LeEqU32> Display for FixedI32<Frac>

impl<Frac: LeEqU64> Display for FixedI64<Frac>

impl<Frac: LeEqU128> Display for FixedI128<Frac>

impl<F: Fixed> Display for Unwrapped<F>

impl<F: Fixed> Display for Wrapping<F>

impl<E: Error> Display for Error<E>

impl Display for Analysis

impl Display for Glob

impl Display for Error

impl Display for Error

impl Display for Reason

impl Display for bf16

impl Display for f16

impl<T: AsRef<str>> Display for AsKebabCase<T>

impl<T: AsRef<str>> Display for AsLowerCamelCase<T>

impl<T: AsRef<str>> Display for AsSnakeCase<T>

impl<T: AsRef<str>> Display for AsTitleCase<T>

impl<T: AsRef<str>> Display for AsUpperCamelCase<T>

impl<T: AsRef<[u8]>> Display for HexFmt<T>

impl<T> Display for HexList<T>where
    T: Clone + IntoIterator,
    T::Item: AsRef<[u8]>,

impl Display for Method

impl<T> Display for Port<T>

impl Display for Scheme

impl Display for Uri

impl Display for Error

impl Display for Error

impl Display for HttpDate

impl Display for Error

impl Display for Error

impl Display for Name

impl Display for Errors

impl Display for IpNet

impl Display for Ipv4Net

impl Display for Ipv6Net

impl Display for BigInt

impl Display for Boolean

impl Display for Number

impl Display for JsString

impl Display for WsError

impl<T: Display> Display for Mismatch<T>

impl Display for Error

impl<T> Display for GenericTransportError<T>where
    T: Display + Error + Send + Sync,

impl<'a, T: Serialize> Display for Response<'a, T>

impl<'a> Display for ErrorResponse<'a>

impl Display for PeerId

impl<A, B> Display for EitherError<A, B>where
    A: Display,
    B: Display,

impl<TErr> Display for TransportTimeoutError<TErr>where
    TErr: Display,

impl<T, U> Display for TransportUpgradeError<T, U>where
    T: Display,
    U: Display,

impl<TErr> Display for TransportError<TErr>where
    TErr: Display,

impl<E> Display for UpgradeError<E>where
    E: Display,

impl<TErr> Display for DnsErr<TErr>where
    TErr: Display,

impl<H: Hasher> Display for Topic<H>

impl Display for Error

impl Display for Failure

impl<THandlerErr> Display for ConnectionError<THandlerErr>where
    THandlerErr: Display,

impl<TTransErr> Display for PendingConnectionError<TTransErr>where
    TTransErr: Display + Debug,

impl<TUpgrErr> Display for ConnectionHandlerUpgrErr<TUpgrErr>where
    TUpgrErr: Display,

impl Display for JsErr

impl<E: Display> Display for Error<E>

impl Display for Error

impl Display for Error

impl Display for LZ4Error

impl<'a> Display for Protocol<'a>

impl Display for Error

impl Display for Error

impl Display for Error

impl<T, R: Dim, C: Dim, S> Display for Matrix<T, R, C, S>where
    T: Scalar + Display,
    S: Storage<T, R, C>,
    DefaultAllocator: Allocator<usize, R, C>,

impl<T: Scalar + Display, const D: usize> Display for Point<T, D>

impl<T, const D: usize> Display for Rotation<T, D>where
    T: RealField + Display,

impl<T: RealField + Display> Display for Quaternion<T>

impl<T: Scalar + Display, const D: usize> Display for Translation<T, D>

impl<T: RealField + Display, R, const D: usize> Display for Isometry<T, R, D>where
    R: Display,

impl<T, R, const D: usize> Display for Similarity<T, R, D>where
    T: RealField + Display,
    R: AbstractRotation<T, D> + Display,

impl Display for WyRand

impl<T> Display for Error<T>where
    NetlinkMessage<T>: Debug,

impl Display for Errno

impl Display for Signal

impl Display for TimeSpec

impl Display for TimeVal

impl Display for Pid

impl<T> Display for Complex<T>where
    T: Display + Num + PartialOrd + Clone,

impl<T: Float + Display> Display for OrderedFloat<T>

impl<T: Float + Display> Display for NotNan<T>

impl<E: Debug> Display for ParseNotNanError<E>

impl Display for Error

impl<'a> Display for PercentEncode<'a>

impl<R: RuleType> Display for Error<R>

impl<R: RuleType> Display for ErrorVariant<R>

impl<'i, R: RuleType> Display for Pair<'i, R>

impl<'i, R: RuleType> Display for Pairs<'i, R>

impl<'a, G> Display for Dot<'a, G>where
    G: IntoEdgeReferences + IntoNodeReferences + NodeIndexable + GraphProp,
    G::EdgeWeight: Display,
    G::NodeWeight: Display,

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Id

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Readout

impl Display for LexError

impl Display for Group

impl Display for Punct

impl Display for Ident

impl Display for Literal

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Network

impl Display for ScopedIp

impl Display for Config

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl<B: BlockT> Display for Error<B>

impl<B: BlockT> Display for Error<B>

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Role

impl Display for Error

impl Display for ParseErr

impl<Block: BlockT> Display for WarpSyncPhase<Block>

impl Display for BadPeer

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Health

impl Display for Error

impl<Block: BlockT> Display for Error<Block>

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Values

impl Display for Error

impl Display for Error

impl Display for SeqID

impl Display for AutoSimd<[f32; 2]>

impl Display for AutoSimd<[f32; 4]>

impl Display for AutoSimd<[f32; 8]>

impl Display for AutoSimd<[f32; 16]>

impl Display for AutoSimd<[f64; 2]>

impl Display for AutoSimd<[f64; 4]>

impl Display for AutoSimd<[f64; 8]>

impl Display for AutoSimd<[i128; 1]>

impl Display for AutoSimd<[i128; 2]>

impl Display for AutoSimd<[i128; 4]>

impl Display for AutoSimd<[i16; 2]>

impl Display for AutoSimd<[i16; 4]>

impl Display for AutoSimd<[i16; 8]>

impl Display for AutoSimd<[i16; 16]>

impl Display for AutoSimd<[i16; 32]>

impl Display for AutoSimd<[i32; 2]>

impl Display for AutoSimd<[i32; 4]>

impl Display for AutoSimd<[i32; 8]>

impl Display for AutoSimd<[i32; 16]>

impl Display for AutoSimd<[i64; 2]>

impl Display for AutoSimd<[i64; 4]>

impl Display for AutoSimd<[i64; 8]>

impl Display for AutoSimd<[i8; 2]>

impl Display for AutoSimd<[i8; 4]>

impl Display for AutoSimd<[i8; 8]>

impl Display for AutoSimd<[i8; 16]>

impl Display for AutoSimd<[i8; 32]>

impl Display for AutoSimd<[isize; 2]>

impl Display for AutoSimd<[isize; 4]>

impl Display for AutoSimd<[isize; 8]>

impl Display for AutoSimd<[u128; 1]>

impl Display for AutoSimd<[u128; 2]>

impl Display for AutoSimd<[u128; 4]>

impl Display for AutoSimd<[u16; 2]>

impl Display for AutoSimd<[u16; 4]>

impl Display for AutoSimd<[u16; 8]>

impl Display for AutoSimd<[u16; 16]>

impl Display for AutoSimd<[u16; 32]>

impl Display for AutoSimd<[u32; 2]>

impl Display for AutoSimd<[u32; 4]>

impl Display for AutoSimd<[u32; 8]>

impl Display for AutoSimd<[u32; 16]>

impl Display for AutoSimd<[u64; 2]>

impl Display for AutoSimd<[u64; 4]>

impl Display for AutoSimd<[u64; 8]>

impl Display for AutoSimd<[u8; 2]>

impl Display for AutoSimd<[u8; 4]>

impl Display for AutoSimd<[u8; 8]>

impl Display for AutoSimd<[u8; 16]>

impl Display for AutoSimd<[u8; 32]>

impl Display for AutoSimd<[usize; 2]>

impl Display for AutoSimd<[usize; 4]>

impl Display for AutoSimd<[usize; 8]>

impl Display for AutoSimd<[bool; 1]>

impl Display for AutoSimd<[bool; 2]>

impl Display for AutoSimd<[bool; 4]>

impl Display for AutoSimd<[bool; 8]>

impl Display for AutoSimd<[bool; 16]>

impl Display for AutoSimd<[bool; 32]>

impl<W> Display for IntoInnerError<W>

impl Display for Error

impl Display for Error

impl Display for OpCode

impl Display for Header

impl Display for Error

impl Display for Error

impl<'a> Display for Param<'a>

impl Display for Error

impl Display for Error

impl Display for Error

impl Display for Slot

impl Display for Keyring

impl Display for Keyring

impl Display for Error

impl Display for Error

impl Display for TType

impl Display for Error

impl<T> Display for SendError<T>

impl<T> Display for SendError<T>

impl<T> Display for TrySendError<T>

impl<T> Display for SendTimeoutError<T>

impl<T: ?Sized + Display> Display for MutexGuard<'_, T>

impl<T: ?Sized + Display> Display for OwnedMutexGuard<T>

impl<'a, T: ?Sized + Display> Display for MappedMutexGuard<'a, T>

impl<T: ?Sized, U> Display for OwnedRwLockReadGuard<T, U>where
    U: Display + ?Sized,

impl<T> Display for OwnedRwLockWriteGuard<T>where
    T: Display + ?Sized,

impl<T: ?Sized, U> Display for OwnedRwLockMappedWriteGuard<T, U>where
    U: Display + ?Sized,

impl<'a, T> Display for RwLockReadGuard<'a, T>where
    T: Display + ?Sized,

impl<'a, T> Display for RwLockWriteGuard<'a, T>where
    T: Display + ?Sized,

impl<'a, T> Display for RwLockMappedWriteGuard<'a, T>where
    T: Display + ?Sized,

impl<T> Display for SetError<T>

impl<T: Debug> Display for SendError<T>

impl Display for Error

impl Display for Elapsed

impl Display for Elapsed

impl<T> Display for PollSendError<T>

impl Display for Header

impl Display for Flags

impl Display for OpCode

impl Display for Query

impl Display for DNSClass

impl Display for Label

impl Display for Name

impl Display for Property

impl Display for Value

impl Display for KeyValue

impl Display for CAA

impl Display for CSYNC

impl Display for HINFO

impl Display for MX

impl Display for NAPTR

impl Display for NULL

impl Display for SOA

impl Display for SRV

impl Display for SSHFP

impl Display for Alpn

impl<T> Display for IpHint<T>where
    T: Display,

impl Display for Unknown

impl Display for SVCB

impl Display for TLSA

impl Display for TXT

impl Display for RData

impl Display for Record

impl<S: Send, MF: MessageFinalizer> Display for UdpClientStream<S, MF>

impl<S, MF> Display for DnsMultiplexer<S, MF>where
    S: DnsClientStream + 'static,
    MF: MessageFinalizer + Send + Sync + 'static,

impl Display for Protocol

impl Display for Error

impl<S: Display> Display for Ascii<S>

impl<S: Display> Display for UniCase<S>

impl Display for Error

impl Display for Error

impl<S: AsRef<str>> Display for Host<S>

impl Display for Url

impl Display for Void

impl<T: Hash> Display for ShortHash<T>

impl Display for Error

impl Display for StreamId

impl Display for Stream

impl<T> Display for Connection<T>