test/tools/javac/processing/model/util/GetTypeElemBadArg.java

changeset 699
d2aaaec153e8
parent 554
9d9f26857129
child 1466
b52a38d4536c
equal deleted inserted replaced
698:f94af0667151 699:d2aaaec153e8
1 /* 1 /*
2 * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
24 /* 24 /*
25 * @test 25 * @test
26 * @bug 6346506 6408241 26 * @bug 6346506 6408241
27 * @summary getTypeElement should tolerate a type that can't be found 27 * @summary getTypeElement should tolerate a type that can't be found
28 * @author Scott Seligman 28 * @author Scott Seligman
29 * @build GetTypeElemBadArg 29 * @library ../../../lib
30 * @build JavacTestingAbstractProcessor GetTypeElemBadArg
30 * @compile -processor GetTypeElemBadArg -proc:only GetTypeElemBadArg.java 31 * @compile -processor GetTypeElemBadArg -proc:only GetTypeElemBadArg.java
31 */ 32 */
32 33
33 import java.util.Set; 34 import java.util.Set;
34 import javax.annotation.processing.*; 35 import javax.annotation.processing.*;
35 import javax.lang.model.SourceVersion; 36 import javax.lang.model.SourceVersion;
36 import javax.lang.model.element.*; 37 import javax.lang.model.element.*;
37 import javax.lang.model.type.*; 38 import javax.lang.model.type.*;
38 import javax.lang.model.util.*; 39 import javax.lang.model.util.*;
39 40
40 @SupportedAnnotationTypes("*") 41 public class GetTypeElemBadArg extends JavacTestingAbstractProcessor {
41 public class GetTypeElemBadArg extends AbstractProcessor {
42
43 Elements elements;
44
45 public void init(ProcessingEnvironment penv) {
46 super.init(penv);
47 elements = penv.getElementUtils();
48 }
49
50 public boolean process(Set<? extends TypeElement> tes, 42 public boolean process(Set<? extends TypeElement> tes,
51 RoundEnvironment round) { 43 RoundEnvironment round) {
52 if (round.processingOver()) return true; 44 if (round.processingOver()) return true;
53 45
54 // A missing superclass should be tolerated. 46 // A missing superclass should be tolerated.
61 throw new AssertionError(); 53 throw new AssertionError();
62 } 54 }
63 return true; 55 return true;
64 } 56 }
65 57
66
67 @Override
68 public SourceVersion getSupportedSourceVersion() {
69 return SourceVersion.latest();
70 }
71
72 private static void tellAbout(TypeElement t) { 58 private static void tellAbout(TypeElement t) {
73 System.out.println(t); 59 System.out.println(t);
74 System.out.println(t.getClass()); 60 System.out.println(t.getClass());
75 System.out.println(t.getKind()); 61 System.out.println(t.getKind());
76 System.out.println(); 62 System.out.println();

mercurial