Lines Matching refs:decl

8141 …nd_begin_func_decl(znode *result, zend_op_array *op_array, zend_ast_decl *decl, bool toplevel) /* …  in zend_begin_func_decl()  argument
8148 uint32_t start_lineno = decl->start_lineno; in zend_begin_func_decl()
8184 unqualified_name = decl->name; in zend_begin_func_decl()
8233 zend_ast_decl *decl = (zend_ast_decl *) ast; in zend_compile_func_decl_ex() local
8234 zend_ast *params_ast = decl->child[0]; in zend_compile_func_decl_ex()
8235 zend_ast *uses_ast = decl->child[1]; in zend_compile_func_decl_ex()
8236 zend_ast *stmt_ast = decl->child[2]; in zend_compile_func_decl_ex()
8237 zend_ast *return_type_ast = decl->child[3]; in zend_compile_func_decl_ex()
8238 bool is_method = decl->kind == ZEND_AST_METHOD; in zend_compile_func_decl_ex()
8240 bool is_hook = decl->kind == ZEND_AST_PROPERTY_HOOK; in zend_compile_func_decl_ex()
8256 op_array->fn_flags |= decl->flags; in zend_compile_func_decl_ex()
8257 op_array->line_start = decl->start_lineno; in zend_compile_func_decl_ex()
8258 op_array->line_end = decl->end_lineno; in zend_compile_func_decl_ex()
8259 if (decl->doc_comment) { in zend_compile_func_decl_ex()
8260 op_array->doc_comment = zend_string_copy(decl->doc_comment); in zend_compile_func_decl_ex()
8263 if (decl->kind == ZEND_AST_CLOSURE || decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl_ex()
8270 op_array->function_name = zend_string_copy(decl->name); in zend_compile_func_decl_ex()
8273 lcname = zend_begin_method_decl(op_array, decl->name, has_body); in zend_compile_func_decl_ex()
8275 lcname = zend_begin_func_decl(result, op_array, decl, toplevel); in zend_compile_func_decl_ex()
8276 if (decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl_ex()
8286 if (decl->child[4]) { in zend_compile_func_decl_ex()
8293 zend_compile_attributes(&op_array->attributes, decl->child[4], 0, target, 0); in zend_compile_func_decl_ex()
8319 if (decl->kind == ZEND_AST_FUNC_DECL) { in zend_compile_func_decl_ex()
8345 if (decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl_ex()
8352 if (ast->kind == ZEND_AST_ARROW_FUNC && decl->child[2]->kind != ZEND_AST_RETURN) { in zend_compile_func_decl_ex()
8360 decl->child[2] = stmt_ast; in zend_compile_func_decl_ex()
8367 CG(zend_lineno) = decl->start_lineno; in zend_compile_func_decl_ex()
8373 CG(zend_lineno) = decl->start_lineno; in zend_compile_func_decl_ex()
8379 CG(zend_lineno) = decl->end_lineno; in zend_compile_func_decl_ex()
8952 static zend_string *zend_generate_anon_class_name(zend_ast_decl *decl) in zend_generate_anon_class_name() argument
8955 uint32_t start_lineno = decl->start_lineno; in zend_generate_anon_class_name()
8959 if (decl->child[0]) { in zend_generate_anon_class_name()
8960 prefix = zend_resolve_const_class_name_reference(decl->child[0], "class name"); in zend_generate_anon_class_name()
8961 } else if (decl->child[1]) { in zend_generate_anon_class_name()
8962 zend_ast_list *list = zend_ast_get_list(decl->child[1]); in zend_generate_anon_class_name()
8994 zend_ast_decl *decl = (zend_ast_decl *) ast; in zend_compile_class_decl() local
8995 zend_ast *extends_ast = decl->child[0]; in zend_compile_class_decl()
8996 zend_ast *implements_ast = decl->child[1]; in zend_compile_class_decl()
8997 zend_ast *stmt_ast = decl->child[2]; in zend_compile_class_decl()
8998 zend_ast *enum_backing_type_ast = decl->child[4]; in zend_compile_class_decl()
9005 if (EXPECTED((decl->flags & ZEND_ACC_ANON_CLASS) == 0)) { in zend_compile_class_decl()
9006 zend_string *unqualified_name = decl->name; in zend_compile_class_decl()
9013 if (decl->flags & ZEND_ACC_ENUM) { in zend_compile_class_decl()
9015 } else if (decl->flags & ZEND_ACC_INTERFACE) { in zend_compile_class_decl()
9017 } else if (decl->flags & ZEND_ACC_TRAIT) { in zend_compile_class_decl()
9042 name = zend_generate_anon_class_name(decl); in zend_compile_class_decl()
9051 if (!(decl->flags & ZEND_ACC_ANON_CLASS)) { in zend_compile_class_decl()
9061 ce->ce_flags |= decl->flags; in zend_compile_class_decl()
9063 ce->info.user.line_start = decl->start_lineno; in zend_compile_class_decl()
9064 ce->info.user.line_end = decl->end_lineno; in zend_compile_class_decl()
9066 if (decl->doc_comment) { in zend_compile_class_decl()
9067 ce->doc_comment = zend_string_copy(decl->doc_comment); in zend_compile_class_decl()
9070 if (UNEXPECTED((decl->flags & ZEND_ACC_ANON_CLASS))) { in zend_compile_class_decl()
9082 if (decl->child[3]) { in zend_compile_class_decl()
9083 zend_compile_attributes(&ce->attributes, decl->child[3], 0, ZEND_ATTRIBUTE_TARGET_CLASS, 0); in zend_compile_class_decl()
9165 if (decl->flags & ZEND_ACC_ANON_CLASS) { in zend_compile_class_decl()
9179 key = zend_build_runtime_definition_key(lcname, decl->start_lineno); in zend_compile_class_decl()