php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
zend_ast.h File Reference
#include "zend_types.h"

Go to the source code of this file.

Data Structures

struct  _zend_ast
 
struct  _zend_ast_list
 
struct  _zend_ast_zval
 
struct  _zend_ast_decl
 
struct  zend_ast_evaluate_ctx
 

Macros

#define ZEND_AST_SPEC   1
 
#define ZEND_AST_SPECIAL_SHIFT   6
 
#define ZEND_AST_IS_LIST_SHIFT   7
 
#define ZEND_AST_NUM_CHILDREN_SHIFT   8
 
#define ZEND_AST_SPEC_CALL(name, ...)
 
#define ZEND_AST_SPEC_CALL_(name, _, _6, _5, _4, _3, _2, _1, suffix, ...)
 
#define ZEND_AST_SPEC_CALL_EX(name, ...)
 
#define ZEND_AST_SPEC_CALL_EX_(name, _, _7, _6, _5, _4, _3, _2, _1, suffix, ...)
 
#define zend_ast_create(...)
 
#define zend_ast_create_ex(...)
 
#define zend_ast_create_list(init_children, ...)
 

Typedefs

typedef uint16_t zend_ast_kind
 
typedef uint16_t zend_ast_attr
 
typedef struct _zend_ast_list zend_ast_list
 
typedef struct _zend_ast_zval zend_ast_zval
 
typedef struct _zend_ast_decl zend_ast_decl
 
typedef void(* zend_ast_process_t) (zend_ast *ast)
 
typedef void(* zend_ast_apply_func) (zend_ast **ast_ptr, void *context)
 

Enumerations

