Skip to content

Commit

Permalink
Rollup merge of rust-lang#69491 - petrochenkov:symprint, r=Mark-Simul…
Browse files Browse the repository at this point in the history
…acrum

rustc_span: Add `Symbol::to_ident_string` for use in diagnostic messages

Covers the same error reporting use case (rust-lang#69387 (comment)) as the `Display` impl for `Ident`.
cc rust-lang#69053

Follow-up to rust-lang#69387.
r? @Mark-Simulacrum
  • Loading branch information
Dylan-DPC committed Feb 27, 2020
2 parents 7a92149 + 6ce5ab6 commit 7d6862c
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions src/librustc_span/symbol.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1023,6 +1023,14 @@ impl Symbol {
pub fn as_u32(self) -> u32 {
self.0.as_u32()
}

/// This method is supposed to be used in error messages, so it's expected to be
/// identical to printing the original identifier token written in source code
/// (`token_to_string`, `Ident::to_string`), except that symbols don't keep the rawness flag
/// or edition, so we have to guess the rawness using the global edition.
pub fn to_ident_string(self) -> String {
Ident::with_dummy_span(self).to_string()
}
}

impl fmt::Debug for Symbol {
Expand Down

0 comments on commit 7d6862c

Please sign in to comment.