code: public static <T> Set<T> cast(Set<?> set) {
      return set == null ? null : new CastingSet<T>(set);
    }
docs: <p>Casts the elements in a set in a lazy fashion. Changes to the returned set are reflected in the the given
  set.</p>
  
  @param <T> the type parameter
  @param set the set
  @return the casted set or null if the given set is null