enum  _zend_ast_kind {
  ZEND_AST_ZVAL = 1 << ZEND_AST_SPECIAL_SHIFT , ZEND_AST_CONSTANT , ZEND_AST_ZNODE , ZEND_AST_FUNC_DECL ,
  ZEND_AST_CLOSURE , ZEND_AST_METHOD , ZEND_AST_CLASS , ZEND_AST_ARROW_FUNC ,
  ZEND_AST_PROPERTY_HOOK , ZEND_AST_ARG_LIST = 1 << ZEND_AST_IS_LIST_SHIFT , ZEND_AST_ARRAY , ZEND_AST_ENCAPS_LIST ,
  ZEND_AST_EXPR_LIST , ZEND_AST_STMT_LIST , ZEND_AST_IF , ZEND_AST_SWITCH_LIST ,
  ZEND_AST_CATCH_LIST , ZEND_AST_PARAM_LIST , ZEND_AST_CLOSURE_USES , ZEND_AST_PROP_DECL ,
  ZEND_AST_CONST_DECL , ZEND_AST_CLASS_CONST_DECL , ZEND_AST_NAME_LIST , ZEND_AST_TRAIT_ADAPTATIONS ,
  ZEND_AST_USE , ZEND_AST_TYPE_UNION , ZEND_AST_TYPE_INTERSECTION , ZEND_AST_ATTRIBUTE_LIST ,
  ZEND_AST_ATTRIBUTE_GROUP , ZEND_AST_MATCH_ARM_LIST , ZEND_AST_MODIFIER_LIST , ZEND_AST_MAGIC_CONST = 0 << ZEND_AST_NUM_CHILDREN_SHIFT ,
  ZEND_AST_TYPE , ZEND_AST_CONSTANT_CLASS , ZEND_AST_CALLABLE_CONVERT , ZEND_AST_VAR = 1 << ZEND_AST_NUM_CHILDREN_SHIFT ,
  ZEND_AST_CONST , ZEND_AST_UNPACK , ZEND_AST_UNARY_PLUS , ZEND_AST_UNARY_MINUS ,
  ZEND_AST_CAST , ZEND_AST_EMPTY , ZEND_AST_ISSET , ZEND_AST_SILENCE ,
  ZEND_AST_SHELL_EXEC , ZEND_AST_CLONE , ZEND_AST_EXIT , ZEND_AST_PRINT ,
  ZEND_AST_INCLUDE_OR_EVAL , ZEND_AST_UNARY_OP , ZEND_AST_PRE_INC , ZEND_AST_PRE_DEC ,
  ZEND_AST_POST_INC , ZEND_AST_POST_DEC , ZEND_AST_YIELD_FROM , ZEND_AST_CLASS_NAME ,
  ZEND_AST_GLOBAL , ZEND_AST_UNSET , ZEND_AST_RETURN , ZEND_AST_LABEL ,
  ZEND_AST_REF , ZEND_AST_HALT_COMPILER , ZEND_AST_ECHO , ZEND_AST_THROW ,
  ZEND_AST_GOTO , ZEND_AST_BREAK , ZEND_AST_CONTINUE , ZEND_AST_PROPERTY_HOOK_SHORT_BODY ,
  ZEND_AST_DIM = 2 << ZEND_AST_NUM_CHILDREN_SHIFT , ZEND_AST_PROP , ZEND_AST_NULLSAFE_PROP , ZEND_AST_STATIC_PROP ,
  ZEND_AST_CALL , ZEND_AST_CLASS_CONST , ZEND_AST_ASSIGN , ZEND_AST_ASSIGN_REF ,
  ZEND_AST_ASSIGN_OP , ZEND_AST_BINARY_OP , ZEND_AST_GREATER , ZEND_AST_GREATER_EQUAL ,
  ZEND_AST_AND , ZEND_AST_OR , ZEND_AST_ARRAY_ELEM , ZEND_AST_NEW ,
  ZEND_AST_INSTANCEOF , ZEND_AST_YIELD , ZEND_AST_COALESCE , ZEND_AST_ASSIGN_COALESCE ,
  ZEND_AST_STATIC , ZEND_AST_WHILE , ZEND_AST_DO_WHILE , ZEND_AST_IF_ELEM ,
  ZEND_AST_SWITCH , ZEND_AST_SWITCH_CASE , ZEND_AST_DECLARE , ZEND_AST_USE_TRAIT ,
  ZEND_AST_TRAIT_PRECEDENCE , ZEND_AST_METHOD_REFERENCE , ZEND_AST_NAMESPACE , ZEND_AST_USE_ELEM ,
  ZEND_AST_TRAIT_ALIAS , ZEND_AST_GROUP_USE , ZEND_AST_ATTRIBUTE , ZEND_AST_MATCH ,
  ZEND_AST_MATCH_ARM , ZEND_AST_NAMED_ARG , ZEND_AST_PARENT_PROPERTY_HOOK_CALL , ZEND_AST_METHOD_CALL = 3 << ZEND_AST_NUM_CHILDREN_SHIFT ,
  ZEND_AST_NULLSAFE_METHOD_CALL , ZEND_AST_STATIC_CALL , ZEND_AST_CONDITIONAL , ZEND_AST_TRY ,
  ZEND_AST_CATCH , ZEND_AST_PROP_GROUP , ZEND_AST_CONST_ELEM , ZEND_AST_CLASS_CONST_GROUP ,
  ZEND_AST_CONST_ENUM_INIT , ZEND_AST_FOR = 4 << ZEND_AST_NUM_CHILDREN_SHIFT , ZEND_AST_FOREACH , ZEND_AST_ENUM_CASE ,
  ZEND_AST_PROP_ELEM , ZEND_AST_PARAM = 6 << ZEND_AST_NUM_CHILDREN_SHIFT
}
 

Functions

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_with_lineno (zval *zv, uint32_t lineno)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_ex (zval *zv, zend_ast_attr attr)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval (zval *zv)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_from_str (zend_string *str)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_from_long (zend_long lval)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_constant (zend_string *name, zend_ast_attr attr)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_class_const_or_name (zend_ast *class_name, zend_ast *name)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_0 (zend_ast_kind kind)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_1 (zend_ast_kind kind, zend_ast *child)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_2 (zend_ast_kind kind, zend_ast *child1, zend_ast *child2)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_3 (zend_ast_kind kind, zend_ast *child1, zend_ast *child2, zend_ast *child3)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_4 (zend_ast_kind kind, zend_ast *child1, zend_ast *child2, zend_ast *child3, zend_ast *child4)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_5 (zend_ast_kind kind, zend_ast *child1, zend_ast *child2, zend_ast *child3, zend_ast *child4, zend_ast *child5)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_va (zend_ast_kind kind, zend_ast_attr attr, va_list *va)
 
ZEND_API zend_astzend_ast_create_n (unsigned kind,...)
 
