Skip to content

Commit 92b4855

Browse files
committed
syntax: Don't import the pp.rs enum variants into the namespace
1 parent 170c439 commit 92b4855

File tree

2 files changed

+82
-70
lines changed

2 files changed

+82
-70
lines changed

src/libsyntax/print/pp.rs

Lines changed: 68 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,6 @@
5959
//! line (which it can't) and so naturally place the content on its own line to
6060
//! avoid combining it with other lines and making matters even worse.
6161
62-
pub use self::PrintStackBreak::*;
63-
pub use self::Breaks::*;
64-
pub use self::Token::*;
65-
6662
use std::io;
6763
use std::string;
6864
use std::iter::repeat;
@@ -87,7 +83,7 @@ pub struct BeginToken {
8783

8884
#[derive(Clone)]
8985
pub enum Token {
90-
String(string::String, int),
86+
String(String, int),
9187
Break(BreakToken),
9288
Begin(BeginToken),
9389
End,
@@ -96,12 +92,15 @@ pub enum Token {
9692

9793
impl Token {
9894
pub fn is_eof(&self) -> bool {
99-
match *self { Eof => true, _ => false }
95+
match *self {
96+
Token::Eof => true,
97+
_ => false,
98+
}
10099
}
101100

102101
pub fn is_hardbreak_tok(&self) -> bool {
103102
match *self {
104-
Break(BreakToken {
103+
Token::Break(BreakToken {
105104
offset: 0,
106105
blank_space: bs
107106
}) if bs == SIZE_INFINITY =>
@@ -112,22 +111,22 @@ impl Token {
112111
}
113112
}
114113

115-
pub fn tok_str(t: Token) -> string::String {
116-
match t {
117-
String(s, len) => return format!("STR({},{})", s, len),
118-
Break(_) => return "BREAK".to_string(),
119-
Begin(_) => return "BEGIN".to_string(),
120-
End => return "END".to_string(),
121-
Eof => return "EOF".to_string()
114+
pub fn tok_str(token: &Token) -> String {
115+
match *token {
116+
Token::String(ref s, len) => format!("STR({},{})", s, len),
117+
Token::Break(_) => "BREAK".to_string(),
118+
Token::Begin(_) => "BEGIN".to_string(),
119+
Token::End => "END".to_string(),
120+
Token::Eof => "EOF".to_string()
122121
}
123122
}
124123

125-
pub fn buf_str(toks: Vec<Token>,
126-
szs: Vec<int>,
124+
pub fn buf_str(toks: &[Token],
125+
szs: &[int],
127126
left: uint,
128127
right: uint,
129128
lim: uint)
130-
-> string::String {
129+
-> String {
131130
let n = toks.len();
132131
assert_eq!(n, szs.len());
133132
let mut i = left;
@@ -140,7 +139,7 @@ pub fn buf_str(toks: Vec<Token>,
140139
}
141140
s.push_str(&format!("{}={}",
142141
szs[i],
143-
tok_str(toks[i].clone()))[]);
142+
tok_str(&toks[i]))[]);
144143
i += 1u;
145144
i %= n;
146145
}
@@ -167,7 +166,7 @@ pub fn mk_printer(out: Box<io::Writer+'static>, linewidth: uint) -> Printer {
167166
// fall behind.
168167
let n: uint = 3 * linewidth;
169168
debug!("mk_printer {}", linewidth);
170-
let token: Vec<Token> = repeat(Eof).take(n).collect();
169+
let token: Vec<Token> = repeat(Token::Eof).take(n).collect();
171170
let size: Vec<int> = repeat(0i).take(n).collect();
172171
let scan_stack: Vec<uint> = repeat(0u).take(n).collect();
173172
Printer {
@@ -312,10 +311,10 @@ impl Printer {
312311
pub fn replace_last_token(&mut self, t: Token) {
313312
self.token[self.right] = t;
314313
}
315-
pub fn pretty_print(&mut self, t: Token) -> io::IoResult<()> {
314+
pub fn pretty_print(&mut self, token: Token) -> io::IoResult<()> {
316315
debug!("pp ~[{},{}]", self.left, self.right);
317-
match t {
318-
Eof => {
316+
match token {
317+
Token::Eof => {
319318
if !self.scan_stack_empty {
320319
self.check_stack(0);
321320
let left = self.token[self.left].clone();
@@ -325,7 +324,7 @@ impl Printer {
325324
self.indent(0);
326325
Ok(())
327326
}
328-
Begin(b) => {
327+
Token::Begin(b) => {
329328
if self.scan_stack_empty {
330329
self.left_total = 1;
331330
self.right_total = 1;
@@ -334,27 +333,27 @@ impl Printer {
334333
} else { self.advance_right(); }
335334
debug!("pp Begin({})/buffer ~[{},{}]",
336335
b.offset, self.left, self.right);
337-
self.token[self.right] = t;
336+
self.token[self.right] = token;
338337
self.size[self.right] = -self.right_total;
339338
let right = self.right;
340339
self.scan_push(right);
341340
Ok(())
342341
}
343-
End => {
342+
Token::End => {
344343
if self.scan_stack_empty {
345344
debug!("pp End/print ~[{},{}]", self.left, self.right);
346-
self.print(t, 0)
345+
self.print(token, 0)
347346
} else {
348347
debug!("pp End/buffer ~[{},{}]", self.left, self.right);
349348
self.advance_right();
350-
self.token[self.right] = t;
349+
self.token[self.right] = token;
351350
self.size[self.right] = -1;
352351
let right = self.right;
353352
self.scan_push(right);
354353
Ok(())
355354
}
356355
}
357-
Break(b) => {
356+
Token::Break(b) => {
358357
if self.scan_stack_empty {
359358
self.left_total = 1;
360359
self.right_total = 1;
@@ -366,21 +365,21 @@ impl Printer {
366365
self.check_stack(0);
367366
let right = self.right;
368367
self.scan_push(right);
369-
self.token[self.right] = t;
368+
self.token[self.right] = token;
370369
self.size[self.right] = -self.right_total;
371370
self.right_total += b.blank_space;
372371
Ok(())
373372
}
374-
String(ref s, len) => {
373+
Token::String(ref s, len) => {
375374
if self.scan_stack_empty {
376375
debug!("pp String('{}')/print ~[{},{}]",
377376
*s, self.left, self.right);
378-
self.print(t.clone(), len)
377+
self.print(token.clone(), len)
379378
} else {
380379
debug!("pp String('{}')/buffer ~[{},{}]",
381380
*s, self.left, self.right);
382381
self.advance_right();
383-
self.token[self.right] = t.clone();
382+
self.token[self.right] = token.clone();
384383
self.size[self.right] = len;
385384
self.right_total += len;
386385
self.check_stream()
@@ -456,8 +455,8 @@ impl Printer {
456455
if l >= 0 {
457456
let ret = self.print(x.clone(), l);
458457
match x {
459-
Break(b) => self.left_total += b.blank_space,
460-
String(_, len) => {
458+
Token::Break(b) => self.left_total += b.blank_space,
459+
Token::String(_, len) => {
461460
assert_eq!(len, l); self.left_total += len;
462461
}
463462
_ => ()
@@ -478,14 +477,14 @@ impl Printer {
478477
if !self.scan_stack_empty {
479478
let x = self.scan_top();
480479
match self.token[x] {
481-
Begin(_) => {
480+
Token::Begin(_) => {
482481
if k > 0 {
483482
let popped = self.scan_pop();
484483
self.size[popped] = self.size[x] + self.right_total;
485484
self.check_stack(k - 1);
486485
}
487486
}
488-
End => {
487+
Token::End => {
489488
// paper says + not =, but that makes no sense.
490489
let popped = self.scan_pop();
491490
self.size[popped] = 1;
@@ -520,7 +519,7 @@ impl Printer {
520519
} else {
521520
PrintStackElem {
522521
offset: 0,
523-
pbreak: Broken(Inconsistent)
522+
pbreak: PrintStackBreak::Broken(Breaks::Inconsistent)
524523
}
525524
}
526525
}
@@ -531,56 +530,56 @@ impl Printer {
531530
}
532531
write!(self.out, "{}", s)
533532
}
534-
pub fn print(&mut self, x: Token, l: int) -> io::IoResult<()> {
535-
debug!("print {} {} (remaining line space={})", tok_str(x.clone()), l,
533+
pub fn print(&mut self, token: Token, l: int) -> io::IoResult<()> {
534+
debug!("print {} {} (remaining line space={})", tok_str(&token), l,
536535
self.space);
537-
debug!("{}", buf_str(self.token.clone(),
538-
self.size.clone(),
536+
debug!("{}", buf_str(&self.token[],
537+
&self.size[],
539538
self.left,
540539
self.right,
541540
6));
542-
match x {
543-
Begin(b) => {
541+
match token {
542+
Token::Begin(b) => {
544543
if l > self.space {
545544
let col = self.margin - self.space + b.offset;
546545
debug!("print Begin -> push broken block at col {}", col);
547546
self.print_stack.push(PrintStackElem {
548547
offset: col,
549-
pbreak: Broken(b.breaks)
548+
pbreak: PrintStackBreak::Broken(b.breaks)
550549
});
551550
} else {
552551
debug!("print Begin -> push fitting block");
553552
self.print_stack.push(PrintStackElem {
554553
offset: 0,
555-
pbreak: Fits
554+
pbreak: PrintStackBreak::Fits
556555
});
557556
}
558557
Ok(())
559558
}
560-
End => {
559+
Token::End => {
561560
debug!("print End -> pop End");
562561
let print_stack = &mut self.print_stack;
563562
assert!((print_stack.len() != 0u));
564563
print_stack.pop().unwrap();
565564
Ok(())
566565
}
567-
Break(b) => {
566+
Token::Break(b) => {
568567
let top = self.get_top();
569568
match top.pbreak {
570-
Fits => {
569+
PrintStackBreak::Fits => {
571570
debug!("print Break({}) in fitting block", b.blank_space);
572571
self.space -= b.blank_space;
573572
self.indent(b.blank_space);
574573
Ok(())
575574
}
576-
Broken(Consistent) => {
575+
PrintStackBreak::Broken(Breaks::Consistent) => {
577576
debug!("print Break({}+{}) in consistent block",
578577
top.offset, b.offset);
579578
let ret = self.print_newline(top.offset + b.offset);
580579
self.space = self.margin - (top.offset + b.offset);
581580
ret
582581
}
583-
Broken(Inconsistent) => {
582+
PrintStackBreak::Broken(Breaks::Inconsistent) => {
584583
if l > self.space {
585584
debug!("print Break({}+{}) w/ newline in inconsistent",
586585
top.offset, b.offset);
@@ -597,14 +596,14 @@ impl Printer {
597596
}
598597
}
599598
}
600-
String(s, len) => {
599+
Token::String(s, len) => {
601600
debug!("print String({})", s);
602601
assert_eq!(l, len);
603602
// assert!(l <= space);
604603
self.space -= len;
605604
self.print_str(&s[])
606605
}
607-
Eof => {
606+
Token::Eof => {
608607
// Eof should never get here.
609608
panic!();
610609
}
@@ -616,41 +615,45 @@ impl Printer {
616615
//
617616
// "raw box"
618617
pub fn rbox(p: &mut Printer, indent: uint, b: Breaks) -> io::IoResult<()> {
619-
p.pretty_print(Begin(BeginToken {
618+
p.pretty_print(Token::Begin(BeginToken {
620619
offset: indent as int,
621620
breaks: b
622621
}))
623622
}
624623

625624
pub fn ibox(p: &mut Printer, indent: uint) -> io::IoResult<()> {
626-
rbox(p, indent, Inconsistent)
625+
rbox(p, indent, Breaks::Inconsistent)
627626
}
628627

629628
pub fn cbox(p: &mut Printer, indent: uint) -> io::IoResult<()> {
630-
rbox(p, indent, Consistent)
629+
rbox(p, indent, Breaks::Consistent)
631630
}
632631

633632
pub fn break_offset(p: &mut Printer, n: uint, off: int) -> io::IoResult<()> {
634-
p.pretty_print(Break(BreakToken {
633+
p.pretty_print(Token::Break(BreakToken {
635634
offset: off,
636635
blank_space: n as int
637636
}))
638637
}
639638

640-
pub fn end(p: &mut Printer) -> io::IoResult<()> { p.pretty_print(End) }
639+
pub fn end(p: &mut Printer) -> io::IoResult<()> {
640+
p.pretty_print(Token::End)
641+
}
641642

642-
pub fn eof(p: &mut Printer) -> io::IoResult<()> { p.pretty_print(Eof) }
643+
pub fn eof(p: &mut Printer) -> io::IoResult<()> {
644+
p.pretty_print(Token::Eof)
645+
}
643646

644647
pub fn word(p: &mut Printer, wrd: &str) -> io::IoResult<()> {
645-
p.pretty_print(String(/* bad */ wrd.to_string(), wrd.len() as int))
648+
p.pretty_print(Token::String(/* bad */ wrd.to_string(), wrd.len() as int))
646649
}
647650

648651
pub fn huge_word(p: &mut Printer, wrd: &str) -> io::IoResult<()> {
649-
p.pretty_print(String(/* bad */ wrd.to_string(), SIZE_INFINITY))
652+
p.pretty_print(Token::String(/* bad */ wrd.to_string(), SIZE_INFINITY))
650653
}
651654

652655
pub fn zero_word(p: &mut Printer, wrd: &str) -> io::IoResult<()> {
653-
p.pretty_print(String(/* bad */ wrd.to_string(), 0))
656+
p.pretty_print(Token::String(/* bad */ wrd.to_string(), 0))
654657
}
655658

656659
pub fn spaces(p: &mut Printer, n: uint) -> io::IoResult<()> {
@@ -670,7 +673,9 @@ pub fn hardbreak(p: &mut Printer) -> io::IoResult<()> {
670673
}
671674

672675
pub fn hardbreak_tok_offset(off: int) -> Token {
673-
Break(BreakToken {offset: off, blank_space: SIZE_INFINITY})
676+
Token::Break(BreakToken {offset: off, blank_space: SIZE_INFINITY})
674677
}
675678

676-
pub fn hardbreak_tok() -> Token { return hardbreak_tok_offset(0); }
679+
pub fn hardbreak_tok() -> Token {
680+
hardbreak_tok_offset(0)
681+
}

0 commit comments

Comments
 (0)