2 { f_span
= [3:1-56]; f_readonly_this
= None; f_annotation
= (); f_mode
= Mstrict
;
3 f_readonly_ret
= None; f_ret
= ((void
), (Some
([3:49-53], (Hprim Tvoid
))));
4 f_name
= ([3:10-25], "\\generic_bounded");
6 [{ tp_variance
= Invariant
; tp_name
= ([3:26-27], "T"); tp_parameters = []; tp_constraints = [(Constraint_as, ([3:31-34], (Hprim Tnum)))]; tp_reified = Erased; tp_user_attributes = [] }];
7 f_where_constraints
= []; f_variadic
= FVnonVariadic
;
9 [{ param_annotation
= ([3:38-40], T
); param_type_hint
= ((T
), (Some
([3:36-37], (Habstr
("T", [])))));
10 param_is_variadic
= false
; param_pos
= [3:38-40]; param_name
= "$x";
11 param_expr
= None; param_readonly
= None; param_callconv
= None;
12 param_user_attributes
= []; param_visibility
= None };
13 { param_annotation
= ([3:44-46], T
); param_type_hint
= ((T
), (Some
([3:42-43], (Habstr
("T", [])))));
14 param_is_variadic
= false
; param_pos
= [3:44-46]; param_name
= "$y";
15 param_expr
= None; param_readonly
= None; param_callconv
= None;
16 param_user_attributes
= []; param_visibility
= None }
18 f_ctxs
= None; f_unsafe_ctxs
= None; f_body
= { fb_ast
= [([Pos.
none], Noop
)]; fb_annotation
= () };
19 f_fun_kind
= FSync
; f_user_attributes
= []; f_file_attributes
= [];
22 { Namespace_env.ns_ns_uses
= <opaque
>; ns_class_uses
= <opaque
>;
23 ns_record_def_uses
= <opaque
>; ns_fun_uses
= <opaque
>; ns_const_uses
= <opaque
>;
24 ns_name
= None; ns_auto_ns_map
= []; ns_is_codegen
= false
; ns_disable_xhp_element_mangling
= false
};
25 f_doc_comment
= None });
27 { f_span
= [5:1-8:2]; f_readonly_this
= None; f_annotation
= ();
28 f_mode
= Mstrict
; f_readonly_ret
= None; f_ret
= ((void
), (Some
([5:43-47], (Hprim Tvoid
))));
29 f_name
= ([5:10-22], "\\call_generic"); f_tparams = []; f_where_constraints = [];
30 f_variadic
= FVnonVariadic
;
32 [{ param_annotation
= ([5:27-29], int); param_type_hint
= ((int), (Some
([5:23-26], (Hprim Tint
))));
33 param_is_variadic
= false
; param_pos
= [5:27-29]; param_name
= "$x";
34 param_expr
= None; param_readonly
= None; param_callconv
= None;
35 param_user_attributes
= []; param_visibility
= None };
36 { param_annotation
= ([5:38-40], string
); param_type_hint
= ((string
), (Some
([5:31-37], (Hprim Tstring
))));
37 param_is_variadic
= false
; param_pos
= [5:38-40]; param_name
= "$y";
38 param_expr
= None; param_readonly
= None; param_callconv
= None;
39 param_user_attributes
= []; param_visibility
= None }
41 f_ctxs
= None; f_unsafe_ctxs
= None;
47 (Call ((([7:3-18], (function
<T as num
>(int $x
, int $y
): void
)), (Id
([7:3-18], "\\generic_bounded"))),
48 [((int), ([7:3-18], (Happly
(([Pos.
none], "_"), []))))],
49 [(([7:19-21], int), (Lvar
([7:19-21], $x
))); (([7:23-25], string
), (Hole
((([7:23-25], string
), (Lvar
([7:23-25], $y
))), (string
), (int), Typing
)))], None)))))
52 f_fun_kind
= FSync
; f_user_attributes
= []; f_file_attributes
= [];
55 { Namespace_env.ns_ns_uses
= <opaque
>; ns_class_uses
= <opaque
>;
56 ns_record_def_uses
= <opaque
>; ns_fun_uses
= <opaque
>; ns_const_uses
= <opaque
>;
57 ns_name
= None; ns_auto_ns_map
= []; ns_is_codegen
= false
;
58 ns_disable_xhp_element_mangling
= false
};
59 f_doc_comment
= None });
61 { f_span
= [10:1-13:2]; f_readonly_this
= None; f_annotation
= ();
62 f_mode
= Mstrict
; f_readonly_ret
= None; f_ret
= ((void
), (Some
([10:48-52], (Hprim Tvoid
))));
63 f_name
= ([10:10-27], "\\call_generic_cast"); f_tparams = [];
64 f_where_constraints
= []; f_variadic
= FVnonVariadic
;
66 [{ param_annotation
= ([10:32-34], int); param_type_hint
= ((int), (Some
([10:28-31], (Hprim Tint
))));
67 param_is_variadic
= false
; param_pos
= [10:32-34]; param_name
= "$x";
68 param_expr
= None; param_readonly
= None; param_callconv
= None;
69 param_user_attributes
= []; param_visibility
= None };
70 { param_annotation
= ([10:43-45], string
); param_type_hint
= ((string
), (Some
([10:36-42], (Hprim Tstring
))));
71 param_is_variadic
= false
; param_pos
= [10:43-45]; param_name
= "$y";
72 param_expr
= None; param_readonly
= None; param_callconv
= None;
73 param_user_attributes
= []; param_visibility
= None }
75 f_ctxs
= None; f_unsafe_ctxs
= None;
81 (Call ((([12:3-18], (function
<T as num
>(num $x
, num $y
): void
)), (Id
([12:3-18], "\\generic_bounded"))),
82 [((num
), ([12:3-18], (Happly
(([Pos.
none], "_"), []))))],
83 [(([12:19-21], int), (Lvar
([12:19-21], $x
))); (([12:23-52], float
), (Hole
((([12:49-51], string
), (Lvar
([12:49-51], $y
))), (string
), (float
), UnsafeCast
)))], None)))))
86 f_fun_kind
= FSync
; f_user_attributes
= []; f_file_attributes
= [];
89 { Namespace_env.ns_ns_uses
= <opaque
>; ns_class_uses
= <opaque
>;
90 ns_record_def_uses
= <opaque
>; ns_fun_uses
= <opaque
>; ns_const_uses
= <opaque
>;
91 ns_name
= None; ns_auto_ns_map
= []; ns_is_codegen
= false
;
92 ns_disable_xhp_element_mangling
= false
};
93 f_doc_comment
= None })