about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorJohn Kåre Alsaker <john.kare.alsaker@gmail.com>2019-03-16 09:30:05 +0100
committerJohn Kåre Alsaker <john.kare.alsaker@gmail.com>2019-03-31 03:11:55 +0200
commit5ea959dc8bfdf0dd62fd8ac611ba4e9e8d75c69d (patch)
treee674285e8e49697b015c946f65d0f5f29ab929f9 /src/libsyntax
parent438f6b04c6fe2daf7f6000294edd50c26f6da619 (diff)
downloadrust-5ea959dc8bfdf0dd62fd8ac611ba4e9e8d75c69d.tar.gz
rust-5ea959dc8bfdf0dd62fd8ac611ba4e9e8d75c69d.zip
Convert symbols to strings for pretty printing
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/print/pp.rs11
-rw-r--r--src/libsyntax/print/pprust.rs14
2 files changed, 11 insertions, 14 deletions
diff --git a/src/libsyntax/print/pp.rs b/src/libsyntax/print/pp.rs
index 740ca229030..d8a8cbb655b 100644
--- a/src/libsyntax/print/pp.rs
+++ b/src/libsyntax/print/pp.rs
@@ -369,7 +369,7 @@ impl<'a> Printer<'a> {
         Ok(())
     }
 
-    fn pretty_print_string<'s>(&mut self, s: Cow<'s, str>, len: isize) -> io::Result<()> {
+    fn pretty_print_string(&mut self, s: Cow<'static, str>, len: isize) -> io::Result<()> {
         if self.scan_stack.is_empty() {
             debug!("pp String('{}')/print Vec<{},{}>",
                    s, self.left, self.right);
@@ -378,10 +378,7 @@ impl<'a> Printer<'a> {
             debug!("pp String('{}')/buffer Vec<{},{}>",
                    s, self.left, self.right);
             self.advance_right();
-            self.buf[self.right] = BufEntry {
-                token: Token::String(s.into_owned().into(), len),
-                size: len
-            };
+            self.buf[self.right] = BufEntry { token: Token::String(s, len), size: len };
             self.right_total += len;
             self.check_stream()
         }
@@ -579,7 +576,7 @@ impl<'a> Printer<'a> {
         }
     }
 
-    pub fn print_string(&mut self, s: Cow<'_, str>, len: isize) -> io::Result<()> {
+    pub fn print_string(&mut self, s: Cow<'static, str>, len: isize) -> io::Result<()> {
         debug!("print String({})", s);
         // assert!(len <= space);
         self.space -= len;
@@ -644,7 +641,7 @@ impl<'a> Printer<'a> {
         self.pretty_print_eof()
     }
 
-    pub fn word<'s, S: Into<Cow<'s, str>>>(&mut self, wrd: S) -> io::Result<()> {
+    pub fn word<S: Into<Cow<'static, str>>>(&mut self, wrd: S) -> io::Result<()> {
         let s = wrd.into();
         let len = s.len() as isize;
         self.pretty_print_string(s, len)
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index f5a9aded845..ca05ff71c94 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -645,7 +645,7 @@ pub trait PrintState<'a> {
             ast::LitKind::Float(ref f, t) => {
                 self.writer().word(format!("{}{}", &f, t.ty_to_string()))
             }
-            ast::LitKind::FloatUnsuffixed(ref f) => self.writer().word(f.as_str().get()),
+            ast::LitKind::FloatUnsuffixed(ref f) => self.writer().word(f.as_str().to_string()),
             ast::LitKind::Bool(val) => {
                 if val { self.writer().word("true") } else { self.writer().word("false") }
             }
@@ -731,7 +731,7 @@ pub trait PrintState<'a> {
                 if segment.ident.name == keywords::DollarCrate.name() {
                     self.print_dollar_crate(segment.ident)?;
                 } else {
-                    self.writer().word(segment.ident.as_str().get())?;
+                    self.writer().word(segment.ident.as_str().to_string())?;
                 }
             }
         }
@@ -749,7 +749,7 @@ pub trait PrintState<'a> {
         }
         self.maybe_print_comment(attr.span.lo())?;
         if attr.is_sugared_doc {
-            self.writer().word(attr.value_str().unwrap().as_str().get())?;
+            self.writer().word(attr.value_str().unwrap().as_str().to_string())?;
             self.writer().hardbreak()
         } else {
             match attr.style {
@@ -858,7 +858,7 @@ pub trait PrintState<'a> {
         if !ast::Ident::with_empty_ctxt(name).is_path_segment_keyword() {
             self.writer().word("::")?;
         }
-        self.writer().word(name.as_str().get())
+        self.writer().word(name.as_str().to_string())
     }
 }
 
@@ -1300,7 +1300,7 @@ impl<'a> State<'a> {
             }
             ast::ItemKind::GlobalAsm(ref ga) => {
                 self.head(visibility_qualified(&item.vis, "global_asm!"))?;
-                self.s.word(ga.asm.as_str().get())?;
+                self.s.word(ga.asm.as_str().to_string())?;
                 self.end()?;
             }
             ast::ItemKind::Ty(ref ty, ref generics) => {
@@ -2437,7 +2437,7 @@ impl<'a> State<'a> {
         if ident.is_raw_guess() {
             self.s.word(format!("r#{}", ident))?;
         } else {
-            self.s.word(ident.as_str().get())?;
+            self.s.word(ident.as_str().to_string())?;
         }
         self.ann.post(self, AnnNode::Ident(&ident))
     }
@@ -2447,7 +2447,7 @@ impl<'a> State<'a> {
     }
 
     pub fn print_name(&mut self, name: ast::Name) -> io::Result<()> {
-        self.s.word(name.as_str().get())?;
+        self.s.word(name.as_str().to_string())?;
         self.ann.post(self, AnnNode::Name(&name))
     }