All pastes #984767 Raw Edit

Miscellany

public text v1 · immutable
·published 2008-04-14 15:27 UTC
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.