Lines Matching defs:element
40 import javax.lang.model.element.Element;
41 import javax.lang.model.element.ElementKind;
42 import javax.lang.model.element.Modifier;
43 import javax.lang.model.element.Name;
44 import javax.lang.model.element.PackageElement;
45 import javax.lang.model.element.TypeElement;
46 import javax.lang.model.element.VariableElement;
76 private void processElement(Element element, OptionsInfo info) {
78 if (!element.getModifiers().contains(Modifier.STATIC)) {
79 processingEnv.getMessager().printMessage(Kind.ERROR, "Option field must be static", element);
82 if (element.getModifiers().contains(Modifier.PRIVATE)) {
83 processingEnv.getMessager().printMessage(Kind.ERROR, "Option field cannot be private", element);
87 Option annotation = element.getAnnotation(Option.class);
89 assert element instanceof VariableElement;
90 assert element.getKind() == ElementKind.FIELD;
91 VariableElement field = (VariableElement) element;
99 processingEnv.getMessager().printMessage(Kind.ERROR, "Option field must be of type " + OptionValue.class.getName(), element);
107 processingEnv.getMessager().printMessage(Kind.ERROR, msg, element);
112 processingEnv.getMessager().printMessage(Kind.ERROR, "Option field must be static", element);
116 processingEnv.getMessager().printMessage(Kind.ERROR, "Option field cannot be private", element);
124 processingEnv.getMessager().printMessage(Kind.ERROR, "Option help text must start with upper case letter", element);
135 processingEnv.getMessager().printMessage(Kind.ERROR, "Option name must start with capital letter", element);
152 Element enclosing = element.getEnclosingElement();
161 processingEnv.getMessager().printMessage(Kind.ERROR, msg, element);
320 private static Element topDeclaringType(Element element) {
321 Element enclosing = element.getEnclosingElement();
323 assert element.getKind() == ElementKind.CLASS || element.getKind() == ElementKind.INTERFACE;
324 return element;
336 for (Element element : roundEnv.getElementsAnnotatedWith(Option.class)) {
337 if (!processed.contains(element)) {
338 processed.add(element);
339 Element topDeclaringType = topDeclaringType(element);
345 processElement(element, options);