Returns all options from the specified class. @param clz options class @return option instances @throws IllegalAccessException exception
(final Class<? extends Options> clz)
| 716 | * @throws IllegalAccessException exception |
| 717 | */ |
| 718 | private static Option<?>[] options(final Class<? extends Options> clz) |
| 719 | throws IllegalAccessException { |
| 720 | |
| 721 | final ArrayList<Option<?>> options = new ArrayList<>(); |
| 722 | for(final Field f : clz.getFields()) { |
| 723 | if(!Modifier.isStatic(f.getModifiers())) continue; |
| 724 | if(f.get(null) instanceof final Option opt) options.add(opt); |
| 725 | } |
| 726 | return options.toArray(Option[]::new); |
| 727 | } |
| 728 | |
| 729 | /** |
| 730 | * Reads the configuration file and initializes the options. |