rustc_middle/traits/
structural_impls.rs

1use std::fmt;
2
3use crate::traits;
4
5// Structural impls for the structs in `traits`.
6
7impl<'tcx, N: fmt::Debug> fmt::Debug for traits::ImplSource<'tcx, N> {
8    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
9        match self {
10            super::ImplSource::UserDefined(v) => write!(f, "{v:?}"),
11
12            super::ImplSource::Builtin(source, d) => {
13                write!(f, "Builtin({source:?}, {d:?})")
14            }
15
16            super::ImplSource::Param(n) => {
17                write!(f, "ImplSourceParamData({n:?})")
18            }
19        }
20    }
21}
22
23impl<'tcx, N: fmt::Debug> fmt::Debug for traits::ImplSourceUserDefinedData<'tcx, N> {
24    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
25        write!(
26            f,
27            "ImplSourceUserDefinedData(impl_def_id={:?}, args={:?}, nested={:?})",
28            self.impl_def_id, self.args, self.nested
29        )
30    }
31}