List<VariableElement> fields = ElementFilter.fieldsIn(element.getEnclosedElements());
for (VariableElement field : fields) {
if (field.getAnnotation(Ignore.class) != null) {
continue;
}
<BUG>Element fieldElement = null;
TypeMirror fieldType = field.asType();
if (!fieldType.getKind().isPrimitive()) {
fieldElement = ((DeclaredType) fieldType).asElement();
}</BUG>
if (fieldElement != null && configSet.contains(fieldElement)) {

List<VariableElement> fields = ElementFilter.fieldsIn(element.getEnclosedElements());
for (VariableElement field : fields) {
if (field.getAnnotation(Ignore.class) != null) {
continue;
}
Element fieldElement = null;
List<TypeMirror> argumentTypes = null;
TypeMirror fieldType = field.asType();
if (fieldType.getKind() == TypeKind.DECLARED) {
fieldElement = ((DeclaredType) fieldType).asElement();
argumentTypes = (List<TypeMirror>) ((DeclaredType) fieldType).getTypeArguments();
}
if (fieldElement != null && configSet.contains(fieldElement)) {
