void () { Arrays.stream(myClass.getFields()).filter(field -> !field.hasModifierProperty(STATIC)) .forEach(field -> myFieldAccessors.put(field, new ArrayList<>())); for (PsiMethod method : myClass.getMethods()) { if (method.isConstructor()) { myConstructors.add(new RecordConstructorCandidate(method, myFieldAccessors.keySet())); continue; } if (MethodUtils.isEquals(method)) { myEqualsMethod = method; continue; } if (MethodUtils.isHashCode(method)) { myHashCodeMethod = method; continue; } if (!throwsOnlyUncheckedExceptions(method)) { myOrdinaryMethods.add(method); continue; } FieldAccessorCandidate fieldAccessorCandidate = createFieldAccessor(method); if (fieldAccessorCandidate == null) { myOrdinaryMethods.add(method); } else { myFieldAccessors.putValue(fieldAccessorCandidate.myBackingField, fieldAccessorCandidate); } } }