code: public List<Class<Enum>> getOptionGroups() {
          return getOptions().stream().<Class<Enum>>map(Enum::getDeclaringClass).distinct()
                  .sorted(Comparator.comparing(Class::getSimpleName))
                  .collect(Collectors.toList());
      }
docs: In contrast to {@link #getOptions()} returns only enum types of used options.
  For example, {@link ru.vyarus.dropwizard.guice.GuiceyOptions} is enum type for core guicey options.
  
  @return list of used option enums sorted by name