typing TypeStructure<T>
commitdf116c1724e2a49acba40ae0edacd65fe9084b8f
authorXiao Shi <xshi@fb.com>
Sat, 15 Aug 2015 02:17:31 +0000 (14 19:17 -0700)
committerhhvm-bot <hhvm-bot@fb.com>
Sat, 15 Aug 2015 02:30:30 +0000 (14 19:30 -0700)
tree38590446d68e43c044c811c167c02c878c158862
parentf4facc05f31916d4337d34eaa48f96e2b7fbcbfa
typing TypeStructure<T>

Summary: typing TypeStructure<T> as an alias of a shape, with the exception of the classname field, which we make non-nullable when the type parameter T is of a class kind.

(The scope of this diff is lessened due to the lack of typedef expansion support in the runtime. See D2310657 for a mocking of more full-fledged typing of the shape representation of type T)

Reviewed By: @dlreeves

Differential Revision: D2339718
17 files changed:
hphp/hack/hhi/typestructure.hhi
hphp/hack/src/h2tp/test/convert_hack_test_inputs_base.py
hphp/hack/src/hh_single_type_check.ml
hphp/hack/src/js/Makefile
hphp/hack/src/naming/naming_special_names.ml
hphp/hack/src/typing/typing_structure.ml [new file with mode: 0644]
hphp/hack/src/typing/typing_tdef.ml
hphp/hack/test/typecheck/type_structure/typing_type_structure1.php [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure1.php.exp [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure2.php [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure2.php.exp [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure3.php [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure3.php.exp [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure4.php [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure4.php.exp [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure5.php [new file with mode: 0644]
hphp/hack/test/typecheck/type_structure/typing_type_structure5.php.exp [new file with mode: 0644]