2 [7:34-35] Type access is only valid
for a class
, `self`
, or `this`
4 { c_span
= [3:1-5:2]; c_annotation
= (); c_mode
= Mstrict
; c_final
= false
;
5 c_is_xhp
= false
; c_has_xhp_keyword
= false
; c_kind
= (Cclass Abstract
);
6 c_name
= ([3:16-17], "\\C"); c_tparams = []; c_extends = []; c_uses = [];
7 c_xhp_attr_uses
= []; c_xhp_category
= None; c_reqs
= []; c_implements
= [];
8 c_where_constraints
= []; c_consts
= [];
10 [{ c_tconst_user_attributes
= []; c_tconst_name
= ([4:23-25], "TA");
11 c_tconst_kind
= (TCAbstract
{ c_atc_as_constraint
= None; c_atc_super_constraint
= None; c_atc_default
= None });
12 c_tconst_span
= [4:3-26]; c_tconst_doc_comment
= None; c_tconst_is_ctx
= false
}
14 c_vars
= []; c_methods
= []; c_xhp_children
= []; c_xhp_attrs
= [];
16 { Namespace_env.ns_ns_uses
= <opaque
>; ns_class_uses
= <opaque
>;
17 ns_fun_uses
= <opaque
>; ns_const_uses
= <opaque
>; ns_name
= None;
18 ns_mode
= Namespace_env.ForTypecheck
; ns_disable_xhp_element_mangling
= false
};
19 c_user_attributes
= [{ ua_name
= ([3:16-17], "__SupportDynamicType"); ua_params = [] }];
20 c_file_attributes
= []; c_docs_url
= None; c_enum
= None; c_doc_comment
= None;
21 c_emit_id
= None; c_internal
= false
; c_module
= None });
24 { Namespace_env.ns_ns_uses
= <opaque
>; ns_class_uses
= <opaque
>;
25 ns_fun_uses
= <opaque
>; ns_const_uses
= <opaque
>; ns_name
= None;
26 ns_mode
= Namespace_env.ForTypecheck
; ns_disable_xhp_element_mangling
= false
};
27 fd_file_attributes
= []; fd_mode
= Mstrict
; fd_name
= ([7:10-24], "\\taccess_tparam");
29 { f_span
= [7:1-9:13]; f_readonly_this
= None; f_annotation
= ();
30 f_readonly_ret
= None; f_ret
= ((), (Some
([7:45-49], (Hprim Tvoid
))));
32 [{ param_annotation
= (); param_type_hint
= ((), (Some
([7:28-29], (Habstr
("T", [])))));
33 param_pos
= [7:30-32]; param_name
= "$x"; param_info = Param_required;
34 param_readonly
= None; param_callconv
= Pnormal
; param_user_attributes
= [];
35 param_visibility
= None };
36 { param_annotation
= (); param_type_hint
= ((), (Some
([7:34-39], (Haccess
(([7:34-35], (Habstr
("T", []))), [([7:37-39], "TA")])))));
37 param_pos
= [7:40-42]; param_name
= "$y"; param_info = Param_required;
38 param_readonly
= None; param_callconv
= Pnormal
; param_user_attributes
= [];
39 param_visibility
= None }
41 f_ctxs
= None; f_unsafe_ctxs
= None; f_body
= { fb_ast
= [([Pos.
none], Noop
)] };
42 f_fun_kind
= FSync
; f_user_attributes
= [{ ua_name
= ([7:10-24], "__SupportDynamicType"); ua_params = [] }];
43 f_external
= false
; f_doc_comment
= None };
44 fd_internal
= false
; fd_module
= None;
46 [{ tp_variance
= Invariant
; tp_name
= ([7:25-26], "T"); tp_parameters = [];
47 tp_constraints
= [(Constraint_as
, ([7:25-26], (Happly
(([7:25-26], "\\HH\\supportdyn"), [([7:25-26], Hmixed)]))))];
48 tp_reified
= Erased
; tp_user_attributes
= [] }
50 fd_where_constraints
= [(([9:3-5], (Happly
(([9:3-5], "\\T1"), []))), Constraint_as, ([9:9-10], (Happly (([9:9-10], "\\C"), []))))] })