Enhance `HashSet` API
commit2dc21349d78caf84f2016d70432298c5febcef7b
authorWaleed Khan <waleedk@fb.com>
Thu, 12 Mar 2020 22:03:28 +0000 (12 15:03 -0700)
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>
Thu, 12 Mar 2020 22:14:50 +0000 (12 15:14 -0700)
tree704b4de3a82603a607b63333e1c93f48d75b0904
parent44142798d80f2e7ea1768cc80c421576e70adbd5
Enhance `HashSet` API

Summary:
Some improvements to the `HashSet` API:

* Make `create` take `unit` instead of `int`. Callers who want to create a fixed-size hashset have been ported to the new `of_list` constructor.
* Add labels to function parameters.
* Add `to_list`/`of_list` functions.
* Add a handful of utility functions (`union`, `intersect`, `filter`).

Also migrate to use `Core_kernel` internally.

Most of this commit is updating call-sites.

Differential Revision: D20269911

fbshipit-source-id: b2f1c87e6560d1c1afc02553021f869ce631df72
64 files changed:
hphp/hack/src/client/clientCheck.ml
hphp/hack/src/hh_single_type_check.ml
hphp/hack/src/naming/naming_special_names.ml
hphp/hack/src/parser/hh_autoimport.ml
hphp/hack/src/server/serverExtractStandalone.ml
hphp/hack/src/stubs/glean_dependency_graph.ml
hphp/hack/src/utils/collections/hashSet.ml
hphp/hack/src/utils/collections/hashSet.mli
hphp/hack/test/dump_glean_deps/classish.php.exp
hphp/hack/test/integration/data/dependencies/expected/__+foo++render.php.exp
hphp/hack/test/integration/data/dependencies/expected/__CCC++with_nested_type_access.php.exp
hphp/hack/test/integration/data/dependencies/expected/__Derived++overridden.php.exp
hphp/hack/test/integration/data/dependencies/expected/__Ns__same_name_different_namespaces.php.exp
hphp/hack/test/integration/data/dependencies/expected/__SealedInterface++method.php.exp
hphp/hack/test/integration/data/dependencies/expected/__SimpleDerived++call_parent_method.php.exp
hphp/hack/test/integration/data/dependencies/expected/__TExtendsWithConsistentConstruct++get.php.exp
hphp/hack/test/integration/data/dependencies/expected/__TFlob++g.php.exp
hphp/hack/test/integration/data/dependencies/expected/__TFlobby++g.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithAbstractConst++with_abstract_type_constants.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithConst++with_type_constants.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithOptionalConstructorArguments++get.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithReactiveMethods++call_reactive.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithReactiveMethods++call_shallow_reactive.php.exp
hphp/hack/test/integration/data/dependencies/expected/__WithTypeAliasHint++getX.php.exp
hphp/hack/test/integration/data/dependencies/expected/__call_constructors.php.exp
hphp/hack/test/integration/data/dependencies/expected/__call_defaulted.php.exp
hphp/hack/test/integration/data/dependencies/expected/__call_shallow_reactive.php.exp
hphp/hack/test/integration/data/dependencies/expected/__corge.php.exp
hphp/hack/test/integration/data/dependencies/expected/__does_not_use_class_methods.php.exp
hphp/hack/test/integration/data/dependencies/expected/__frob_query.php.exp
hphp/hack/test/integration/data/dependencies/expected/__kwery.php.exp
hphp/hack/test/integration/data/dependencies/expected/__shallow_toplevel.php.exp
hphp/hack/test/integration/data/dependencies/expected/__use_properties.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_IEWGPCOUP.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_bounded_generic_class_tparam.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_constants.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_constructor_dependency.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_contra_tparam.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_enum_and_constant.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_enum_type_alias.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_generic_interface.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_generics.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_implementations.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_interface.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_is_refinement.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_method_defined_in_trait.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_method_defined_in_trait2.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_nested_type_const.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_newtype_with_newtype_bound.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_non_generic_type.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_nontrivial_fun_decls.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_overriding.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_parent_constructor_call.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_reified_generics.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_requiring_interface.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_requiring_trait.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_shape_type_alias.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_static_property.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_traits.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_type_const_from_implemented_interface.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_type_const_from_required_interface.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_type_constants.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_typedefs.php.exp
hphp/hack/test/integration/data/dependencies/expected/__with_unsafe_type_hh_fixme.php.exp