Lines Matching refs:decl
7357 …nd_begin_func_decl(znode *result, zend_op_array *op_array, zend_ast_decl *decl, bool toplevel) /* … in zend_begin_func_decl() argument
7362 unqualified_name = decl->name; in zend_begin_func_decl()
7406 zend_ast_decl *decl = (zend_ast_decl *) ast; in zend_compile_func_decl() local
7407 zend_ast *params_ast = decl->child[0]; in zend_compile_func_decl()
7408 zend_ast *uses_ast = decl->child[1]; in zend_compile_func_decl()
7409 zend_ast *stmt_ast = decl->child[2]; in zend_compile_func_decl()
7410 zend_ast *return_type_ast = decl->child[3]; in zend_compile_func_decl()
7411 bool is_method = decl->kind == ZEND_AST_METHOD; in zend_compile_func_decl()
7428 op_array->fn_flags |= decl->flags; in zend_compile_func_decl()
7429 op_array->line_start = decl->start_lineno; in zend_compile_func_decl()
7430 op_array->line_end = decl->end_lineno; in zend_compile_func_decl()
7431 if (decl->doc_comment) { in zend_compile_func_decl()
7432 op_array->doc_comment = zend_string_copy(decl->doc_comment); in zend_compile_func_decl()
7435 if (decl->kind == ZEND_AST_CLOSURE || decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl()
7441 lcname = zend_begin_method_decl(op_array, decl->name, has_body); in zend_compile_func_decl()
7443 lcname = zend_begin_func_decl(result, op_array, decl, toplevel); in zend_compile_func_decl()
7444 if (decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl()
7454 if (decl->child[4]) { in zend_compile_func_decl()
7461 zend_compile_attributes(&op_array->attributes, decl->child[4], 0, target, 0); in zend_compile_func_decl()
7467 if (decl->kind == ZEND_AST_FUNC_DECL) { in zend_compile_func_decl()
7491 if (decl->kind == ZEND_AST_ARROW_FUNC) { in zend_compile_func_decl()
7498 if (ast->kind == ZEND_AST_ARROW_FUNC && decl->child[2]->kind != ZEND_AST_RETURN) { in zend_compile_func_decl()
7506 decl->child[2] = stmt_ast; in zend_compile_func_decl()
7513 CG(zend_lineno) = decl->start_lineno; in zend_compile_func_decl()
7519 CG(zend_lineno) = decl->start_lineno; in zend_compile_func_decl()
7525 CG(zend_lineno) = decl->end_lineno; in zend_compile_func_decl()
7854 static zend_string *zend_generate_anon_class_name(zend_ast_decl *decl) in zend_generate_anon_class_name() argument
7857 uint32_t start_lineno = decl->start_lineno; in zend_generate_anon_class_name()
7861 if (decl->child[0]) { in zend_generate_anon_class_name()
7862 prefix = zend_resolve_const_class_name_reference(decl->child[0], "class name"); in zend_generate_anon_class_name()
7863 } else if (decl->child[1]) { in zend_generate_anon_class_name()
7864 zend_ast_list *list = zend_ast_get_list(decl->child[1]); in zend_generate_anon_class_name()
7896 zend_ast_decl *decl = (zend_ast_decl *) ast; in zend_compile_class_decl() local
7897 zend_ast *extends_ast = decl->child[0]; in zend_compile_class_decl()
7898 zend_ast *implements_ast = decl->child[1]; in zend_compile_class_decl()
7899 zend_ast *stmt_ast = decl->child[2]; in zend_compile_class_decl()
7900 zend_ast *enum_backing_type_ast = decl->child[4]; in zend_compile_class_decl()
7907 if (EXPECTED((decl->flags & ZEND_ACC_ANON_CLASS) == 0)) { in zend_compile_class_decl()
7908 zend_string *unqualified_name = decl->name; in zend_compile_class_decl()
7936 name = zend_generate_anon_class_name(decl); in zend_compile_class_decl()
7945 if (!(decl->flags & ZEND_ACC_ANON_CLASS)) { in zend_compile_class_decl()
7955 ce->ce_flags |= decl->flags; in zend_compile_class_decl()
7957 ce->info.user.line_start = decl->start_lineno; in zend_compile_class_decl()
7958 ce->info.user.line_end = decl->end_lineno; in zend_compile_class_decl()
7960 if (decl->doc_comment) { in zend_compile_class_decl()
7961 ce->info.user.doc_comment = zend_string_copy(decl->doc_comment); in zend_compile_class_decl()
7964 if (UNEXPECTED((decl->flags & ZEND_ACC_ANON_CLASS))) { in zend_compile_class_decl()
7976 if (decl->child[3]) { in zend_compile_class_decl()
7977 zend_compile_attributes(&ce->attributes, decl->child[3], 0, ZEND_ATTRIBUTE_TARGET_CLASS, 0); in zend_compile_class_decl()
8054 if (decl->flags & ZEND_ACC_ANON_CLASS) { in zend_compile_class_decl()
8068 key = zend_build_runtime_definition_key(lcname, decl->start_lineno); in zend_compile_class_decl()