rendered paste body// Reprint of input file "main/php_language_parser.y".
// Symbols:
// 0 $
// 1 T_INCLUDE
// 2 T_INCLUDE_ONCE
// 3 T_EVAL
// 4 T_REQUIRE
// 5 T_REQUIRE_ONCE
// 6 T_COMMA
// 7 T_LOGICAL_OR
// 8 T_LOGICAL_XOR
// 9 T_LOGICAL_AND
// 10 T_PRINT
// 11 T_EQUAL
// 12 T_PLUS_EQUAL
// 13 T_MINUS_EQUAL
// 14 T_MUL_EQUAL
// 15 T_DIV_EQUAL
// 16 T_CONCAT_EQUAL
// 17 T_MOD_EQUAL
// 18 T_AMPERSAND_EQUAL
// 19 T_OR_EQUAL
// 20 T_XOR_EQUAL
// 21 T_SL_EQUAL
// 22 T_SR_EQUAL
// 23 T_INTERROGATION_MARK
// 24 T_COLON
// 25 T_BOOLEAN_OR
// 26 T_BOOLEAN_AND
// 27 T_PIPE
// 28 T_HAT
// 29 T_AMPERSAND
// 30 T_IS_EQUAL
// 31 T_IS_NOT_EQUAL
// 32 T_IS_IDENTICAL
// 33 T_IS_NOT_IDENTICAL
// 34 T_SMALLER_THAN
// 35 T_IS_SMALLER_OR_EQUAL
// 36 T_GREATER_THAN
// 37 T_IS_GREATER_OR_EQUAL
// 38 T_SL
// 39 T_SR
// 40 T_PLUS
// 41 T_MINUS
// 42 T_DOT
// 43 T_STAR
// 44 T_SLASH
// 45 T_PERCENT
// 46 T_BANG
// 47 T_INSTANCEOF
// 48 T_TILDA
// 49 T_INC
// 50 T_DEC
// 51 T_INT_CAST
// 52 T_DOUBLE_CAST
// 53 T_STRING_CAST
// 54 T_UNICODE_CAST
// 55 T_BINARY_CAST
// 56 T_ARRAY_CAST
// 57 T_OBJECT_CAST
// 58 T_BOOL_CAST
// 59 T_UNSET_CAST
// 60 T_AT
// 61 T_NEW
// 62 T_CLONE
// 63 T_EXIT
// 64 T_IF
// 65 T_ELSEIF
// 66 T_ELSE
// 67 T_ENDIF
// 68 T_LNUMBER
// 69 T_DNUMBER
// 70 T_STRING
// 71 T_STRING_VARNAME
// 72 T_VARIABLE
// 73 T_NUM_STRING
// 74 T_INLINE_HTML
// 75 T_CHARACTER
// 76 T_BAD_CHARACTER
// 77 T_ENCAPSED_AND_WHITESPACE
// 78 T_CONSTANT_ENCAPSED_STRING
// 79 T_ECHO
// 80 T_DO
// 81 T_WHILE
// 82 T_ENDWHILE
// 83 T_FOR
// 84 T_ENDFOR
// 85 T_FOREACH
// 86 T_ENDFOREACH
// 87 T_DECLARE
// 88 T_ENDDECLARE
// 89 T_AS
// 90 T_SWITCH
// 91 T_ENDSWITCH
// 92 T_CASE
// 93 T_DEFAULT
// 94 T_BREAK
// 95 T_CONTINUE
// 96 T_GOTO
// 97 T_FUNCTION
// 98 T_CONST
// 99 T_RETURN
// 100 T_TRY
// 101 T_CATCH
// 102 T_THROW
// 103 T_USE
// 104 T_GLOBAL
// 105 T_STATIC
// 106 T_ABSTRACT
// 107 T_FINAL
// 108 T_PRIVATE
// 109 T_PROTECTED
// 110 T_PUBLIC
// 111 T_VAR
// 112 T_UNSET
// 113 T_ISSET
// 114 T_EMPTY
// 115 T_HALT_COMPILER
// 116 T_CLASS
// 117 T_INTERFACE
// 118 T_EXTENDS
// 119 T_IMPLEMENTS
// 120 T_OBJECT_OPERATOR
// 121 T_DOUBLE_ARROW
// 122 T_LIST
// 123 T_ARRAY
// 124 T_CLASS_C
// 125 T_METHOD_C
// 126 T_FUNC_C
// 127 T_LINE
// 128 T_FILE
// 129 T_COMMENT
// 130 T_DOC_COMMENT
// 131 T_OPEN_TAG
// 132 T_OPEN_TAG_WITH_ECHO
// 133 T_CLOSE_TAG
// 134 T_WHITESPACE
// 135 T_START_HEREDOC
// 136 T_END_HEREDOC
// 137 T_DOLLAR_OPEN_CURLY_BRACES
// 138 T_CURLY_OPEN
// 139 T_PAAMAYIM_NEKUDOTAYIM
// 140 T_BINARY_DOUBLE
// 141 T_BINARY_HEREDOC
// 142 T_NAMESPACE
// 143 T_NS_C
// 144 T_DIR
// 145 T_START_NOWDOC
// 146 T_END_NOWDOC
// 147 T_LPAREN
// 148 T_RPAREN
// 149 T_SEMICOLON
// 150 T_PAREN
// 151 T_LCBRACKET
// 152 T_RCBRACKET
// 153 T_DOLLAR
// 154 T_BACKTICK
// 155 T_DQUOTE
// 156 T_LBRACKET
// 157 T_RBRACKET
// 158 error
// 159 start
// 160 top_statement_list
// 161 top_statement_list_info
// 162 top_statement
// 163 statement
// 164 function_declaration_statement
// 165 class_declaration_statement
// 166 namespace_name
// 167 constant_declaration
// 168 unticked_statement
// 169 unticked_function_declaration_statement
// 170 unticked_class_declaration_statement
// 171 static_scalar
// 172 inner_statement_list_info
// 173 inner_statement_list
// 174 inner_statement
// 175 if_statement
// 176 if_statement_body
// 177 if_elseif_list
// 178 if_else
// 179 if_statement_alt_body
// 180 if_elseif_alt_list
// 181 if_else_alt
// 182 if_statement_condition
// 183 expr
// 184 if_elseif_statement_condition
// 185 while_statement
// 186 while_statement_begin
// 187 while_statement_condition
// 188 while_statement_body
// 189 dowhile_statement
// 190 dowhile_statement_begin
// 191 dowhile_statement_condition_begin
// 192 for_statement
// 193 for_statement_def
// 194 for_statement_body
// 195 for_statement_init
// 196 for_expr
// 197 for_statement_condition
// 198 switch_statement
// 199 switch_statement_condition
// 200 switch_statement_body
// 201 switch_statement_case_opt
// 202 switch_statement_case_list
// 203 switch_statement_case_separator
// 204 foreach_statement
// 205 foreach_statement_begin
// 206 foreach_statement_cont
// 207 foreach_statement_body
// 208 foreach_statement_novar_begin
// 209 foreach_statement_novar_cont
// 210 variable
// 211 foreach_variable
// 212 foreach_optional_arg
// 213 expr_without_variable
// 214 declare_statement
// 215 declare_statement_begin
// 216 declare_list
// 217 unset_statement
// 218 unset_statement_variables_list
// 219 unset_statement_variable
// 220 global_var_list
// 221 static_var_list
// 222 echo_expr_list
// 223 is_reference
// 224 function_declaration_cont
// 225 parameter_list
// 226 function_declaration_begin
// 227 parameter
// 228 optionnal_type_hint
// 229 class_entry_type
// 230 extends_from
// 231 implements_list
// 232 class_statement_list
// 233 interface_entry
// 234 interface_extends_list
// 235 fully_qualified_class_name
// 236 interface_list
// 237 function_call_parameter_list
// 238 non_empty_function_call_parameter_list
// 239 w_variable
// 240 global_var
// 241 r_variable
// 242 class_statement
// 243 variable_modifiers
// 244 class_variable_declaration
// 245 class_constant_declaration
// 246 method_modifiers
// 247 method_body
// 248 non_empty_member_modifiers
// 249 member_modifier
// 250 non_empty_for_expr
// 251 assignment_list
// 252 class_name_reference
// 253 ctor_arguments
// 254 rw_variable
// 255 internal_functions_in_yacc
// 256 exit_expr
// 257 scalar
// 258 array_pair_list
// 259 encaps_list
// 260 function_call
// 261 class_name
// 262 variable_class_name
// 263 variable_without_objects
// 264 dynamic_class_name_reference
// 265 base_variable
// 266 object_property
// 267 dynamic_class_name_variable_properties
// 268 dynamic_class_name_variable_property
// 269 common_scalar
// 270 static_array_pair_list
// 271 static_class_constant
// 272 class_constant
// 273 non_empty_static_array_pair_list
// 274 possible_comma
// 275 base_variable_with_function_calls
// 276 method_or_not
// 277 variable_properties
// 278 variable_property
// 279 reference_variable
// 280 simple_indirect_reference
// 281 static_member
// 282 dim_offset
// 283 compound_variable
// 284 object_dim_list
// 285 variable_name
// 286 assignment_list_element
// 287 non_empty_array_pair_list
// 288 encaps_var
// 289 encaps_var_offset
// 290 isset_variables
start ::= top_statement_list.
top_statement_list_info ::=.
top_statement_list ::= top_statement_list top_statement_list_info top_statement.
top_statement_list ::=.
top_statement ::= statement.
top_statement ::= function_declaration_statement.
top_statement ::= class_declaration_statement.
top_statement ::= T_HALT_COMPILER T_LPAREN T_RPAREN T_SEMICOLON.
top_statement ::= T_NAMESPACE namespace_name T_SEMICOLON.
top_statement ::= T_USE namespace_name T_SEMICOLON.
top_statement ::= T_USE namespace_name T_AS T_STRING T_SEMICOLON.
top_statement ::= T_USE T_PAAMAYIM_NEKUDOTAYIM T_STRING T_SEMICOLON.
top_statement ::= T_USE T_PAAMAYIM_NEKUDOTAYIM T_STRING T_AS T_STRING T_SEMICOLON.
top_statement ::= constant_declaration T_SEMICOLON.
statement ::= unticked_statement.
statement ::= T_STRING T_COLON.
function_declaration_statement ::= unticked_function_declaration_statement.
class_declaration_statement ::= unticked_class_declaration_statement.
namespace_name ::= T_STRING.
namespace_name ::= namespace_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.
constant_declaration ::= constant_declaration T_COMMA T_STRING T_EQUAL static_scalar.
constant_declaration ::= T_CONST T_STRING T_EQUAL static_scalar.
inner_statement_list_info ::=.
inner_statement_list ::= inner_statement_list inner_statement_list_info inner_statement.
inner_statement_list ::=.
inner_statement ::= statement.
inner_statement ::= function_declaration_statement.
inner_statement ::= class_declaration_statement.
inner_statement ::= T_HALT_COMPILER T_LPAREN T_RPAREN T_SEMICOLON.
if_statement ::= if_statement_body if_elseif_list if_else.
if_statement ::= if_statement_alt_body if_elseif_alt_list if_else_alt T_ENDIF T_SEMICOLON.
if_statement_body ::= if_statement_condition statement.
if_statement_alt_body ::= if_statement_condition T_COLON inner_statement_list.
if_statement_condition ::= T_IF T_LPAREN expr T_RPAREN.
if_elseif_statement_condition ::= T_ELSEIF T_LPAREN expr T_RPAREN.
if_elseif_list ::=.
if_elseif_list ::= if_elseif_list if_elseif_statement_condition if_statement_body.
if_elseif_alt_list ::=.
if_elseif_alt_list ::= if_elseif_alt_list if_elseif_statement_condition T_COLON if_statement_alt_body.
if_else ::=.
if_else ::= T_ELSE statement.
if_else_alt ::=.
if_else_alt ::= T_ELSE T_COLON statement.
while_statement ::= while_statement_begin while_statement_condition while_statement_body.
while_statement_begin ::= T_WHILE T_LPAREN.
while_statement_condition ::= expr T_RPAREN.
while_statement_body ::= statement.
while_statement_body ::= T_COLON inner_statement_list T_ENDWHILE T_SEMICOLON.
dowhile_statement ::= dowhile_statement_begin statement dowhile_statement_condition_begin expr T_PAREN T_SEMICOLON.
dowhile_statement_begin ::= T_DO.
dowhile_statement_condition_begin ::= T_LPAREN.
for_statement ::= T_FOR for_statement_def for_statement_body.
for_statement_init ::= for_expr T_SEMICOLON.
for_statement_condition ::= for_expr T_SEMICOLON.
for_statement_def ::= T_LPAREN for_statement_init for_statement_condition for_expr T_RPAREN.
for_statement_body ::= statement.
for_statement_body ::= T_COLON inner_statement_list T_ENDFOR T_SEMICOLON.
switch_statement ::= T_SWITCH switch_statement_condition switch_statement_body.
switch_statement_condition ::= T_LPAREN expr T_RPAREN.
switch_statement_body ::= T_LCBRACKET switch_statement_case_opt T_RCBRACKET.
switch_statement_body ::= T_LCBRACKET T_SEMICOLON switch_statement_case_opt T_RCBRACKET.
switch_statement_body ::= T_COLON switch_statement_case_opt T_ENDSWITCH T_SEMICOLON.
switch_statement_body ::= T_COLON T_SEMICOLON switch_statement_case_opt T_ENDSWITCH T_SEMICOLON.
switch_statement_case_opt ::=.
switch_statement_case_opt ::= switch_statement_case_list inner_statement_list.
switch_statement_case_list ::= switch_statement_case_list T_CASE expr switch_statement_case_separator.
switch_statement_case_list ::= switch_statement_case_list T_DEFAULT switch_statement_case_separator.
switch_statement_case_separator ::= T_COLON.
switch_statement_case_separator ::= T_SEMICOLON.
foreach_statement ::= foreach_statement_begin foreach_statement_cont foreach_statement_body.
foreach_statement ::= foreach_statement_novar_begin foreach_statement_novar_cont foreach_statement_body.
foreach_statement_begin ::= T_FOREACH T_LPAREN variable T_AS.
foreach_statement_cont ::= foreach_variable foreach_optional_arg T_RPAREN.
foreach_statement_novar_begin ::= T_FOREACH T_LPAREN expr_without_variable T_AS.
foreach_statement_novar_cont ::= variable foreach_optional_arg T_RPAREN.
foreach_optional_arg ::=.
foreach_optional_arg ::= T_DOUBLE_ARROW foreach_variable.
foreach_variable ::= variable.
foreach_variable ::= T_AMPERSAND variable.
foreach_statement_body ::= statement.
foreach_statement_body ::= T_COLON inner_statement_list T_ENDFOREACH T_SEMICOLON.
declare_statement ::= declare_statement_begin T_LPAREN declare_list T_RPAREN declare_statement.
declare_statement_begin ::= T_DECLARE.
unset_statement ::= T_UNSET T_LPAREN unset_statement_variables_list T_RPAREN T_SEMICOLON.
unset_statement_variables_list ::= unset_statement_variable.
unset_statement_variables_list ::= unset_statement_variables_list T_COMMA unset_statement_variable.
unset_statement_variable ::= variable.
unticked_statement ::= if_statement.
unticked_statement ::= while_statement.
unticked_statement ::= dowhile_statement.
unticked_statement ::= for_statement.
unticked_statement ::= switch_statement.
unticked_statement ::= foreach_statement.
unticked_statement ::= declare_statement.
unticked_statement ::= unset_statement.
unticked_statement ::= T_LCBRACKET inner_statement_list T_RCBRACKET.
unticked_statement ::= T_BREAK T_SEMICOLON.
unticked_statement ::= T_BREAK expr T_SEMICOLON.
unticked_statement ::= T_CONTINUE T_SEMICOLON.
unticked_statement ::= T_CONTINUE expr T_SEMICOLON.
unticked_statement ::= T_RETURN T_SEMICOLON.
unticked_statement ::= T_RETURN expr_without_variable T_SEMICOLON.
unticked_statement ::= T_RETURN variable T_SEMICOLON.
unticked_statement ::= T_GLOBAL global_var_list T_SEMICOLON.
unticked_statement ::= T_STATIC static_var_list T_SEMICOLON.
unticked_statement ::= T_ECHO echo_expr_list T_SEMICOLON.
unticked_statement ::= T_INLINE_HTML.
unticked_statement ::= expr T_SEMICOLON.
unticked_statement ::= T_SEMICOLON.
unticked_statement ::= T_THROW expr T_SEMICOLON.
unticked_statement ::= T_GOTO T_STRING T_SEMICOLON.
is_reference ::=.
is_reference ::= T_AMPERSAND.
unticked_function_declaration_statement ::= function_declaration_cont T_LPAREN parameter_list T_RPAREN T_LCBRACKET inner_statement_list T_RCBRACKET.
function_declaration_begin ::= T_FUNCTION.
function_declaration_cont ::= function_declaration_begin T_STRING.
function_declaration_cont ::= function_declaration_begin T_AMPERSAND T_STRING.
parameter_list ::=.
parameter_list ::= parameter_list parameter.
parameter ::= optionnal_type_hint T_VARIABLE.
parameter ::= optionnal_type_hint T_AMPERSAND T_VARIABLE.
parameter ::= optionnal_type_hint T_VARIABLE T_EQUAL static_scalar.
parameter ::= optionnal_type_hint T_AMPERSAND T_VARIABLE T_EQUAL static_scalar.
unticked_class_declaration_statement ::= class_entry_type T_STRING extends_from implements_list T_LCBRACKET class_statement_list T_RCBRACKET.
unticked_class_declaration_statement ::= interface_entry T_STRING interface_extends_list T_LCBRACKET class_statement_list T_RCBRACKET.
class_entry_type ::= T_CLASS.
class_entry_type ::= T_ABSTRACT T_CLASS.
class_entry_type ::= T_FINAL T_CLASS.
extends_from ::=.
extends_from ::= T_EXTENDS fully_qualified_class_name.
interface_entry ::= T_INTERFACE.
interface_extends_list ::=.
interface_extends_list ::= T_EXTENDS interface_list.
implements_list ::=.
implements_list ::= T_IMPLEMENTS interface_list.
interface_list ::= fully_qualified_class_name.
interface_list ::= interface_list T_COMMA fully_qualified_class_name.
declare_statement ::= statement.
declare_statement ::= T_COLON inner_statement_list T_ENDDECLARE T_SEMICOLON.
declare_list ::= T_STRING T_EQUAL static_scalar.
declare_list ::= declare_list T_COMMA T_STRING T_EQUAL static_scalar.
optionnal_type_hint ::=.
optionnal_type_hint ::= fully_qualified_class_name.
optionnal_type_hint ::= T_ARRAY.
function_call_parameter_list ::=.
function_call_parameter_list ::= non_empty_function_call_parameter_list.
non_empty_function_call_parameter_list ::= expr_without_variable.
non_empty_function_call_parameter_list ::= variable.
non_empty_function_call_parameter_list ::= T_AMPERSAND w_variable.
non_empty_function_call_parameter_list ::= non_empty_function_call_parameter_list T_COMMA expr_without_variable.
non_empty_function_call_parameter_list ::= non_empty_function_call_parameter_list T_COMMA variable.
non_empty_function_call_parameter_list ::= non_empty_function_call_parameter_list T_COMMA T_AMPERSAND w_variable.
global_var_list ::= global_var_list T_COMMA global_var.
global_var_list ::= global_var.
global_var ::= T_VARIABLE.
global_var ::= T_DOLLAR r_variable.
global_var ::= T_DOLLAR T_LCBRACKET expr T_RCBRACKET.
static_var_list ::= static_var_list T_COMMA T_VARIABLE.
static_var_list ::= static_var_list T_COMMA T_VARIABLE T_EQUAL static_scalar.
static_var_list ::= T_VARIABLE.
static_var_list ::= T_VARIABLE T_EQUAL static_scalar.
class_statement_list ::= class_statement_list class_statement.
class_statement_list ::=.
class_statement ::= variable_modifiers class_variable_declaration T_SEMICOLON.
class_statement ::= class_constant_declaration T_SEMICOLON.
class_statement ::= method_modifiers T_FUNCTION is_reference T_STRING T_LPAREN parameter_list T_RPAREN method_body.
method_body ::= T_SEMICOLON.
method_body ::= T_LCBRACKET inner_statement_list T_RCBRACKET.
variable_modifiers ::= non_empty_member_modifiers.
variable_modifiers ::= T_VAR.
method_modifiers ::=.
method_modifiers ::= non_empty_member_modifiers.
non_empty_member_modifiers ::= member_modifier.
non_empty_member_modifiers ::= non_empty_member_modifiers member_modifier.
member_modifier ::= T_PUBLIC.
member_modifier ::= T_PROTECTED.
member_modifier ::= T_PRIVATE.
member_modifier ::= T_STATIC.
member_modifier ::= T_ABSTRACT.
member_modifier ::= T_FINAL.
class_variable_declaration ::= class_variable_declaration T_COMMA T_VARIABLE.
class_variable_declaration ::= class_variable_declaration T_COMMA T_VARIABLE T_EQUAL static_scalar.
class_variable_declaration ::= T_VARIABLE.
class_variable_declaration ::= T_VARIABLE T_EQUAL static_scalar.
class_constant_declaration ::= class_constant_declaration T_COMMA T_STRING T_EQUAL static_scalar.
class_constant_declaration ::= T_CONST T_STRING T_EQUAL static_scalar.
echo_expr_list ::= echo_expr_list T_COMMA expr.
echo_expr_list ::= expr.
for_expr ::=.
for_expr ::= non_empty_for_expr.
non_empty_for_expr ::= non_empty_for_expr T_COMMA expr.
non_empty_for_expr ::= expr.
expr_without_variable ::= T_LIST T_LPAREN assignment_list T_RPAREN T_EQUAL expr.
expr_without_variable ::= variable T_EQUAL expr.
expr_without_variable ::= variable T_EQUAL T_AMPERSAND variable.
expr_without_variable ::= variable T_EQUAL T_AMPERSAND T_NEW class_name_reference ctor_arguments.
expr_without_variable ::= T_NEW class_name_reference ctor_arguments.
expr_without_variable ::= T_CLONE expr.
expr_without_variable ::= variable T_PLUS_EQUAL expr.
expr_without_variable ::= variable T_MINUS_EQUAL expr.
expr_without_variable ::= variable T_MUL_EQUAL expr.
expr_without_variable ::= variable T_DIV_EQUAL expr.
expr_without_variable ::= variable T_CONCAT_EQUAL expr.
expr_without_variable ::= variable T_MOD_EQUAL expr.
expr_without_variable ::= variable T_AMPERSAND_EQUAL expr.
expr_without_variable ::= variable T_OR_EQUAL expr.
expr_without_variable ::= variable T_XOR_EQUAL expr.
expr_without_variable ::= variable T_SL_EQUAL expr.
expr_without_variable ::= variable T_SR_EQUAL expr.
expr_without_variable ::= rw_variable T_INC.
expr_without_variable ::= T_INC rw_variable.
expr_without_variable ::= rw_variable T_DEC.
expr_without_variable ::= T_DEC rw_variable.
expr_without_variable ::= expr T_BOOLEAN_OR expr.
expr_without_variable ::= expr T_BOOLEAN_AND expr.
expr_without_variable ::= expr T_LOGICAL_OR expr.
expr_without_variable ::= expr T_LOGICAL_AND expr.
expr_without_variable ::= expr T_LOGICAL_XOR expr.
expr_without_variable ::= expr T_PIPE expr.
expr_without_variable ::= expr T_AMPERSAND expr.
expr_without_variable ::= expr T_HAT expr.
expr_without_variable ::= expr T_DOT expr.
expr_without_variable ::= expr T_PLUS expr.
expr_without_variable ::= expr T_MINUS expr.
expr_without_variable ::= expr T_STAR expr.
expr_without_variable ::= expr T_SLASH expr.
expr_without_variable ::= expr T_PERCENT expr.
expr_without_variable ::= expr T_SL expr.
expr_without_variable ::= expr T_SR expr.
expr_without_variable ::= T_PLUS expr T_INC.
expr_without_variable ::= T_MINUS expr T_INC.
expr_without_variable ::= T_BANG expr.
expr_without_variable ::= T_TILDA expr.
expr_without_variable ::= expr T_IS_IDENTICAL expr.
expr_without_variable ::= expr T_IS_NOT_IDENTICAL expr.
expr_without_variable ::= expr T_IS_EQUAL expr.
expr_without_variable ::= expr T_IS_NOT_EQUAL expr.
expr_without_variable ::= expr T_SMALLER_THAN expr.
expr_without_variable ::= expr T_IS_SMALLER_OR_EQUAL expr.
expr_without_variable ::= expr T_GREATER_THAN expr.
expr_without_variable ::= expr T_IS_GREATER_OR_EQUAL expr.
expr_without_variable ::= expr T_INSTANCEOF class_name_reference.
expr_without_variable ::= T_LPAREN expr T_RPAREN.
expr_without_variable ::= expr T_INTERROGATION_MARK.
expr_without_variable ::= expr T_COLON expr.
expr_without_variable ::= expr T_INTERROGATION_MARK T_COLON expr.
expr_without_variable ::= internal_functions_in_yacc.
expr_without_variable ::= T_INT_CAST expr.
expr_without_variable ::= T_DOUBLE_CAST expr.
expr_without_variable ::= T_STRING_CAST expr.
expr_without_variable ::= T_UNICODE_CAST expr.
expr_without_variable ::= T_BINARY_CAST expr.
expr_without_variable ::= T_ARRAY_CAST expr.
expr_without_variable ::= T_OBJECT_CAST expr.
expr_without_variable ::= T_BOOL_CAST expr.
expr_without_variable ::= T_UNSET_CAST expr.
expr_without_variable ::= T_EXIT exit_expr.
expr_without_variable ::= T_AT expr.
expr_without_variable ::= scalar.
expr_without_variable ::= T_ARRAY T_LPAREN array_pair_list T_RPAREN.
expr_without_variable ::= T_BACKTICK encaps_list T_BACKTICK.
expr_without_variable ::= T_PRINT expr.
function_call ::= T_STRING T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= T_PAAMAYIM_NEKUDOTAYIM T_STRING T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM variable_without_objects T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= class_name T_PAAMAYIM_NEKUDOTAYIM variable_without_objects T_LPAREN function_call_parameter_list T_RPAREN.
function_call ::= variable_without_objects T_LPAREN function_call_parameter_list T_RPAREN.
class_name ::= T_STRING.
class_name ::= T_STATIC.
class_name ::= T_NAMESPACE.
class_name ::= T_PAAMAYIM_NEKUDOTAYIM T_STRING.
class_name ::= class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.
fully_qualified_class_name ::= T_STRING.
fully_qualified_class_name ::= T_NAMESPACE.
fully_qualified_class_name ::= T_PAAMAYIM_NEKUDOTAYIM T_STRING.
fully_qualified_class_name ::= fully_qualified_class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.
class_name_reference ::= class_name.
class_name_reference ::= dynamic_class_name_reference.
dynamic_class_name_reference ::= base_variable T_OBJECT_OPERATOR object_property dynamic_class_name_variable_properties.
dynamic_class_name_reference ::= base_variable.
dynamic_class_name_variable_properties ::=.
dynamic_class_name_variable_properties ::= dynamic_class_name_variable_properties dynamic_class_name_variable_property.
dynamic_class_name_variable_property ::= T_OBJECT_OPERATOR object_property.
exit_expr ::=.
exit_expr ::= T_LPAREN T_RPAREN.
exit_expr ::= T_LPAREN expr T_RPAREN.
ctor_arguments ::=.
ctor_arguments ::= T_LPAREN function_call_parameter_list T_RPAREN.
common_scalar ::= T_LNUMBER.
common_scalar ::= T_DNUMBER.
common_scalar ::= T_CONSTANT_ENCAPSED_STRING.
common_scalar ::= T_LINE.
common_scalar ::= T_FILE.
common_scalar ::= T_DIR.
common_scalar ::= T_CLASS_C.
common_scalar ::= T_METHOD_C.
common_scalar ::= T_FUNC_C.
common_scalar ::= T_NS_C.
common_scalar ::= T_START_NOWDOC T_ENCAPSED_AND_WHITESPACE T_END_NOWDOC.
static_scalar ::= common_scalar.
static_scalar ::= T_STRING.
static_scalar ::= T_PAAMAYIM_NEKUDOTAYIM T_STRING.
static_scalar ::= T_PLUS static_scalar.
static_scalar ::= T_MINUS static_scalar.
static_scalar ::= T_ARRAY T_LPAREN static_array_pair_list T_RPAREN.
static_scalar ::= static_class_constant.
static_class_constant ::= class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.
scalar ::= T_STRING.
scalar ::= T_PAAMAYIM_NEKUDOTAYIM T_STRING.
scalar ::= T_STRING_VARNAME.
scalar ::= class_constant.
scalar ::= common_scalar.
scalar ::= T_DQUOTE encaps_list T_DQUOTE.
scalar ::= T_START_HEREDOC encaps_list T_END_HEREDOC.
scalar ::= T_BINARY_DOUBLE encaps_list T_DQUOTE.
scalar ::= T_BINARY_HEREDOC encaps_list T_END_HEREDOC.
static_array_pair_list ::=.
static_array_pair_list ::= non_empty_static_array_pair_list possible_comma.
possible_comma ::=.
possible_comma ::= T_COMMA.
non_empty_static_array_pair_list ::= non_empty_static_array_pair_list T_COMMA static_scalar T_DOUBLE_ARROW static_scalar.
non_empty_static_array_pair_list ::= non_empty_static_array_pair_list T_COMMA static_scalar.
non_empty_static_array_pair_list ::= static_scalar T_DOUBLE_ARROW static_scalar.
non_empty_static_array_pair_list ::= static_scalar.
expr ::= r_variable.
expr ::= expr_without_variable.
r_variable ::= variable.
w_variable ::= variable.
rw_variable ::= variable.
variable ::= base_variable_with_function_calls T_OBJECT_OPERATOR object_property method_or_not variable_properties.
variable ::= base_variable_with_function_calls.
variable_properties ::=.
variable_properties ::= variable_properties variable_property.
variable_property ::= T_OBJECT_OPERATOR object_property method_or_not.
method_or_not ::=.
method_or_not ::= T_LPAREN function_call_parameter_list T_RPAREN.
variable_without_objects ::= reference_variable.
variable_without_objects ::= simple_indirect_reference reference_variable.
static_member ::= class_name T_PAAMAYIM_NEKUDOTAYIM variable_without_objects.
static_member ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM variable_without_objects.
variable_class_name ::= reference_variable.
base_variable_with_function_calls ::= base_variable.
base_variable_with_function_calls ::= function_call.
base_variable ::= reference_variable.
base_variable ::= simple_indirect_reference reference_variable.
base_variable ::= static_member.
reference_variable ::= reference_variable T_LBRACKET dim_offset T_RBRACKET.
reference_variable ::= reference_variable T_LCBRACKET expr T_RCBRACKET.
reference_variable ::= compound_variable.
compound_variable ::= T_VARIABLE.
compound_variable ::= T_DOLLAR T_LCBRACKET expr T_RCBRACKET.
dim_offset ::=.
dim_offset ::= expr.
object_property ::= object_dim_list.
object_property ::= variable_without_objects.
object_dim_list ::= object_dim_list T_LBRACKET dim_offset T_RBRACKET.
object_dim_list ::= object_dim_list T_LCBRACKET expr T_RCBRACKET.
object_dim_list ::= variable_name.
variable_name ::= T_STRING.
variable_name ::= T_LCBRACKET expr T_RCBRACKET.
simple_indirect_reference ::= T_DOLLAR.
simple_indirect_reference ::= simple_indirect_reference T_DOLLAR.
assignment_list ::= assignment_list T_COMMA assignment_list_element.
assignment_list ::= assignment_list_element.
assignment_list_element ::=.
assignment_list_element ::= variable.
assignment_list_element ::= T_LIST T_LPAREN assignment_list T_RPAREN.
array_pair_list ::=.
array_pair_list ::= non_empty_array_pair_list possible_comma.
non_empty_array_pair_list ::= non_empty_array_pair_list T_COMMA expr T_DOUBLE_ARROW expr.
non_empty_array_pair_list ::= non_empty_array_pair_list T_COMMA expr.
non_empty_array_pair_list ::= expr T_DOUBLE_ARROW expr.
non_empty_array_pair_list ::= expr.
non_empty_array_pair_list ::= non_empty_array_pair_list T_COMMA expr T_DOUBLE_ARROW T_AMPERSAND w_variable.
non_empty_array_pair_list ::= non_empty_array_pair_list T_COMMA T_AMPERSAND w_variable.
non_empty_array_pair_list ::= expr T_DOUBLE_ARROW T_AMPERSAND w_variable.
non_empty_array_pair_list ::= T_AMPERSAND w_variable.
encaps_list ::=.
encaps_list ::= encaps_list encaps_var.
encaps_list ::= encaps_list T_ENCAPSED_AND_WHITESPACE.
encaps_var ::= T_VARIABLE.
encaps_var ::= T_VARIABLE T_LBRACKET encaps_var_offset T_RBRACKET.
encaps_var ::= T_VARIABLE T_OBJECT_OPERATOR T_STRING.
encaps_var ::= T_DOLLAR_OPEN_CURLY_BRACES expr T_RCBRACKET.
encaps_var ::= T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME T_LBRACKET expr T_RBRACKET T_RCBRACKET.
encaps_var ::= T_CURLY_OPEN variable T_RCBRACKET.
encaps_var_offset ::= T_STRING.
encaps_var_offset ::= T_NUM_STRING.
encaps_var_offset ::= T_VARIABLE.
internal_functions_in_yacc ::= T_ISSET T_LPAREN isset_variables T_RPAREN.
internal_functions_in_yacc ::= T_EMPTY T_LPAREN variable T_RPAREN.
internal_functions_in_yacc ::= T_INCLUDE expr.
internal_functions_in_yacc ::= T_INCLUDE_ONCE expr.
internal_functions_in_yacc ::= T_EVAL T_LPAREN expr T_RPAREN.
internal_functions_in_yacc ::= T_REQUIRE expr.
internal_functions_in_yacc ::= T_REQUIRE_ONCE expr.
isset_variables ::= variable.
isset_variables ::= isset_variables T_COMMA variable.
class_constant ::= class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.
class_constant ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING.