code: @NotNull
      public static <T> Collector<T, ?, Set<T>> toSet() {
          return new CollectorsImpl<T, Set<T>, Set<T>>(
  
                  new Supplier<Set<T>>() {
                      @NotNull
                      @Override
                      public Set<T> get() {
                          return new HashSet<T>();
                      }
                  },
  
                  new BiConsumer<Set<T>, T>() {
                      @Override
                      public void accept(@NotNull Set<T> set, T t) {
                          set.add(t);
                      }
                  }
          );
      }
docs: Returns a {@code Collector} that fills new {@code Set} with input elements.
  
  @param <T> the type of the input elements
  @return a {@code Collector}