private void appendEnumFieldMembers(@Nonnull Printer out) {
		// Filter out enum constants
		List<FieldMember> enumConstFields = new ArrayList<>();
		List<FieldMember> otherFields = new ArrayList<>();
		for (FieldMember field : classInfo.getFields()) {
			if (isEnumConst(field)) {
				enumConstFields.add(field);
			} else {
				otherFields.add(field);
			}
		}

		// Print enum constants first.
		for (int i = 0; i < enumConstFields.size(); i++) {
			String suffix = i == enumConstFields.size() - 1 ? ";\n" : ", ";
			FieldMember enumConst = enumConstFields.get(i);
			StringBuilder sb = new StringBuilder();
			String annotations = PrintUtils.annotationsToString(format, enumConst);
			if (!annotations.isBlank())
				sb.append(annotations).append('\n');
			sb.append(enumConst.getName()).append(suffix);
			out.appendMultiLine(sb.toString());
		}
		out.newLine();

		// And then the rest of the fields
		for (FieldMember field : otherFields) {
			appendField(out, field);
		}
	}
Appends all enum constants, then other fields in the class.

@param out
		Printer to write to.

@see #appendEnumFieldMembers(Printer) To be used when the current class is not an enum.
recaf-core/src/main/java/software/coley/recaf/services/decompile/fallback/print/ClassPrinter.java