Rip out legacy reactivity from the typechecker and HackC
[hiphop-php.git] / hphp / hack / src / typing / tast_check / tast_check.ml
blobbe9c0c79cc9d63ad7e931b8f57fdcdeb423d2a5a
1 (*
2 * Copyright (c) 2018, Facebook, Inc.
3 * All rights reserved.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree.
8 *)
10 [@@@warning "-33"]
12 open Hh_prelude
14 [@@@warning "+33"]
16 let visitor ctx =
17 let makers =
18 [Xhp_required_check.make_handler; Redundant_generics_check.make_handler]
20 let handlers = List.map makers (( |> ) ctx) |> List.filter_opt in
21 Tast_visitor.iter_with
22 ( handlers
23 @ [
24 Shape_field_check.handler;
25 String_cast_check.handler;
26 Tautology_check.handler;
27 Enforceable_hint_check.handler;
28 Redundant_nullsafe_check.handler;
29 Const_write_check.handler;
30 Switch_check.handler (fun t ->
31 if TypecheckerOptions.disallow_scrutinee_case_value_type_mismatch t
32 then
33 Errors.invalid_switch_case_value_type
34 else
35 fun _ _ _ ->
36 ());
37 Void_return_check.handler;
38 Rvalue_check.handler;
39 Callconv_check.handler;
40 Xhp_check.handler;
41 Discarded_awaitable_check.handler;
42 Invalid_index_check.handler;
43 Pseudofunctions_check.handler;
44 Reified_check.handler;
45 Instantiability_check.handler;
46 Static_memoized_check.handler;
47 Abstract_class_check.handler;
48 Class_parent_check.handler;
49 Method_type_param_check.handler;
50 Obj_get_check.handler;
51 This_hint_check.handler;
52 Unresolved_type_variable_check.handler;
53 Invalid_arraykey_constraint_check.handler;
54 Type_const_check.handler;
55 Static_method_generics_check.handler;
56 Class_inherited_member_case_check.handler;
57 Ifc_tast_check.handler;
58 Readonly_check.handler;
59 Meth_caller_check.handler;
60 ] )
62 let program ctx = (visitor ctx)#go ctx
64 let def ctx = (visitor ctx)#go_def ctx