about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/print/pp.rs6
-rw-r--r--src/libsyntax/print/pprust.rs13
2 files changed, 9 insertions, 10 deletions
diff --git a/src/libsyntax/print/pp.rs b/src/libsyntax/print/pp.rs
index 5e23288f554..be5a0098578 100644
--- a/src/libsyntax/print/pp.rs
+++ b/src/libsyntax/print/pp.rs
@@ -301,7 +301,7 @@ impl Default for BufEntry {
 }
 
 impl Printer {
-    pub fn last_token(&mut self) -> Token {
+    pub fn last_token(&self) -> Token {
         self.buf[self.right].token.clone()
     }
 
@@ -651,6 +651,10 @@ impl Printer {
         self.spaces(SIZE_INFINITY as usize)
     }
 
+    pub fn is_beginning_of_line(&self) -> bool {
+        self.last_token().is_eof() || self.last_token().is_hardbreak_tok()
+    }
+
     pub fn hardbreak_tok_offset(off: isize) -> Token {
         Token::Break(BreakToken {offset: off, blank_space: SIZE_INFINITY})
     }
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index 2e206811d7c..288417fcd89 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -445,13 +445,8 @@ pub trait PrintState<'a> {
 
     fn pclose(&mut self) { self.writer().word(")") }
 
-    // is this the beginning of a line?
-    fn is_bol(&mut self) -> bool {
-        self.writer().last_token().is_eof() || self.writer().last_token().is_hardbreak_tok()
-    }
-
     fn hardbreak_if_not_bol(&mut self) {
-        if !self.is_bol() {
+        if !self.writer().is_beginning_of_line() {
             self.writer().hardbreak()
         }
     }
@@ -512,7 +507,7 @@ pub trait PrintState<'a> {
                 }
             }
             comments::Trailing => {
-                if !self.is_bol() {
+                if !self.writer().is_beginning_of_line() {
                     self.writer().word(" ");
                 }
                 if cmnt.lines.len() == 1 {
@@ -735,7 +730,7 @@ pub trait PrintState<'a> {
     }
 
     fn space_if_not_bol(&mut self) {
-        if !self.is_bol() { self.writer().space(); }
+        if !self.writer().is_beginning_of_line() { self.writer().space(); }
     }
 
     fn nbsp(&mut self) { self.writer().word(" ") }
@@ -793,7 +788,7 @@ impl<'a> State<'a> {
 
     crate fn break_offset_if_not_bol(&mut self, n: usize,
                                    off: isize) {
-        if !self.is_bol() {
+        if !self.s.is_beginning_of_line() {
             self.s.break_offset(n, off)
         } else {
             if off != 0 && self.s.last_token().is_hardbreak_tok() {