Add SetModule and fd_module defs
[hiphop-php.git] / hphp / hack / test / holes / call_keyed_traversable.php.holes.exp
blobd978455c960f247098f70d6eeff3cfe5bd57e5e3
1 [(Class
2 { c_span = [3:1-5:2]; c_annotation = (); c_mode = Mstrict; c_final = false;
3 c_is_xhp = false; c_has_xhp_keyword = false; c_kind = (Cclass Concrete);
4 c_name = ([3:7-27], "\\TestKeyedTraversable"); c_tparams = [];
5 c_extends = []; c_uses = []; c_xhp_attr_uses = []; c_xhp_category = None;
6 c_reqs = []; c_implements = []; c_where_constraints = []; c_consts = [];
7 c_typeconsts = []; c_vars = [];
8 c_methods =
9 [{ m_span = [4:3-60]; m_annotation = (); m_final = false; m_abstract = false;
10 m_static = false; m_readonly_this = false; m_visibility = Public;
11 m_name = ([4:19-20], "o"); m_tparams = []; m_where_constraints = [];
12 m_params =
13 [{ param_annotation = (KeyedTraversable<int, int>);
14 param_type_hint = ((KeyedTraversable<int, int>), (Some ([4:21-47], (Happly (([4:21-37], "\\HH\\KeyedTraversable"), [([4:38-41], (Hprim Tint)); ([4:43-46], (Hprim Tint))])))));
15 param_is_variadic = false; param_pos = [4:48-50]; param_name = "$o";
16 param_expr = None; param_readonly = None; param_callconv = Pnormal;
17 param_user_attributes = []; param_visibility = None }
19 m_ctxs = None; m_unsafe_ctxs = None; m_body = { fb_ast = [([Pos.none], Noop)] };
20 m_fun_kind = FSync; m_user_attributes = []; m_readonly_ret = None;
21 m_ret = ((void), (Some ([4:53-57], (Hprim Tvoid)))); m_external = false;
22 m_doc_comment = None }
24 c_attributes = []; c_xhp_children = []; c_xhp_attrs = [];
25 c_namespace =
26 { Namespace_env.ns_ns_uses = <opaque>; ns_class_uses = <opaque>;
27 ns_fun_uses = <opaque>; ns_const_uses = <opaque>; ns_name = None;
28 ns_auto_ns_map = []; ns_is_codegen = false; ns_disable_xhp_element_mangling = false };
29 c_user_attributes = []; c_file_attributes = []; c_enum = None;
30 c_doc_comment = None; c_emit_id = None; c_internal = false; c_module = None });
31 (Fun
32 { fd_namespace =
33 { Namespace_env.ns_ns_uses = <opaque>; ns_class_uses = <opaque>;
34 ns_fun_uses = <opaque>; ns_const_uses = <opaque>; ns_name = None;
35 ns_auto_ns_map = []; ns_is_codegen = false; ns_disable_xhp_element_mangling = false };
36 fd_file_attributes = []; fd_mode = Mstrict;
37 fd_fun =
38 { f_span = [7:1-51]; f_readonly_this = None; f_annotation = ();
39 f_readonly_ret = None; f_ret = ((void), (Some ([7:44-48], (Hprim Tvoid))));
40 f_name = ([7:10-11], "\\o"); f_tparams = []; f_where_constraints = [];
41 f_params =
42 [{ param_annotation = (KeyedTraversable<int, int>);
43 param_type_hint = ((KeyedTraversable<int, int>), (Some ([7:12-38], (Happly (([7:12-28], "\\HH\\KeyedTraversable"), [([7:29-32], (Hprim Tint)); ([7:34-37], (Hprim Tint))])))));
44 param_is_variadic = false; param_pos = [7:39-41]; param_name = "$o";
45 param_expr = None; param_readonly = None; param_callconv = Pnormal;
46 param_user_attributes = []; param_visibility = None }
48 f_ctxs = None; f_unsafe_ctxs = None; f_body = { fb_ast = [([Pos.none], Noop)] };
49 f_fun_kind = FSync; f_user_attributes = []; f_external = false;
50 f_doc_comment = None };
51 fd_internal = false; fd_module = None });
52 (Fun
53 { fd_namespace =
54 { Namespace_env.ns_ns_uses = <opaque>; ns_class_uses = <opaque>;
55 ns_fun_uses = <opaque>; ns_const_uses = <opaque>; ns_name = None;
56 ns_auto_ns_map = []; ns_is_codegen = false; ns_disable_xhp_element_mangling = false };
57 fd_file_attributes = []; fd_mode = Mstrict;
58 fd_fun =
59 { f_span = [9:1-24:2]; f_readonly_this = None; f_annotation = ();
60 f_readonly_ret = None; f_ret = ((void), (Some ([12:4-8], (Hprim Tvoid))));
61 f_name = ([9:10-32], "\\call_keyed_traversable"); f_tparams = [];
62 f_where_constraints = [];
63 f_params =
64 [{ param_annotation = (KeyedTraversable<string, int>);
65 param_type_hint = ((KeyedTraversable<string, int>), (Some ([10:3-32], (Happly (([10:3-19], "\\HH\\KeyedTraversable"), [([10:20-26], (Hprim Tstring)); ([10:28-31], (Hprim Tint))])))));
66 param_is_variadic = false; param_pos = [10:33-36]; param_name = "$o1";
67 param_expr = None; param_readonly = None; param_callconv = Pnormal;
68 param_user_attributes = []; param_visibility = None };
69 { param_annotation = (KeyedTraversable<int, string>);
70 param_type_hint = ((KeyedTraversable<int, string>), (Some ([11:3-32], (Happly (([11:3-19], "\\HH\\KeyedTraversable"), [([11:20-23], (Hprim Tint)); ([11:25-31], (Hprim Tstring))])))));
71 param_is_variadic = false; param_pos = [11:33-36]; param_name = "$o2";
72 param_expr = None; param_readonly = None; param_callconv = Pnormal;
73 param_user_attributes = []; param_visibility = None }
75 f_ctxs = None; f_unsafe_ctxs = None;
76 f_body =
77 { fb_ast =
78 [([14:3-10],
79 (Expr
80 ((void), [14:3-9],
81 (Call ((((function(KeyedTraversable<int, int> $o): void)), [14:3-4], (Id ([14:3-4], "\\o"))),
82 [],
83 [(Pnormal,
84 ((<expr#1> as KeyedTraversable<string, int>), [14:5-8],
85 (Hole (((KeyedTraversable<string, int>), [14:5-8], (Lvar ([14:5-8], $o1))), (<expr#1> as KeyedTraversable<string, int>), (KeyedTraversable<int, int>), Typing))))
87 None)))));
88 ([16:3-10],
89 (Expr
90 ((void), [16:3-9],
91 (Call ((((function(KeyedTraversable<int, int> $o): void)), [16:3-4], (Id ([16:3-4], "\\o"))),
92 [],
93 [(Pnormal,
94 ((<expr#2> as KeyedTraversable<int, string>), [16:5-8],
95 (Hole (((KeyedTraversable<int, string>), [16:5-8], (Lvar ([16:5-8], $o2))), (<expr#2> as KeyedTraversable<int, string>), (KeyedTraversable<int, int>), Typing))))
97 None)))));
98 ([18:3-37],
99 (Expr
100 ((TestKeyedTraversable), [18:3-36],
101 (Binop ((Eq None), ((TestKeyedTraversable), [18:3-7], (Lvar ([18:3-7], $foo))),
102 ((TestKeyedTraversable), [18:10-36], (New (((TestKeyedTraversable), [18:14-34], (CI ([18:14-34], "\\TestKeyedTraversable"))), [], [], None, (_)))))))));
103 ([21:3-16],
104 (Expr
105 ((void), [21:3-15],
106 (Call (
107 (((function(KeyedTraversable<int, int> $o): void)), [21:3-10],
108 (Obj_get (((TestKeyedTraversable), [21:3-7], (Lvar ([21:3-7], $foo))), (
109 ((function(KeyedTraversable<int, int> $o): void)), [21:9-10], (Id ([21:9-10], "o"))), OG_nullthrows, Is_method))),
111 [(Pnormal,
112 ((<expr#1> as KeyedTraversable<string, int>), [21:11-14],
113 (Hole (((KeyedTraversable<string, int>), [21:11-14], (Lvar ([21:11-14], $o1))), (<expr#1> as KeyedTraversable<string, int>), (KeyedTraversable<int, int>), Typing))))
115 None)))));
116 ([23:3-16],
117 (Expr
118 ((void), [23:3-15],
119 (Call (
120 (((function(KeyedTraversable<int, int> $o): void)), [23:3-10],
121 (Obj_get (((TestKeyedTraversable), [23:3-7], (Lvar ([23:3-7], $foo))), (
122 ((function(KeyedTraversable<int, int> $o): void)), [23:9-10], (Id ([23:9-10], "o"))), OG_nullthrows, Is_method))),
124 [(Pnormal,
125 ((<expr#2> as KeyedTraversable<int, string>), [23:11-14],
126 (Hole (((KeyedTraversable<int, string>), [23:11-14], (Lvar ([23:11-14], $o2))), (<expr#2> as KeyedTraversable<int, string>), (KeyedTraversable<int, int>), Typing))))
128 None)))))
131 f_fun_kind = FSync; f_user_attributes = []; f_external = false;
132 f_doc_comment = None };
133 fd_internal = false; fd_module = None });
134 (Fun
135 { fd_namespace =
136 { Namespace_env.ns_ns_uses = <opaque>; ns_class_uses = <opaque>;
137 ns_fun_uses = <opaque>; ns_const_uses = <opaque>; ns_name = None;
138 ns_auto_ns_map = []; ns_is_codegen = false; ns_disable_xhp_element_mangling = false };
139 fd_file_attributes = []; fd_mode = Mstrict;
140 fd_fun =
141 { f_span = [26:1-41:2]; f_readonly_this = None; f_annotation = ();
142 f_readonly_ret = None; f_ret = ((void), (Some ([29:4-8], (Hprim Tvoid))));
143 f_name = ([26:10-37], "\\call_keyed_traversable_cast"); f_tparams = [];
144 f_where_constraints = [];
145 f_params =
146 [{ param_annotation = (KeyedTraversable<string, int>);
147 param_type_hint = ((KeyedTraversable<string, int>), (Some ([27:3-32], (Happly (([27:3-19], "\\HH\\KeyedTraversable"), [([27:20-26], (Hprim Tstring)); ([27:28-31], (Hprim Tint))])))));
148 param_is_variadic = false; param_pos = [27:33-36]; param_name = "$o1";
149 param_expr = None; param_readonly = None; param_callconv = Pnormal;
150 param_user_attributes = []; param_visibility = None };
151 { param_annotation = (KeyedTraversable<int, string>);
152 param_type_hint = ((KeyedTraversable<int, string>), (Some ([28:3-32], (Happly (([28:3-19], "\\HH\\KeyedTraversable"), [([28:20-23], (Hprim Tint)); ([28:25-31], (Hprim Tstring))])))));
153 param_is_variadic = false; param_pos = [28:33-36]; param_name = "$o2";
154 param_expr = None; param_readonly = None; param_callconv = Pnormal;
155 param_user_attributes = []; param_visibility = None }
157 f_ctxs = None; f_unsafe_ctxs = None;
158 f_body =
159 { fb_ast =
160 [([31:3-89],
161 (Expr
162 ((void), [31:3-88],
163 (Call ((((function(KeyedTraversable<int, int> $o): void)), [31:3-4], (Id ([31:3-4], "\\o"))),
165 [(Pnormal,
166 ((KeyedTraversable<int, int>), [31:5-87],
167 (Hole (((KeyedTraversable<string, int>), [31:83-86], (Lvar ([31:83-86], $o1))), (KeyedTraversable<string, int>), (KeyedTraversable<int, int>),
168 (UnsafeCast
169 [([31:27-55], (Happly (([31:27-43], "\\HH\\KeyedTraversable"), [([31:44-50], (Hprim Tstring)); ([31:51-54], (Hprim Tint))])));
170 ([31:56-81], (Happly (([31:56-72], "\\HH\\KeyedTraversable"), [([31:73-76], (Hprim Tint)); ([31:77-80], (Hprim Tint))])))])
171 ))))
173 None)))));
174 ([33:3-89],
175 (Expr
176 ((void), [33:3-88],
177 (Call ((((function(KeyedTraversable<int, int> $o): void)), [33:3-4], (Id ([33:3-4], "\\o"))),
179 [(Pnormal,
180 ((KeyedTraversable<int, int>), [33:5-87],
181 (Hole (((KeyedTraversable<int, string>), [33:83-86], (Lvar ([33:83-86], $o2))), (KeyedTraversable<int, string>), (KeyedTraversable<int, int>),
182 (UnsafeCast
183 [([33:27-55], (Happly (([33:27-43], "\\HH\\KeyedTraversable"), [([33:44-47], (Hprim Tint)); ([33:48-54], (Hprim Tstring))])));
184 ([33:56-81], (Happly (([33:56-72], "\\HH\\KeyedTraversable"), [([33:73-76], (Hprim Tint)); ([33:77-80], (Hprim Tint))])))])
185 ))))
187 None)))));
188 ([35:3-37],
189 (Expr
190 ((TestKeyedTraversable), [35:3-36],
191 (Binop ((Eq None), ((TestKeyedTraversable), [35:3-7], (Lvar ([35:3-7], $foo))),
192 ((TestKeyedTraversable), [35:10-36], (New (((TestKeyedTraversable), [35:14-34], (CI ([35:14-34], "\\TestKeyedTraversable"))), [], [], None, (_)))))))));
193 ([38:3-95],
194 (Expr
195 ((void), [38:3-94],
196 (Call (
197 (((function(KeyedTraversable<int, int> $o): void)), [38:3-10],
198 (Obj_get (((TestKeyedTraversable), [38:3-7], (Lvar ([38:3-7], $foo))), (
199 ((function(KeyedTraversable<int, int> $o): void)), [38:9-10], (Id ([38:9-10], "o"))), OG_nullthrows, Is_method))),
201 [(Pnormal,
202 ((KeyedTraversable<int, int>), [38:11-93],
203 (Hole (((KeyedTraversable<string, int>), [38:89-92], (Lvar ([38:89-92], $o1))), (KeyedTraversable<string, int>), (KeyedTraversable<int, int>),
204 (UnsafeCast
205 [([38:33-61], (Happly (([38:33-49], "\\HH\\KeyedTraversable"), [([38:50-56], (Hprim Tstring)); ([38:57-60], (Hprim Tint))])));
206 ([38:62-87], (Happly (([38:62-78], "\\HH\\KeyedTraversable"), [([38:79-82], (Hprim Tint)); ([38:83-86], (Hprim Tint))])))])
207 ))))
209 None)))));
210 ([40:3-95],
211 (Expr
212 ((void), [40:3-94],
213 (Call (
214 (((function(KeyedTraversable<int, int> $o): void)), [40:3-10],
215 (Obj_get (((TestKeyedTraversable), [40:3-7], (Lvar ([40:3-7], $foo))), (
216 ((function(KeyedTraversable<int, int> $o): void)), [40:9-10], (Id ([40:9-10], "o"))), OG_nullthrows, Is_method))),
218 [(Pnormal,
219 ((KeyedTraversable<int, int>), [40:11-93],
220 (Hole (((KeyedTraversable<int, string>), [40:89-92], (Lvar ([40:89-92], $o2))), (KeyedTraversable<int, string>), (KeyedTraversable<int, int>),
221 (UnsafeCast
222 [([40:33-61], (Happly (([40:33-49], "\\HH\\KeyedTraversable"), [([40:50-53], (Hprim Tint)); ([40:54-60], (Hprim Tstring))])));
223 ([40:62-87], (Happly (([40:62-78], "\\HH\\KeyedTraversable"), [([40:79-82], (Hprim Tint)); ([40:83-86], (Hprim Tint))])))])
224 ))))
226 None)))))
229 f_fun_kind = FSync; f_user_attributes = []; f_external = false;
230 f_doc_comment = None };
231 fd_internal = false; fd_module = None })