test/tools/javac/api/TestJavacTaskScanner.java

Print this page




 162             fm.setLocation(SOURCE_PATH,  Arrays.asList(test_src));
 163             fm.setLocation(CLASS_PATH,   Arrays.asList(test_classes, javac_classes));
 164             fm.setLocation(CLASS_OUTPUT, Arrays.asList(test_classes));
 165         } catch (IOException e) {
 166             throw new AssertionError(e);
 167         }
 168         return fm;
 169     }
 170 }
 171 
 172 class MyScanner extends Scanner {
 173 
 174     public static class Factory extends ScannerFactory {
 175         public Factory(Context context, TestJavacTaskScanner test) {
 176             super(context);
 177             this.test = test;
 178         }
 179 
 180         @Override
 181         public Scanner newScanner(CharSequence input, boolean keepDocComments) {
 182             assert !keepDocComments;
 183             if (input instanceof CharBuffer) {
 184                 return new MyScanner(this, (CharBuffer)input, test);
 185             } else {
 186                 char[] array = input.toString().toCharArray();
 187                 return newScanner(array, array.length, keepDocComments);
 188             }
 189         }
 190 
 191         @Override
 192         public Scanner newScanner(char[] input, int inputLength, boolean keepDocComments) {
 193             assert !keepDocComments;
 194             return new MyScanner(this, input, inputLength, test);
 195         }
 196 
 197         private TestJavacTaskScanner test;
 198     }
 199     protected MyScanner(ScannerFactory fac, CharBuffer buffer, TestJavacTaskScanner test) {
 200         super(fac, buffer);
 201         this.test = test;
 202     }
 203     protected MyScanner(ScannerFactory fac, char[] input, int inputLength, TestJavacTaskScanner test) {
 204         super(fac, input, inputLength);
 205         this.test = test;
 206     }
 207 
 208     public void nextToken() {
 209         super.nextToken();
 210         Token tk = token();
 211         System.err.format("Saw token %s %n", tk.kind);
 212         test.numTokens++;
 213     }


 162             fm.setLocation(SOURCE_PATH,  Arrays.asList(test_src));
 163             fm.setLocation(CLASS_PATH,   Arrays.asList(test_classes, javac_classes));
 164             fm.setLocation(CLASS_OUTPUT, Arrays.asList(test_classes));
 165         } catch (IOException e) {
 166             throw new AssertionError(e);
 167         }
 168         return fm;
 169     }
 170 }
 171 
 172 class MyScanner extends Scanner {
 173 
 174     public static class Factory extends ScannerFactory {
 175         public Factory(Context context, TestJavacTaskScanner test) {
 176             super(context);
 177             this.test = test;
 178         }
 179 
 180         @Override
 181         public Scanner newScanner(CharSequence input, boolean keepDocComments) {

 182             if (input instanceof CharBuffer) {
 183                 return new MyScanner(this, (CharBuffer)input, test);
 184             } else {
 185                 char[] array = input.toString().toCharArray();
 186                 return newScanner(array, array.length, keepDocComments);
 187             }
 188         }
 189 
 190         @Override
 191         public Scanner newScanner(char[] input, int inputLength, boolean keepDocComments) {

 192             return new MyScanner(this, input, inputLength, test);
 193         }
 194 
 195         private TestJavacTaskScanner test;
 196     }
 197     protected MyScanner(ScannerFactory fac, CharBuffer buffer, TestJavacTaskScanner test) {
 198         super(fac, buffer);
 199         this.test = test;
 200     }
 201     protected MyScanner(ScannerFactory fac, char[] input, int inputLength, TestJavacTaskScanner test) {
 202         super(fac, input, inputLength);
 203         this.test = test;
 204     }
 205 
 206     public void nextToken() {
 207         super.nextToken();
 208         Token tk = token();
 209         System.err.format("Saw token %s %n", tk.kind);
 210         test.numTokens++;
 211     }