]> git.proxmox.com Git - rustc.git/blob - vendor/chalk-solve/src/display/identifiers.rs
Update unsuspicious file list
[rustc.git] / vendor / chalk-solve / src / display / identifiers.rs
1 //! Writer logic for simple IDs
2 //!
3 //! `RenderAsRust` impls for identifiers which are either too small or too
4 //! shared to belong anywhere else belong here.
5 use std::fmt::{Formatter, Result};
6
7 use chalk_ir::interner::Interner;
8 use chalk_ir::*;
9
10 use super::{render_trait::RenderAsRust, state::InternalWriterState};
11
12 impl<I: Interner> RenderAsRust<I> for AdtId<I> {
13 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
14 // TODO: use debug methods?
15 write!(
16 f,
17 "{}",
18 s.alias_for_adt_id_name(self.0, s.db().adt_name(*self))
19 )
20 }
21 }
22
23 impl<I: Interner> RenderAsRust<I> for TraitId<I> {
24 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
25 // TODO: use debug methods?
26 write!(
27 f,
28 "{}",
29 s.alias_for_id_name(self.0, s.db().trait_name(*self))
30 )
31 }
32 }
33
34 impl<I: Interner> RenderAsRust<I> for AssocTypeId<I> {
35 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
36 // TODO: use debug methods?
37 write!(
38 f,
39 "{}",
40 s.alias_for_id_name(self.0, s.db().assoc_type_name(*self))
41 )
42 }
43 }
44
45 impl<I: Interner> RenderAsRust<I> for OpaqueTyId<I> {
46 fn fmt(&self, s: &InternalWriterState<'_, I>, f: &'_ mut Formatter<'_>) -> Result {
47 // TODO: use debug methods?
48 write!(
49 f,
50 "{}",
51 s.alias_for_id_name(self.0, s.db().opaque_type_name(*self))
52 )
53 }
54 }