src/share/classes/com/sun/tools/javap/BasicWriter.java

changeset 283
cd0630109de5
parent 54
eaf608c64fec
child 348
743f17b55b44
     1.1 --- a/src/share/classes/com/sun/tools/javap/BasicWriter.java	Tue May 19 11:43:50 2009 -0700
     1.2 +++ b/src/share/classes/com/sun/tools/javap/BasicWriter.java	Tue May 19 11:50:54 2009 -0700
     1.3 @@ -44,6 +44,9 @@
     1.4      protected BasicWriter(Context context) {
     1.5          lineWriter = LineWriter.instance(context);
     1.6          out = context.get(PrintWriter.class);
     1.7 +        messages = context.get(Messages.class);
     1.8 +        if (messages == null)
     1.9 +            throw new AssertionError();
    1.10      }
    1.11  
    1.12      protected void print(String s) {
    1.13 @@ -88,8 +91,26 @@
    1.14          return "???";
    1.15      }
    1.16  
    1.17 +    protected String space(int w) {
    1.18 +        if (w < spaces.length && spaces[w] != null)
    1.19 +            return spaces[w];
    1.20 +
    1.21 +        StringBuilder sb = new StringBuilder();
    1.22 +        for (int i = 0; i < w; i++)
    1.23 +            sb.append(" ");
    1.24 +
    1.25 +        String s = sb.toString();
    1.26 +        if (w < spaces.length)
    1.27 +            spaces[w] = s;
    1.28 +
    1.29 +        return s;
    1.30 +    }
    1.31 +
    1.32 +    private String[] spaces = new String[80];
    1.33 +
    1.34      private LineWriter lineWriter;
    1.35      private PrintWriter out;
    1.36 +    protected Messages messages;
    1.37  
    1.38      private static class LineWriter {
    1.39          static LineWriter instance(Context context) {

mercurial