code: public static void generate(ConfigurationImpl configuration,
                                  IndexBuilder indexbuilder) throws DocFileIOException {
          DocPath path = DocPaths.INDEX_FILES;
          Set<Character> keys = new TreeSet<>(indexbuilder.getIndexMap().keySet());
          keys.addAll(configuration.tagSearchIndexKeys);
          ListIterator<Character> li = new ArrayList<>(keys).listIterator();
          while (li.hasNext()) {
              Object ch = li.next();
              DocPath filename = DocPaths.indexN(li.nextIndex());
              SplitIndexWriter indexgen = new SplitIndexWriter(configuration,
                      path.resolve(filename),
                      indexbuilder, keys, li.previousIndex(), li.nextIndex());
              indexgen.generateIndexFile((Character) ch);
              if (!li.hasNext()) {
                  indexgen.createSearchIndexFiles();
              }
          }
      }
docs: Generate separate index files, for each Unicode character, listing all
  the members starting with the particular unicode character.
  
  @param configuration the configuration for this doclet
  @param indexbuilder IndexBuilder built by {@link IndexBuilder}
  @throws DocFileIOException if there is a problem generating the index files