Add readonly to decl and function types
[hiphop-php.git] / hphp / hack / test / decl / traits.php.exp
blobdc3b7232d39861cd3ccbaec02225d5da0d656c19
1 [("\\TMyTrait",
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 = Ctrait;
5 sc_name = ([3:7-15], "\\TMyTrait"); sc_tparams = [];
6 sc_where_constraints = []; sc_extends = []; sc_uses = [];
7 sc_xhp_attr_uses = []; sc_req_extends = []; sc_req_implements = [];
8 sc_implements = []; sc_implements_dynamic = false; sc_consts = [];
9 sc_typeconsts = []; sc_props = []; sc_sprops = [];
10 sc_constructor = None; sc_static_methods = [];
11 sc_methods =
12 [{ Shallow_decl_defs.sm_name = ([4:19-28], "doNothing");
13 sm_reactivity = None;
14 sm_type =
15 (Rwitness (root|traits.php line 4, characters 19-27),
16 (Tfun
17 { ft_arity = (Fstandard ()); ft_tparams = [];
18 ft_where_constraints = []; ft_params = [];
19 ft_implicit_params = { capability = (CapDefaults [4:19-28]) };
20 ft_ret =
21 { et_enforced = false;
22 et_type =
23 (Rhint (root|traits.php line 4, characters 32-35),
24 (Tprim Tvoid))
26 ft_flags =
27 (make_ft_flags FSync None ~return_disposable:false
28 ~returns_mutable:false ~returns_void_to_rx:false
29 ~returns_readonly:false ~readonly_this:false);
30 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC}
31 }));
32 sm_visibility = Public; sm_deprecated = None; sm_flags = (empty) }
34 sc_user_attributes = []; sc_enum_type = None }));
35 ("\\TMyTrait2",
36 (Shallow_decl_defs.Class
37 { Shallow_decl_defs.sc_mode = Mstrict; sc_final = false;
38 sc_is_xhp = false; sc_has_xhp_keyword = false; sc_kind = Ctrait;
39 sc_name = ([7:7-16], "\\TMyTrait2"); sc_tparams = [];
40 sc_where_constraints = []; sc_extends = [];
41 sc_uses =
42 [(Rhint (root|traits.php line 8, characters 7-14),
43 (Tapply (([8:7-15], "\\TMyTrait"), [])))];
44 sc_xhp_attr_uses = []; sc_req_extends = []; sc_req_implements = [];
45 sc_implements = []; sc_implements_dynamic = false; sc_consts = [];
46 sc_typeconsts = []; sc_props = []; sc_sprops = [];
47 sc_constructor = None; sc_static_methods = [];
48 sc_methods =
49 [{ Shallow_decl_defs.sm_name = ([10:19-32], "doMoreNothing");
50 sm_reactivity = None;
51 sm_type =
52 (Rwitness (root|traits.php line 10, characters 19-31),
53 (Tfun
54 { ft_arity = (Fstandard ()); ft_tparams = [];
55 ft_where_constraints = []; ft_params = [];
56 ft_implicit_params =
57 { capability = (CapDefaults [10:19-32]) };
58 ft_ret =
59 { et_enforced = false;
60 et_type =
61 (Rhint (root|traits.php line 10, characters 36-39),
62 (Tprim Tvoid))
64 ft_flags =
65 (make_ft_flags FSync None ~return_disposable:false
66 ~returns_mutable:false ~returns_void_to_rx:false
67 ~returns_readonly:false ~readonly_this:false);
68 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC}
69 }));
70 sm_visibility = Public; sm_deprecated = None; sm_flags = (empty) }
72 sc_user_attributes = []; sc_enum_type = None }));
73 ("\\TMyTrait3",
74 (Shallow_decl_defs.Class
75 { Shallow_decl_defs.sc_mode = Mstrict; sc_final = false;
76 sc_is_xhp = false; sc_has_xhp_keyword = false; sc_kind = Ctrait;
77 sc_name = ([13:7-16], "\\TMyTrait3"); sc_tparams = [];
78 sc_where_constraints = []; sc_extends = []; sc_uses = [];
79 sc_xhp_attr_uses = []; sc_req_extends = []; sc_req_implements = [];
80 sc_implements = []; sc_implements_dynamic = false; sc_consts = [];
81 sc_typeconsts = []; sc_props = []; sc_sprops = [];
82 sc_constructor = None; sc_static_methods = [];
83 sc_methods =
84 [{ Shallow_decl_defs.sm_name = ([14:19-35], "doYetMoreNothing");
85 sm_reactivity = None;
86 sm_type =
87 (Rwitness (root|traits.php line 14, characters 19-34),
88 (Tfun
89 { ft_arity = (Fstandard ()); ft_tparams = [];
90 ft_where_constraints = []; ft_params = [];
91 ft_implicit_params =
92 { capability = (CapDefaults [14:19-35]) };
93 ft_ret =
94 { et_enforced = false;
95 et_type =
96 (Rhint (root|traits.php line 14, characters 39-42),
97 (Tprim Tvoid))
99 ft_flags =
100 (make_ft_flags FSync None ~return_disposable:false
101 ~returns_mutable:false ~returns_void_to_rx:false
102 ~returns_readonly:false ~readonly_this:false);
103 ft_reactive = Nonreactive; ft_ifc_decl = FDPolicied {PUBLIC}
104 }));
105 sm_visibility = Public; sm_deprecated = None; sm_flags = (empty) }
107 sc_user_attributes = []; sc_enum_type = None }));
108 ("\\MyTraitUsingClass",
109 (Shallow_decl_defs.Class
110 { Shallow_decl_defs.sc_mode = Mstrict; sc_final = false;
111 sc_is_xhp = false; sc_has_xhp_keyword = false; sc_kind = Cnormal;
112 sc_name = ([17:7-24], "\\MyTraitUsingClass"); sc_tparams = [];
113 sc_where_constraints = []; sc_extends = [];
114 sc_uses =
115 [(Rhint (root|traits.php line 18, characters 7-15),
116 (Tapply (([18:7-16], "\\TMyTrait2"), [])));
117 (Rhint (root|traits.php line 19, characters 7-15),
118 (Tapply (([19:7-16], "\\TMyTrait3"), [])))
120 sc_xhp_attr_uses = []; sc_req_extends = []; sc_req_implements = [];
121 sc_implements = []; sc_implements_dynamic = false; sc_consts = [];
122 sc_typeconsts = []; sc_props = []; sc_sprops = [];
123 sc_constructor = None; sc_static_methods = []; sc_methods = [];
124 sc_user_attributes = []; sc_enum_type = None }))
127 They matched!