ZEND_API zend_astzend_ast_create_ex_n (zend_ast_kind kind, unsigned attr,...)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_0 (zend_ast_kind kind)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_1 (zend_ast_kind kind, zend_ast *child)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_2 (zend_ast_kind kind, zend_ast *child1, zend_ast *child2)
 
ZEND_API zend_ast *ZEND_FASTCALL zend_ast_list_add (zend_ast *list, zend_ast *op)
 
ZEND_API zend_astzend_ast_create_decl (zend_ast_kind kind, uint32_t flags, uint32_t start_lineno, zend_string *doc_comment, zend_string *name, zend_ast *child0, zend_ast *child1, zend_ast *child2, zend_ast *child3, zend_ast *child4)
 
ZEND_API zend_result ZEND_FASTCALL zend_ast_evaluate (zval *result, zend_ast *ast, zend_class_entry *scope)
 
ZEND_API zend_result ZEND_FASTCALL zend_ast_evaluate_ex (zval *result, zend_ast *ast, zend_class_entry *scope, bool *short_circuited_ptr, zend_ast_evaluate_ctx *ctx)
 
ZEND_API zend_stringzend_ast_export (const char *prefix, zend_ast *ast, const char *suffix)
 
ZEND_API zend_ast_ref *ZEND_FASTCALL zend_ast_copy (zend_ast *ast)
 
ZEND_API void ZEND_FASTCALL zend_ast_destroy (zend_ast *ast)
 
ZEND_API void ZEND_FASTCALL zend_ast_ref_destroy (zend_ast_ref *ast)
 
ZEND_API void zend_ast_apply (zend_ast *ast, zend_ast_apply_func fn, void *context)
 
zend_astzend_ast_create_concat_op (zend_ast *op0, zend_ast *op1)
 
zend_ast *ZEND_FASTCALL zend_ast_with_attributes (zend_ast *ast, zend_ast *attr)
 

Variables

ZEND_API zend_ast_process_t zend_ast_process
 

Macro Definition Documentation

◆ zend_ast_create

#define zend_ast_create ( ...)
Value:
#define zend_ast_create(...)
Definition zend_ast.h:290
#define ZEND_AST_SPEC_CALL(name,...)
Definition zend_ast.h:234

Definition at line 290 of file zend_ast.h.

◆ zend_ast_create_ex

#define zend_ast_create_ex ( ...)
Value:
#define zend_ast_create_ex(...)
Definition zend_ast.h:292
#define ZEND_AST_SPEC_CALL_EX(name,...)
Definition zend_ast.h:238

Definition at line 292 of file zend_ast.h.

◆ zend_ast_create_list

#define zend_ast_create_list ( init_children,
... )
Value:
#define zend_ast_create_list(init_children,...)
Definition zend_ast.h:294

Definition at line 294 of file zend_ast.h.

◆ ZEND_AST_IS_LIST_SHIFT

#define ZEND_AST_IS_LIST_SHIFT   7

Definition at line 31 of file zend_ast.h.

◆ ZEND_AST_NUM_CHILDREN_SHIFT

#define ZEND_AST_NUM_CHILDREN_SHIFT   8

Definition at line 32 of file zend_ast.h.

◆ ZEND_AST_SPEC

#define ZEND_AST_SPEC   1

Definition at line 27 of file zend_ast.h.

◆ ZEND_AST_SPEC_CALL

#define ZEND_AST_SPEC_CALL ( name,
... )
Value:
ZEND_EXPAND_VA(ZEND_AST_SPEC_CALL_(name, __VA_ARGS__, _n, _5, _4, _3, _2, _1, _0)(__VA_ARGS__))
#define ZEND_AST_SPEC_CALL_(name, _, _6, _5, _4, _3, _2, _1, suffix,...)
Definition zend_ast.h:236
#define ZEND_EXPAND_VA(code)
zend_string * name

Definition at line 234 of file zend_ast.h.

◆ ZEND_AST_SPEC_CALL_

#define ZEND_AST_SPEC_CALL_ ( name,
_,
_6,
_5,
_4,
_3,
_2,
_1,
suffix,
... )
Value:
name ## suffix

Definition at line 236 of file zend_ast.h.

◆ ZEND_AST_SPEC_CALL_EX

