@@ -138,7 +138,6 @@ use ring::RingBuffer;
138
138
use std::borrow::Cow;
139
139
use std::collections::VecDeque;
140
140
use std::fmt;
141
- use tracing::debug;
142
141
143
142
/// How to break. Described in more detail in the module docs.
144
143
#[derive(Clone, Copy, PartialEq)]
@@ -193,22 +192,6 @@ impl fmt::Display for Token {
193
192
}
194
193
}
195
194
196
- fn buf_str(buf: &RingBuffer<BufEntry>, left: usize, right: usize, lim: usize) -> String {
197
- let mut i = left;
198
- let mut l = lim;
199
- let mut s = String::from("[");
200
- while i != right && l != 0 {
201
- l -= 1;
202
- if i != left {
203
- s.push_str(", ");
204
- }
205
- s.push_str(&format!("{}={}", buf[i].size, &buf[i].token));
206
- i += 1;
207
- }
208
- s.push(']');
209
- s
210
- }
211
-
212
195
#[derive(Copy, Clone)]
213
196
enum PrintStackBreak {
214
197
Fits,
@@ -267,7 +250,6 @@ impl Default for BufEntry {
267
250
impl Printer {
268
251
pub fn new() -> Self {
269
252
let linewidth = 78;
270
- debug!("Printer::new {}", linewidth);
271
253
let mut buf = RingBuffer::new();
272
254
buf.advance_right();
273
255
Printer {
@@ -310,16 +292,13 @@ impl Printer {
310
292
} else {
311
293
self.advance_right();
312
294
}
313
- debug!("pp Begin({})/buffer Vec<{},{}>", b.offset, self.left, self.right);
314
295
self.scan_push(BufEntry { token: Token::Begin(b), size: -self.right_total });
315
296
}
316
297
317
298
fn scan_end(&mut self) {
318
299
if self.scan_stack.is_empty() {
319
- debug!("pp End/print Vec<{},{}>", self.left, self.right);
320
300
self.print_end();
321
301
} else {
322
- debug!("pp End/buffer Vec<{},{}>", self.left, self.right);
323
302
self.advance_right();
324
303
self.scan_push(BufEntry { token: Token::End, size: -1 });
325
304
}
@@ -334,18 +313,15 @@ impl Printer {
334
313
} else {
335
314
self.advance_right();
336
315
}
337
- debug!("pp Break({})/buffer Vec<{},{}>", b.offset, self.left, self.right);
338
316
self.check_stack(0);
339
317
self.scan_push(BufEntry { token: Token::Break(b), size: -self.right_total });
340
318
self.right_total += b.blank_space;
341
319
}
342
320
343
321
fn scan_string(&mut self, s: Cow<'static, str>) {
344
322
if self.scan_stack.is_empty() {
345
- debug!("pp String('{}')/print Vec<{},{}>", s, self.left, self.right);
346
323
self.print_string(s);
347
324
} else {
348
- debug!("pp String('{}')/buffer Vec<{},{}>", s, self.left, self.right);
349
325
self.advance_right();
350
326
let len = s.len() as isize;
351
327
self.buf[self.right] = BufEntry { token: Token::String(s), size: len };
@@ -355,18 +331,8 @@ impl Printer {
355
331
}
356
332
357
333
fn check_stream(&mut self) {
358
- debug!(
359
- "check_stream Vec<{}, {}> with left_total={}, right_total={}",
360
- self.left, self.right, self.left_total, self.right_total
361
- );
362
334
if self.right_total - self.left_total > self.space {
363
- debug!(
364
- "scan window is {}, longer than space on line ({})",
365
- self.right_total - self.left_total,
366
- self.space
367
- );
368
335
if Some(&self.left) == self.scan_stack.back() {
369
- debug!("setting {} to infinity and popping", self.left);
370
336
let scanned = self.scan_pop_bottom();
371
337
self.buf[scanned].size = SIZE_INFINITY;
372
338
}
@@ -378,7 +344,6 @@ impl Printer {
378
344
}
379
345
380
346
fn scan_push(&mut self, entry: BufEntry) {
381
- debug!("scan_push {}", self.right);
382
347
self.buf[self.right] = entry;
383
348
self.scan_stack.push_front(self.right);
384
349
}
@@ -401,11 +366,6 @@ impl Printer {
401
366
}
402
367
403
368
fn advance_left(&mut self) {
404
- debug!(
405
- "advance_left Vec<{},{}>, sizeof({})={}",
406
- self.left, self.right, self.left, self.buf[self.left].size
407
- );
408
-
409
369
let mut left_size = self.buf[self.left].size;
410
370
411
371
while left_size >= 0 {
@@ -465,14 +425,12 @@ impl Printer {
465
425
}
466
426
467
427
fn print_newline(&mut self, amount: isize) {
468
- debug!("NEWLINE {}", amount);
469
428
self.out.push('\n');
470
429
self.pending_indentation = 0;
471
430
self.indent(amount);
472
431
}
473
432
474
433
fn indent(&mut self, amount: isize) {
475
- debug!("INDENT {}", amount);
476
434
self.pending_indentation += amount;
477
435
}
478
436
@@ -485,40 +443,33 @@ impl Printer {
485
443
fn print_begin(&mut self, b: BeginToken, l: isize) {
486
444
if l > self.space {
487
445
let col = self.margin - self.space + b.offset;
488
- debug!("print Begin -> push broken block at col {}", col);
489
446
self.print_stack
490
447
.push(PrintStackElem { offset: col, pbreak: PrintStackBreak::Broken(b.breaks) });
491
448
} else {
492
- debug!("print Begin -> push fitting block");
493
449
self.print_stack.push(PrintStackElem { offset: 0, pbreak: PrintStackBreak::Fits });
494
450
}
495
451
}
496
452
497
453
fn print_end(&mut self) {
498
- debug!("print End -> pop End");
499
454
self.print_stack.pop().unwrap();
500
455
}
501
456
502
457
fn print_break(&mut self, b: BreakToken, l: isize) {
503
458
let top = self.get_top();
504
459
match top.pbreak {
505
460
PrintStackBreak::Fits => {
506
- debug!("print Break({}) in fitting block", b.blank_space);
507
461
self.space -= b.blank_space;
508
462
self.indent(b.blank_space);
509
463
}
510
464
PrintStackBreak::Broken(Breaks::Consistent) => {
511
- debug!("print Break({}+{}) in consistent block", top.offset, b.offset);
512
465
self.print_newline(top.offset + b.offset);
513
466
self.space = self.margin - (top.offset + b.offset);
514
467
}
515
468
PrintStackBreak::Broken(Breaks::Inconsistent) => {
516
469
if l > self.space {
517
- debug!("print Break({}+{}) w/ newline in inconsistent", top.offset, b.offset);
518
470
self.print_newline(top.offset + b.offset);
519
471
self.space = self.margin - (top.offset + b.offset);
520
472
} else {
521
- debug!("print Break({}) w/o newline in inconsistent", b.blank_space);
522
473
self.indent(b.blank_space);
523
474
self.space -= b.blank_space;
524
475
}
@@ -528,7 +479,6 @@ impl Printer {
528
479
529
480
fn print_string(&mut self, s: Cow<'static, str>) {
530
481
let len = s.len() as isize;
531
- debug!("print String({})", s);
532
482
// assert!(len <= space);
533
483
self.space -= len;
534
484
@@ -545,8 +495,6 @@ impl Printer {
545
495
}
546
496
547
497
fn print(&mut self, token: Token, l: isize) {
548
- debug!("print {} {} (remaining line space={})", token, l, self.space);
549
- debug!("{}", buf_str(&self.buf, self.left, self.right, 6));
550
498
match token {
551
499
Token::Begin(b) => self.print_begin(b, l),
552
500
Token::End => self.print_end(),
0 commit comments