Package com.strobel.decompiler
Class LineNumberPrintWriter
- java.lang.Object
-
- java.io.Writer
-
- java.io.PrintWriter
-
- com.strobel.decompiler.LineNumberPrintWriter
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.Appendable,java.lang.AutoCloseable
class LineNumberPrintWriter extends java.io.PrintWriterA specialization ofPrintWriterwhich can automatically prefix lines with a Java-commented, justified line number. This class overrides only theprint(String)andprintln(String)methods, therefore all other methods must be avoided.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String_emptyPrefixprivate java.lang.String_formatprivate boolean_needsPrefixprivate boolean_suppressLineNumbersstatic intNO_LINE_NUMBER
-
Constructor Summary
Constructors Constructor Description LineNumberPrintWriter(int maxLineNo, java.io.Writer w)Creates an instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voiddoPrefix(int lineNumber)voidprint(int lineNumber, java.lang.String s)voidprint(java.lang.String s)voidprintln(int lineNumber, java.lang.String s)voidprintln(java.lang.String s)voidsuppressLineNumbers()Causes 'this' printer to not emit any line numbers or any whitespace padding.-
Methods inherited from class java.io.PrintWriter
append, append, append, checkError, clearError, close, flush, format, format, print, print, print, print, print, print, print, print, printf, printf, println, println, println, println, println, println, println, println, println, setError, write, write, write, write, write
-
-
-
-
Field Detail
-
NO_LINE_NUMBER
public static final int NO_LINE_NUMBER
- See Also:
- Constant Field Values
-
_emptyPrefix
private final java.lang.String _emptyPrefix
-
_format
private final java.lang.String _format
-
_needsPrefix
private boolean _needsPrefix
-
_suppressLineNumbers
private boolean _suppressLineNumbers
-
-
Constructor Detail
-
LineNumberPrintWriter
public LineNumberPrintWriter(int maxLineNo, java.io.Writer w)Creates an instance. The only valid "print" methods to call areprint(String)andprintln(String).- Parameters:
maxLineNo- the highest line number that 'this' will ever encounterw- the underlyingWriterto which characters are printed.
-
-
Method Detail
-
suppressLineNumbers
public void suppressLineNumbers()
Causes 'this' printer to not emit any line numbers or any whitespace padding.
-
print
public void print(java.lang.String s)
- Overrides:
printin classjava.io.PrintWriter
-
println
public void println(java.lang.String s)
- Overrides:
printlnin classjava.io.PrintWriter
-
println
public void println(int lineNumber, java.lang.String s)
-
print
public void print(int lineNumber, java.lang.String s)
-
doPrefix
private void doPrefix(int lineNumber)
-
-