#define ZEND_AST_SPEC_CALL_EX ( name,
... )
Value:
ZEND_EXPAND_VA(ZEND_AST_SPEC_CALL_EX_(name, __VA_ARGS__, _n, _5, _4, _3, _2, _1, _0)(__VA_ARGS__))
#define ZEND_AST_SPEC_CALL_EX_(name, _, _7, _6, _5, _4, _3, _2, _1, suffix,...)
Definition zend_ast.h:240

Definition at line 238 of file zend_ast.h.

◆ ZEND_AST_SPEC_CALL_EX_

#define ZEND_AST_SPEC_CALL_EX_ ( name,
_,
_7,
_6,
_5,
_4,
_3,
_2,
_1,
suffix,
... )
Value:
name ## suffix

Definition at line 240 of file zend_ast.h.

◆ ZEND_AST_SPECIAL_SHIFT

#define ZEND_AST_SPECIAL_SHIFT   6

Definition at line 30 of file zend_ast.h.

Typedef Documentation

◆ zend_ast_apply_func

typedef void(* zend_ast_apply_func) (zend_ast **ast_ptr, void *context)

Definition at line 322 of file zend_ast.h.

◆ zend_ast_attr

typedef uint16_t zend_ast_attr

Definition at line 184 of file zend_ast.h.

◆ zend_ast_decl

typedef struct _zend_ast_decl zend_ast_decl

◆ zend_ast_kind

typedef uint16_t zend_ast_kind

Definition at line 183 of file zend_ast.h.

◆ zend_ast_list

typedef struct _zend_ast_list zend_ast_list

◆ zend_ast_process_t

typedef void(* zend_ast_process_t) (zend_ast *ast)

Definition at line 221 of file zend_ast.h.

◆ zend_ast_zval

typedef struct _zend_ast_zval zend_ast_zval

Enumeration Type Documentation

◆ _zend_ast_kind

Enumerator
ZEND_AST_ZVAL 
ZEND_AST_CONSTANT 
ZEND_AST_ZNODE 
ZEND_AST_FUNC_DECL 
ZEND_AST_CLOSURE 
ZEND_AST_METHOD 
ZEND_AST_CLASS 
ZEND_AST_ARROW_FUNC 
ZEND_AST_PROPERTY_HOOK 
ZEND_AST_ARG_LIST 
ZEND_AST_ARRAY 
ZEND_AST_ENCAPS_LIST 
ZEND_AST_EXPR_LIST 
ZEND_AST_STMT_LIST 
ZEND_AST_IF 
ZEND_AST_SWITCH_LIST 
ZEND_AST_CATCH_LIST 
ZEND_AST_PARAM_LIST 
ZEND_AST_CLOSURE_USES 
ZEND_AST_PROP_DECL 
ZEND_AST_CONST_DECL 
ZEND_AST_CLASS_CONST_DECL 
ZEND_AST_NAME_LIST 
ZEND_AST_TRAIT_ADAPTATIONS 
ZEND_AST_USE 
ZEND_AST_TYPE_UNION 
ZEND_AST_TYPE_INTERSECTION 
ZEND_AST_ATTRIBUTE_LIST 
ZEND_AST_ATTRIBUTE_GROUP 
ZEND_AST_MATCH_ARM_LIST 
ZEND_AST_MODIFIER_LIST 
ZEND_AST_MAGIC_CONST 
ZEND_AST_TYPE 
ZEND_AST_CONSTANT_CLASS 
ZEND_AST_CALLABLE_CONVERT 
ZEND_AST_VAR 
ZEND_AST_CONST 
ZEND_AST_UNPACK 
ZEND_AST_UNARY_PLUS 
ZEND_AST_UNARY_MINUS 
ZEND_AST_CAST 
ZEND_AST_EMPTY 
ZEND_AST_ISSET 
ZEND_AST_SILENCE 
ZEND_AST_SHELL_EXEC 
ZEND_AST_CLONE 
ZEND_AST_EXIT 
ZEND_AST_PRINT 
ZEND_AST_INCLUDE_OR_EVAL 
ZEND_AST_UNARY_OP 
ZEND_AST_PRE_INC 
ZEND_AST_PRE_DEC 
ZEND_AST_POST_INC 
ZEND_AST_POST_DEC 
ZEND_AST_YIELD_FROM 
ZEND_AST_CLASS_NAME 
ZEND_AST_GLOBAL 
ZEND_AST_UNSET 
ZEND_AST_RETURN 
ZEND_AST_LABEL 
ZEND_AST_REF 
ZEND_AST_HALT_COMPILER 
ZEND_AST_ECHO 
ZEND_AST_THROW 
ZEND_AST_GOTO 
ZEND_AST_BREAK 
ZEND_AST_CONTINUE 
ZEND_AST_PROPERTY_HOOK_SHORT_BODY 
ZEND_AST_DIM 
ZEND_AST_PROP 
ZEND_AST_NULLSAFE_PROP 
ZEND_AST_STATIC_PROP 
ZEND_AST_CALL 
ZEND_AST_CLASS_CONST 
ZEND_AST_ASSIGN 
ZEND_AST_ASSIGN_REF 
ZEND_AST_ASSIGN_OP 
ZEND_AST_BINARY_OP 
ZEND_AST_GREATER 
ZEND_AST_GREATER_EQUAL 
ZEND_AST_AND 
ZEND_AST_OR 
ZEND_AST_ARRAY_ELEM 
ZEND_AST_NEW 
ZEND_AST_INSTANCEOF 
ZEND_AST_YIELD 
ZEND_AST_COALESCE 
ZEND_AST_ASSIGN_COALESCE 
ZEND_AST_STATIC 
ZEND_AST_WHILE 
ZEND_AST_DO_WHILE 
ZEND_AST_IF_ELEM 
ZEND_AST_SWITCH 
ZEND_AST_SWITCH_CASE 
ZEND_AST_DECLARE 
ZEND_AST_USE_TRAIT 
ZEND_AST_TRAIT_PRECEDENCE 
ZEND_AST_METHOD_REFERENCE 
ZEND_AST_NAMESPACE 
ZEND_AST_USE_ELEM 
ZEND_AST_TRAIT_ALIAS 
ZEND_AST_GROUP_USE 
ZEND_AST_ATTRIBUTE 
ZEND_AST_MATCH 
ZEND_AST_MATCH_ARM 
ZEND_AST_NAMED_ARG 
ZEND_AST_PARENT_PROPERTY_HOOK_CALL 
ZEND_AST_METHOD_CALL 
ZEND_AST_NULLSAFE_METHOD_CALL 
ZEND_AST_STATIC_CALL 
ZEND_AST_CONDITIONAL 
ZEND_AST_TRY 
ZEND_AST_CATCH 
ZEND_AST_PROP_GROUP 
ZEND_AST_CONST_ELEM 
ZEND_AST_CLASS_CONST_GROUP 
ZEND_AST_CONST_ENUM_INIT 
ZEND_AST_FOR 
ZEND_AST_FOREACH 
ZEND_AST_ENUM_CASE 
ZEND_AST_PROP_ELEM 
ZEND_AST_PARAM 

