Introduce the ConstFun attribute
[hiphop-php.git] / hphp / hack / test / decl / typeconst_property_promotion.php.exp
blob78dc6fc521ea80aef45341146e29fd5bf7eb46ec
1 [("\\C",
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 = ([3:7-8], "\\C"); 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 =
10 [{ Shallow_decl_defs.stc_abstract = Typing_defs.TCConcrete;
11 stc_as_constraint = None; stc_name = ([4:14-15], "T");
12 stc_type =
13 (Some (Rhint (root|typeconst_property_promotion.php line 4, characters 18-20),
14 (Tprim Tint)));
15 stc_enforceable = ([Pos.none], false); stc_reifiable = None }
17 sc_props =
18 [{ Shallow_decl_defs.sp_name = ([6:21-23], "a"); sp_xhp_attr = None;
19 sp_type =
20 (Some (Rhint (root|typeconst_property_promotion.php line 6, characters 13-19),
21 (Taccess
22 ((Rhint (root|typeconst_property_promotion.php line 6, characters 13-19),
23 Tthis),
24 [([6:19-20], "T")]))));
25 sp_visibility = Private; sp_flags = needs_init }
27 sc_sprops = [];
28 sc_constructor =
29 (Some { Shallow_decl_defs.sm_name = ([5:19-30], "__construct");
30 sm_reactivity = None;
31 sm_type =
32 (Rwitness (root|typeconst_property_promotion.php line 5, characters 19-29),
33 (Tfun
34 { ft_arity = (Fstandard ()); ft_tparams = [];
35 ft_where_constraints = [];
36 ft_params =
37 [{ fp_pos = [6:21-23]; fp_name = (Some "$a");
38 fp_type =
39 { et_enforced = false;
40 et_type =
41 (Rhint (root|typeconst_property_promotion.php line 6, characters 13-19),
42 (Taccess
43 ((Rhint (root|typeconst_property_promotion.php line 6, characters 13-19),
44 Tthis),
45 [([6:19-20], "T")])))
47 fp_rx_annotation = None;
48 fp_flags =
49 (make_fp_flags ~mutability:None
50 ~accept_disposable:false ~has_default:false
51 ~mode:Typing_defs_core.FPnormal ~ifc_external:false
52 ~ifc_can_call:false ~is_atom:false ~readonly:false
53 ~const_function:false);
56 ft_implicit_params =
57 { capability = (CapDefaults [5:19-30]) };
58 ft_ret =
59 { et_enforced = false;
60 et_type =
61 (Rwitness (root|typeconst_property_promotion.php line 5, characters 19-29),
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 ~is_const:false);
69 ft_reactive = Nonreactive;
70 ft_ifc_decl = FDPolicied {PUBLIC} }));
71 sm_visibility = Public; sm_deprecated = None;
72 sm_flags = (empty) });
73 sc_static_methods = []; sc_methods = []; sc_user_attributes = [];
74 sc_enum_type = None }))
77 They matched!