code: public MergedSelectionSet collectFields(FieldCollectorParameters parameters, SelectionSet selectionSet) {
          Map<String, MergedField> subFields = new LinkedHashMap<>();
          List<String> visitedFragments = new ArrayList<>();
          this.collectFields(parameters, selectionSet, visitedFragments, subFields);
          return newMergedSelectionSet().subFields(subFields).build();
      }
docs: Given a selection set this will collect the sub-field selections and return it as a map
  
  @param parameters   the parameters to this method
  @param selectionSet the selection set to collect on
  
  @return a map of the sub field selections