Definition at line 34 of file zend_ast.h.

Function Documentation

◆ zend_ast_apply()

ZEND_API void zend_ast_apply ( zend_ast * ast,
zend_ast_apply_func fn,
void * context )

Definition at line 1217 of file zend_ast.c.

◆ zend_ast_copy()

ZEND_API zend_ast_ref *ZEND_FASTCALL zend_ast_copy ( zend_ast * ast)

Definition at line 1149 of file zend_ast.c.

◆ zend_ast_create_0()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_0 ( zend_ast_kind kind)

Definition at line 136 of file zend_ast.c.

◆ zend_ast_create_1()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_1 ( zend_ast_kind kind,
zend_ast * child )

Definition at line 148 of file zend_ast.c.

◆ zend_ast_create_2()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_2 ( zend_ast_kind kind,
zend_ast * child1,
zend_ast * child2 )

Definition at line 167 of file zend_ast.c.

◆ zend_ast_create_3()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_3 ( zend_ast_kind kind,
zend_ast * child1,
zend_ast * child2,
zend_ast * child3 )

Definition at line 189 of file zend_ast.c.

◆ zend_ast_create_4()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_4 ( zend_ast_kind kind,
zend_ast * child1,
zend_ast * child2,
zend_ast * child3,
zend_ast * child4 )

Definition at line 214 of file zend_ast.c.

◆ zend_ast_create_5()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_5 ( zend_ast_kind kind,
zend_ast * child1,
zend_ast * child2,
zend_ast * child3,
zend_ast * child4,
zend_ast * child5 )

Definition at line 242 of file zend_ast.c.

◆ zend_ast_create_class_const_or_name()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_class_const_or_name ( zend_ast * class_name,
zend_ast * name )

