chalk_solve/display/
identifiers.rs1use std::fmt::{Formatter, Result};
6
7use chalk_ir::interner::Interner;
8use chalk_ir::*;
9
10use super::{render_trait::RenderAsRust, state::InternalWriterState};
11
12impl<I: Interner> RenderAsRust<I> for AdtId<I> {
13 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
14 write!(
16 f,
17 "{}",
18 s.alias_for_adt_id_name(self.0, s.db().adt_name(*self))
19 )
20 }
21}
22
23impl<I: Interner> RenderAsRust<I> for TraitId<I> {
24 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
25 write!(
27 f,
28 "{}",
29 s.alias_for_id_name(self.0, s.db().trait_name(*self))
30 )
31 }
32}
33
34impl<I: Interner> RenderAsRust<I> for AssocTypeId<I> {
35 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
36 write!(
38 f,
39 "{}",
40 s.alias_for_id_name(self.0, s.db().assoc_type_name(*self))
41 )
42 }
43}
44
45impl<I: Interner> RenderAsRust<I> for OpaqueTyId<I> {
46 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
47 write!(
49 f,
50 "{}",
51 s.alias_for_id_name(self.0, s.db().opaque_type_name(*self))
52 )
53 }
54}