Introduce the ConstFun attribute
[hiphop-php.git] / hphp / hack / test / decl / accept_disposable.php.exp
blobc90a5bb366d87f79cc90d399555a60c5fcc094f5
1 [("\\Handle",
2 (Shallow_decl_defs.Class
3 { Shallow_decl_defs.sc_mode = Mstrict; sc_final = false;
4 sc_is_xhp = false; sc_has_xhp_keyword = false; sc_kind = Cnormal;
5 sc_name = ([4:7-13], "\\Handle"); sc_tparams = [];
6 sc_where_constraints = []; sc_extends = []; sc_uses = [];
7 sc_xhp_attr_uses = []; sc_req_extends = []; sc_req_implements = [];
8 sc_implements =
9 [(Rhint (root|accept_disposable.php line 4, characters 25-35),
10 (Tapply (([4:25-36], "\\IDisposable"), [])))];
11 sc_implements_dynamic = false; sc_consts = []; sc_typeconsts = [];
12 sc_props = []; sc_sprops = []; sc_constructor = None;
13 sc_static_methods = [];
14 sc_methods =
15 [{ Shallow_decl_defs.sm_name = ([5:19-28], "__dispose");
16 sm_reactivity = None;
17 sm_type =
18 (Rwitness (root|accept_disposable.php line 5, characters 19-27),
19 (Tfun
20 { ft_arity = (Fstandard ()); ft_tparams = [];
21 ft_where_constraints = []; ft_params = [];
22 ft_implicit_params = { capability = (CapDefaults [5:19-28]) };
23 ft_ret =
24 { et_enforced = false;
25 et_type =
26 (Rhint (root|accept_disposable.php line 5, characters 32-35),
27 (Tprim Tvoid))
29 ft_flags =
30 (make_ft_flags FSync None ~return_disposable:false
31 ~returns_mutable:false ~returns_void_to_rx:false
32 ~returns_readonly:false ~readonly_this:false
33 ~is_const:false);
34 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC}
35 }));
36 sm_visibility = Public; sm_deprecated = None; sm_flags = (empty) };
37 { Shallow_decl_defs.sm_name = ([6:19-22], "foo");
38 sm_reactivity = None;
39 sm_type =
40 (Rwitness (root|accept_disposable.php line 6, characters 19-21),
41 (Tfun
42 { ft_arity = (Fstandard ()); ft_tparams = [];
43 ft_where_constraints = []; ft_params = [];
44 ft_implicit_params =
45 { capability = (CapDefaults [6:19-22]) };
46 ft_ret =
47 { et_enforced = false;
48 et_type =
49 (Rhint (root|accept_disposable.php line 6, characters 26-29),
50 (Tprim Tvoid))
52 ft_flags =
53 (make_ft_flags FSync None ~return_disposable:false
54 ~returns_mutable:false ~returns_void_to_rx:false
55 ~returns_readonly:false ~readonly_this:false
56 ~is_const:false);
57 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC}
58 }));
59 sm_visibility = Public; sm_deprecated = None; sm_flags = (empty) }
61 sc_user_attributes = []; sc_enum_type = None }));
62 ("\\f",
63 (Shallow_decl_defs.Fun
64 { Typing_defs.fe_deprecated = None;
65 fe_type =
66 (Rwitness (root|accept_disposable.php line 9, characters 10-10),
67 (Tfun
68 { ft_arity = (Fstandard ()); ft_tparams = [];
69 ft_where_constraints = [];
70 ft_params =
71 [{ fp_pos = [9:42-44]; fp_name = (Some "$h");
72 fp_type =
73 { et_enforced = false;
74 et_type =
75 (Rhint (root|accept_disposable.php line 9, characters 35-40),
76 (Tapply (([9:35-41], "\\Handle"), [])))
78 fp_rx_annotation = None;
79 fp_flags =
80 (make_fp_flags ~mutability:None ~accept_disposable:true
81 ~has_default:false ~mode:Typing_defs_core.FPnormal
82 ~ifc_external:false ~ifc_can_call:false ~is_atom:false
83 ~readonly:false ~const_function:false);
86 ft_implicit_params = { capability = (CapDefaults [9:10-11]) };
87 ft_ret =
88 { et_enforced = false;
89 et_type =
90 (Rhint (root|accept_disposable.php line 9, characters 47-50),
91 (Tprim Tvoid))
93 ft_flags =
94 (make_ft_flags FSync None ~return_disposable:false
95 ~returns_mutable:false ~returns_void_to_rx:false
96 ~returns_readonly:false ~readonly_this:false ~is_const:false);
97 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC} }));
98 fe_pos = [9:10-11]; fe_php_std_lib = false }))
101 They matched!