Definition at line 102 of file zend_ast.c.

◆ zend_ast_create_concat_op()

zend_ast * zend_ast_create_concat_op ( zend_ast * op0,
zend_ast * op1 )

Definition at line 459 of file zend_ast.c.

◆ zend_ast_create_constant()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_constant ( zend_string * name,
zend_ast_attr attr )

Definition at line 91 of file zend_ast.c.

◆ zend_ast_create_decl()

ZEND_API zend_ast * zend_ast_create_decl ( zend_ast_kind kind,
uint32_t flags,
uint32_t start_lineno,
zend_string * doc_comment,
zend_string * name,
zend_ast * child0,
zend_ast * child1,
zend_ast * child2,
zend_ast * child3,
zend_ast * child4 )

Definition at line 112 of file zend_ast.c.

◆ zend_ast_create_ex_n()

ZEND_API zend_ast * zend_ast_create_ex_n ( zend_ast_kind kind,
unsigned attr,
... )

Definition at line 301 of file zend_ast.c.

◆ zend_ast_create_list_0()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_0 ( zend_ast_kind kind)

Definition at line 310 of file zend_ast.c.

◆ zend_ast_create_list_1()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_1 ( zend_ast_kind kind,
zend_ast * child )

Definition at line 324 of file zend_ast.c.

◆ zend_ast_create_list_2()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_list_2 ( zend_ast_kind kind,
zend_ast * child1,
zend_ast * child2 )

Definition at line 348 of file zend_ast.c.

◆ zend_ast_create_n()

ZEND_API zend_ast * zend_ast_create_n ( unsigned kind,
... )

Definition at line 293 of file zend_ast.c.

◆ zend_ast_create_va()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_va ( zend_ast_kind kind,
zend_ast_attr attr,
va_list * va )

Definition at line 273 of file zend_ast.c.

◆ zend_ast_create_zval()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval ( zval * zv)

Definition at line 75 of file zend_ast.c.

◆ zend_ast_create_zval_ex()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_ex ( zval * zv,
zend_ast_attr attr )

Definition at line 71 of file zend_ast.c.

◆ zend_ast_create_zval_from_long()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_from_long ( zend_long lval)

Definition at line 85 of file zend_ast.c.

◆ zend_ast_create_zval_from_str()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_from_str ( zend_string * str)

Definition at line 79 of file zend_ast.c.

◆ zend_ast_create_zval_with_lineno()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_create_zval_with_lineno ( zval * zv,
uint32_t lineno )

Definition at line 67 of file zend_ast.c.

◆ zend_ast_destroy()

ZEND_API void ZEND_FASTCALL zend_ast_destroy ( zend_ast * ast)

Definition at line 1163 of file zend_ast.c.

◆ zend_ast_evaluate()

ZEND_API zend_result ZEND_FASTCALL zend_ast_evaluate ( zval * result,
zend_ast * ast,
zend_class_entry * scope )

Definition at line 1061 of file zend_ast.c.

◆ zend_ast_evaluate_ex()

ZEND_API zend_result ZEND_FASTCALL zend_ast_evaluate_ex ( zval * result,
zend_ast * ast,
zend_class_entry * scope,
bool * short_circuited_ptr,
zend_ast_evaluate_ctx * ctx )

Definition at line 544 of file zend_ast.c.

◆ zend_ast_export()

ZEND_API zend_string * zend_ast_export ( const char * prefix,
zend_ast * ast,
const char * suffix )

Definition at line 2679 of file zend_ast.c.

◆ zend_ast_list_add()

ZEND_API zend_ast *ZEND_FASTCALL zend_ast_list_add ( zend_ast * list,
zend_ast * op )

Definition at line 476 of file zend_ast.c.

◆ zend_ast_ref_destroy()

ZEND_API void ZEND_FASTCALL zend_ast_ref_destroy ( zend_ast_ref * ast)

Definition at line 1211 of file zend_ast.c.

◆ zend_ast_with_attributes()

zend_ast *ZEND_FASTCALL zend_ast_with_attributes ( zend_ast * ast,
zend_ast * attr )

Definition at line 2690 of file zend_ast.c.

Variable Documentation

◆ zend_ast_process

ZEND_API zend_ast_process_t zend_ast_process
extern

Definition at line 29 of file zend_ast.c.