Fix Efuns being annotated with return type in TAST
[hiphop-php.git] / hphp / hack / test / tast / lambda1.php.exp
blob65bf143705f9b1ad5c1dbd502235379a0c6eb7fb
1 [(AnnotatedAST.Fun
2 { AnnotatedAST.f_annotation = (); f_mode = <opaque>;
3 f_ret = (Some ([2:26-2:30], (Hprim Tvoid)));
4 f_name = ([2:10-2:22], "\\test_lambda1"); f_tparams = [];
5 f_where_constraints = []; f_variadic = AnnotatedAST.FVnonVariadic;
6 f_params = [];
7 f_body =
8 (AnnotatedAST.NamedBody
9 { AnnotatedAST.fnb_nast =
10 [(AnnotatedAST.Expr
11 (([3:3-3:13], Some string),
12 (AnnotatedAST.Binop ((Eq None),
13 (([3:3-3:5], Some string),
14 (AnnotatedAST.Lvar ([3:3-3:5], $s))),
15 (([3:8-3:13], Some string),
16 (AnnotatedAST.String ([3:8-3:13], "foo")))
17 ))));
18 (AnnotatedAST.Expr
19 (([4:3-4:10], Some [fun]),
20 (AnnotatedAST.Binop ((Eq None),
21 (([4:3-4:5], Some [fun]),
22 (AnnotatedAST.Lvar ([4:3-4:5], $f))),
23 (([4:8-4:10], Some (function($n): _)),
24 (AnnotatedAST.Efun (
25 { AnnotatedAST.f_annotation = (); f_mode = <opaque>;
26 f_ret = None; f_name = ([Pos.none], ";anonymous");
27 f_tparams = []; f_where_constraints = [];
28 f_variadic = AnnotatedAST.FVnonVariadic;
29 f_params =
30 [{ AnnotatedAST.param_annotation =
31 ([4:8-4:10], Some _); param_hint = None;
32 param_is_reference = false;
33 param_is_variadic = false;
34 param_pos = [4:8-4:10]; param_name = "$n";
35 param_expr = None; param_callconv = None;
36 param_user_attributes = [] }
38 f_body =
39 (AnnotatedAST.NamedBody
40 { AnnotatedAST.fnb_nast =
41 [(AnnotatedAST.Return ([4:17-4:39],
42 (Some (([4:24-4:38], Some string),
43 (AnnotatedAST.Binop (Dot,
44 (([4:24-4:31], Some string),
45 (AnnotatedAST.Binop (Dot,
46 (([4:24-4:26], Some _),
47 (AnnotatedAST.Lvar
48 ([4:24-4:26], $n))),
49 (([4:29-4:31], Some string),
50 (AnnotatedAST.Lvar
51 ([4:29-4:31], $s)))
52 ))),
53 (([4:34-4:38], Some string),
54 (AnnotatedAST.String
55 ([4:34-4:38], "\\n")))
56 ))))
59 fnb_unsafe = false });
60 f_fun_kind = FSync; f_user_attributes = [];
61 f_ret_by_ref = false },
62 [([4:29-4:31], $s)])))
63 ))));
64 (AnnotatedAST.Expr
65 (([5:3-5:13], Some string),
66 (AnnotatedAST.Binop ((Eq None),
67 (([5:3-5:5], Some string),
68 (AnnotatedAST.Lvar ([5:3-5:5], $x))),
69 (([5:8-5:13], Some string),
70 (AnnotatedAST.Call (Cnormal,
71 (([5:8-5:10], Some [fun]),
72 (AnnotatedAST.Lvar ([5:8-5:10], $f))),
73 [],
74 [(([5:11-5:12], Some int),
75 (AnnotatedAST.Int ([5:11-5:12], "4")))],
76 [])))
77 ))));
78 (AnnotatedAST.Expr
79 (([6:3-6:17], Some string),
80 (AnnotatedAST.Binop ((Eq None),
81 (([6:3-6:5], Some string),
82 (AnnotatedAST.Lvar ([6:3-6:5], $y))),
83 (([6:8-6:17], Some string),
84 (AnnotatedAST.Call (Cnormal,
85 (([6:8-6:10], Some [fun]),
86 (AnnotatedAST.Lvar ([6:8-6:10], $f))),
87 [],
88 [(([6:11-6:16], Some string),
89 (AnnotatedAST.String ([6:11-6:16], "bar")))],
90 [])))
91 ))))
93 fnb_unsafe = false });
94 f_fun_kind = FSync; f_user_attributes = []; f_ret_by_ref = false })