Support is and as
[hiphop-php.git] / hphp / hack / test / decl / coeffect_fun_dependent.php.exp
blob4f81dd2daba5ae0172754540020247b9bb865a7c
1 [("\\f",
2 (Shallow_decl_defs.Fun
3 { Typing_defs.fe_deprecated = None; fe_module = None;
4 fe_internal = false;
5 fe_type =
6 (Rwitness_from_decl ([3:10-11]),
7 (Tfun
8 { ft_tparams =
9 [{ Typing_defs_core.tp_variance = Invariant;
10 tp_name = ([3:25-26], "T/[ctx $f]"); tp_tparams = [];
11 tp_constraints = []; tp_reified = Erased;
12 tp_user_attributes = [] }
14 ft_where_constraints = [];
15 ft_params =
16 [{ fp_pos = [3:35-37]; fp_name = (Some "$f");
17 fp_type =
18 { et_enforced = Typing_defs_core.Unenforced;
19 et_type =
20 (Rhint ([3:12-34]),
21 (Tfun
22 { ft_tparams = []; ft_where_constraints = [];
23 ft_params = [];
24 ft_implicit_params =
25 { capability =
26 (CapTy (Rhint ([3:25-26]),
27 (Tgeneric ("T/[ctx $f]", []))))
29 ft_ret =
30 { et_enforced = Typing_defs_core.Unenforced;
31 et_type = (Rhint ([3:29-33]), (Tprim Tvoid)) };
32 ft_flags =
33 (make_ft_flags FSync ~return_disposable:false
34 ~returns_readonly:false ~support_dynamic_type:false
35 ~readonly_this:false ~is_memoized:false
36 ~variadic:false);
37 ft_ifc_decl = FDPolicied {PUBLIC} }))
39 fp_flags =
40 (make_fp_flags ~accept_disposable:false ~has_default:false
41 ~mode:Typing_defs_core.FPnormal ~ifc_external:false
42 ~ifc_can_call:false ~readonly:false);
45 ft_implicit_params =
46 { capability =
47 (CapTy (Rhint ([3:39-45]), (Tgeneric ("T/[ctx $f]", [])))) };
48 ft_ret =
49 { et_enforced = Typing_defs_core.Unenforced;
50 et_type = (Rhint ([3:48-52]), (Tprim Tvoid)) };
51 ft_flags =
52 (make_ft_flags FSync ~return_disposable:false
53 ~returns_readonly:false ~support_dynamic_type:false
54 ~readonly_this:false ~is_memoized:false ~variadic:false);
55 ft_ifc_decl = FDPolicied {PUBLIC} }));
56 fe_pos = [3:10-11]; fe_php_std_lib = false;
57 fe_support_dynamic_type = false }));
58 ("\\f_option",
59 (Shallow_decl_defs.Fun
60 { Typing_defs.fe_deprecated = None; fe_module = None;
61 fe_internal = false;
62 fe_type =
63 (Rwitness_from_decl ([5:10-18]),
64 (Tfun
65 { ft_tparams =
66 [{ Typing_defs_core.tp_variance = Invariant;
67 tp_name = ([5:33-34], "T/[ctx $f]"); tp_tparams = [];
68 tp_constraints = []; tp_reified = Erased;
69 tp_user_attributes = [] }
71 ft_where_constraints = [];
72 ft_params =
73 [{ fp_pos = [5:43-45]; fp_name = (Some "$f");
74 fp_type =
75 { et_enforced = Typing_defs_core.Unenforced;
76 et_type =
77 (Rhint ([5:19-42]),
78 (Toption
79 (Rhint ([5:20-42]),
80 (Tfun
81 { ft_tparams = []; ft_where_constraints = [];
82 ft_params = [];
83 ft_implicit_params =
84 { capability =
85 (CapTy (Rhint ([5:33-34]),
86 (Tgeneric ("T/[ctx $f]", []))))
88 ft_ret =
89 { et_enforced = Typing_defs_core.Unenforced;
90 et_type = (Rhint ([5:37-41]), (Tprim Tvoid)) };
91 ft_flags =
92 (make_ft_flags FSync ~return_disposable:false
93 ~returns_readonly:false
94 ~support_dynamic_type:false
95 ~readonly_this:false ~is_memoized:false
96 ~variadic:false);
97 ft_ifc_decl = FDPolicied {PUBLIC} }))))
99 fp_flags =
100 (make_fp_flags ~accept_disposable:false ~has_default:false
101 ~mode:Typing_defs_core.FPnormal ~ifc_external:false
102 ~ifc_can_call:false ~readonly:false);
105 ft_implicit_params =
106 { capability =
107 (CapTy (Rhint ([5:47-53]), (Tgeneric ("T/[ctx $f]", [])))) };
108 ft_ret =
109 { et_enforced = Typing_defs_core.Unenforced;
110 et_type = (Rhint ([5:56-60]), (Tprim Tvoid)) };
111 ft_flags =
112 (make_ft_flags FSync ~return_disposable:false
113 ~returns_readonly:false ~support_dynamic_type:false
114 ~readonly_this:false ~is_memoized:false ~variadic:false);
115 ft_ifc_decl = FDPolicied {PUBLIC} }));
116 fe_pos = [5:10-18]; fe_php_std_lib = false;
117 fe_support_dynamic_type = false }));
118 ("\\f_like",
119 (Shallow_decl_defs.Fun
120 { Typing_defs.fe_deprecated = None; fe_module = None;
121 fe_internal = false;
122 fe_type =
123 (Rwitness_from_decl ([7:10-16]),
124 (Tfun
125 { ft_tparams =
126 [{ Typing_defs_core.tp_variance = Invariant;
127 tp_name = ([7:31-32], "T/[ctx $f]"); tp_tparams = [];
128 tp_constraints = []; tp_reified = Erased;
129 tp_user_attributes = [] }
131 ft_where_constraints = [];
132 ft_params =
133 [{ fp_pos = [7:41-43]; fp_name = (Some "$f");
134 fp_type =
135 { et_enforced = Typing_defs_core.Unenforced;
136 et_type =
137 (Rhint ([7:17-40]),
138 (Tlike
139 (Rhint ([7:18-40]),
140 (Tfun
141 { ft_tparams = []; ft_where_constraints = [];
142 ft_params = [];
143 ft_implicit_params =
144 { capability =
145 (CapTy (Rhint ([7:31-32]),
146 (Tgeneric ("T/[ctx $f]", []))))
148 ft_ret =
149 { et_enforced = Typing_defs_core.Unenforced;
150 et_type = (Rhint ([7:35-39]), (Tprim Tvoid)) };
151 ft_flags =
152 (make_ft_flags FSync ~return_disposable:false
153 ~returns_readonly:false
154 ~support_dynamic_type:false
155 ~readonly_this:false ~is_memoized:false
156 ~variadic:false);
157 ft_ifc_decl = FDPolicied {PUBLIC} }))))
159 fp_flags =
160 (make_fp_flags ~accept_disposable:false ~has_default:false
161 ~mode:Typing_defs_core.FPnormal ~ifc_external:false
162 ~ifc_can_call:false ~readonly:false);
165 ft_implicit_params =
166 { capability =
167 (CapTy (Rhint ([7:45-51]), (Tgeneric ("T/[ctx $f]", [])))) };
168 ft_ret =
169 { et_enforced = Typing_defs_core.Unenforced;
170 et_type = (Rhint ([7:54-58]), (Tprim Tvoid)) };
171 ft_flags =
172 (make_ft_flags FSync ~return_disposable:false
173 ~returns_readonly:false ~support_dynamic_type:false
174 ~readonly_this:false ~is_memoized:false ~variadic:false);
175 ft_ifc_decl = FDPolicied {PUBLIC} }));
176 fe_pos = [7:10-16]; fe_php_std_lib = false;
177 fe_support_dynamic_type = false }));
178 ("\\f_like_option",
179 (Shallow_decl_defs.Fun
180 { Typing_defs.fe_deprecated = None; fe_module = None;
181 fe_internal = false;
182 fe_type =
183 (Rwitness_from_decl ([9:10-23]),
184 (Tfun
185 { ft_tparams =
186 [{ Typing_defs_core.tp_variance = Invariant;
187 tp_name = ([9:39-40], "T/[ctx $f]"); tp_tparams = [];
188 tp_constraints = []; tp_reified = Erased;
189 tp_user_attributes = [] }
191 ft_where_constraints = [];
192 ft_params =
193 [{ fp_pos = [9:49-51]; fp_name = (Some "$f");
194 fp_type =
195 { et_enforced = Typing_defs_core.Unenforced;
196 et_type =
197 (Rhint ([9:24-48]),
198 (Tlike
199 (Rhint ([9:25-48]),
200 (Toption
201 (Rhint ([9:26-48]),
202 (Tfun
203 { ft_tparams = []; ft_where_constraints = [];
204 ft_params = [];
205 ft_implicit_params =
206 { capability =
207 (CapTy (Rhint ([9:39-40]),
208 (Tgeneric ("T/[ctx $f]", []))))
210 ft_ret =
211 { et_enforced = Typing_defs_core.Unenforced;
212 et_type =
213 (Rhint ([9:43-47]), (Tprim Tvoid)) };
214 ft_flags =
215 (make_ft_flags FSync
216 ~return_disposable:false
217 ~returns_readonly:false
218 ~support_dynamic_type:false
219 ~readonly_this:false ~is_memoized:false
220 ~variadic:false);
221 ft_ifc_decl = FDPolicied {PUBLIC} }))))))
223 fp_flags =
224 (make_fp_flags ~accept_disposable:false ~has_default:false
225 ~mode:Typing_defs_core.FPnormal ~ifc_external:false
226 ~ifc_can_call:false ~readonly:false);
229 ft_implicit_params =
230 { capability =
231 (CapTy (Rhint ([9:53-59]), (Tgeneric ("T/[ctx $f]", [])))) };
232 ft_ret =
233 { et_enforced = Typing_defs_core.Unenforced;
234 et_type = (Rhint ([9:62-66]), (Tprim Tvoid)) };
235 ft_flags =
236 (make_ft_flags FSync ~return_disposable:false
237 ~returns_readonly:false ~support_dynamic_type:false
238 ~readonly_this:false ~is_memoized:false ~variadic:false);
239 ft_ifc_decl = FDPolicied {PUBLIC} }));
240 fe_pos = [9:10-23]; fe_php_std_lib = false;
241 fe_support_dynamic_type = false }))
244 They matched!