String (PsiRecordComponent @NotNull [] components) { String hashExpression = components.length == 0 ? "1" : CommonClassNames.JAVA_UTIL_OBJECTS + ".hash(" + StreamEx.of(components).map(c -> c.getName()).joining(",") + ")"; return "@" + CommonClassNames.JAVA_LANG_OVERRIDE + "\n" + "public int hashCode() {\n" + "return " + hashExpression + ";\n" + "}\n"; }