Control verbose display of types with hh_log_level
commitf0c7893669650055d31f65644aa2d6499b878272
authorAndrew Kennedy <akenn@fb.com>
Sat, 15 Dec 2018 17:12:21 +0000 (15 09:12 -0800)
committerHhvm Bot <hhvm-bot@users.noreply.github.com>
Sat, 15 Dec 2018 17:14:43 +0000 (15 09:14 -0800)
tree550859847739db54a4d97d28c0ea511783d30ac0
parent0aa50bf33b953d331bd3480086df7185949911fe
Control verbose display of types with hh_log_level

Summary:
Display types verbosely if `hh_log_level("show", 2)` is set (or `--hh-log-level show 2` from the command line). In particular, in verbose mode, solved type variables are shown preceding the type itself; in non-verbose mode, only non-solved type variables are displayed.

Also in `new_inference` we now show the empty type as `nothing`. Precedent here is Scala, whose bottom type is called `Nothing`.

Reviewed By: CatherineGasnier

Differential Revision: D13431237

fbshipit-source-id: ae08fc23d61dd863824024763fb2b2864a01622a
hphp/hack/src/typing/typing_log.ml
hphp/hack/src/typing/typing_print.ml
hphp/hack/src/typing/typing_print.mli
hphp/hack/test/typecheck/new_inference/transitive_simplify_2.php.exp