rust/compiler/rustc_ast_pretty/src/helpers.rs

49 lines
1.0 KiB
Rust
Raw Normal View History

use crate::pp::Printer;
2019-12-22 16:42:04 -06:00
use std::borrow::Cow;
impl Printer {
pub fn word_space<W: Into<Cow<'static, str>>>(&mut self, w: W) {
self.word(w);
self.space();
}
pub fn popen(&mut self) {
self.word("(");
}
pub fn pclose(&mut self) {
self.word(")");
}
pub fn hardbreak_if_not_bol(&mut self) {
if !self.is_beginning_of_line() {
self.hardbreak()
}
}
pub fn space_if_not_bol(&mut self) {
2019-12-22 16:42:04 -06:00
if !self.is_beginning_of_line() {
self.space();
}
}
2019-12-22 16:42:04 -06:00
pub fn nbsp(&mut self) {
self.word(" ")
}
pub fn word_nbsp<S: Into<Cow<'static, str>>>(&mut self, w: S) {
self.word(w);
self.nbsp()
}
// Synthesizes a comment that was not textually present in the original
// source file.
pub fn synth_comment(&mut self, text: impl Into<Cow<'static, str>>) {
self.word("/*");
self.space();
self.word(text);
self.space();
self.word("*/")
}
}