@Override public FieldInfo[] getDeclaredFields() { List<FieldInfo> result = new ArrayList<>(); Iterable<? extends Field> implFields = classDef.getFields(); for (Field field : implFields) { FieldInfo fi = new FieldInfo(); fi.typeName = DexlibAdapter.getTypeName(field.getType()); fi.modifiers = field.getAccessFlags(); fi.annotations = convertAnnotations(field.getAnnotations()); fi.name = field.getName(); result.add(fi); } FieldInfo[] array = new FieldInfo[result.size()]; return result.toArray(array); }