docs: @SuppressWarnings("all")
      public static <T> Set<T> toTypedSet(Object data, Class<T> type) {
          Set<T> setResult = new HashSet<>();
          if (data == null) {
              return setResult;
          }
          if (data instanceof Collection) {
              Collection collection = (Collection) data;
              for (Object o : collection) {
                  setResult.add(Reflection.toType(o, type));
              }
              return setResult;
          }
          if (data.getClass().isArray()) {
              for (Object o : ArrayUtil.toObjectArray(data)) {
                  setResult.add(Reflection.toType(o, type));
              }
              return setResult;
          }
          setResult.add(Reflection.toType(data, type));
          return setResult;
      }