code: protected void addField(String field) {
      if (field.contains("/")) {
        // Splits the field into, at most, 2 strings - "prefix" / "suffix" - since we guarantee the
        // field contains a / this will ALWAYS have a length of 2.
        String[] fields = field.split("/", 2);
        String prefix = fields[0];
        // This may be an empty string if the field passed in was "foo/"
        String suffix = fields[1];
        if ("".equals(suffix)) {
          filters.put(prefix, UNFILTERED_FIELD);
          return;
        }
  
        FieldFilter nestedFilter = filters.get(prefix);
        if (filters.containsKey(prefix) && nestedFilter == UNFILTERED_FIELD) {
          return;
        } else if (nestedFilter == null) {
          nestedFilter = new FieldFilter(true);
          filters.put(prefix, nestedFilter);
        }
        nestedFilter.addField(suffix);
      } else {
        filters.put(field, UNFILTERED_FIELD);
      }
    }
docs: Adds a field to be filtered for this FieldFilter.