diff options
Diffstat (limited to 'Zend/zend_ast.h')
| -rw-r--r-- | Zend/zend_ast.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Zend/zend_ast.h b/Zend/zend_ast.h index 499b8b4191..fd6dd1677a 100644 --- a/Zend/zend_ast.h +++ b/Zend/zend_ast.h @@ -42,6 +42,7 @@ enum _zend_ast_kind { ZEND_AST_CLOSURE, ZEND_AST_METHOD, ZEND_AST_CLASS, + ZEND_AST_ARROW_FUNC, /* list nodes */ ZEND_AST_ARG_LIST = 1 << ZEND_AST_IS_LIST_SHIFT, @@ -281,6 +282,10 @@ ZEND_API void ZEND_FASTCALL zend_ast_ref_destroy(zend_ast_ref *ast); typedef void (*zend_ast_apply_func)(zend_ast **ast_ptr); ZEND_API void zend_ast_apply(zend_ast *ast, zend_ast_apply_func fn); +static zend_always_inline zend_bool zend_ast_is_special(zend_ast *ast) { + return (ast->kind >> ZEND_AST_SPECIAL_SHIFT) & 1; +} + static zend_always_inline zend_bool zend_ast_is_list(zend_ast *ast) { return (ast->kind >> ZEND_AST_IS_LIST_SHIFT) & 1; } |
