| Zeile 348... |
Zeile 348... |
| 348 |
block_or_error:
|
348 |
block_or_error:
|
| 349 |
'{' inner_statement_list '}' { $$ = $2; }
|
349 |
'{' inner_statement_list '}' { $$ = $2; }
|
| 350 |
| error { $$ = []; }
|
350 |
| error { $$ = []; }
|
| 351 |
;
|
351 |
;
|
| Zeile -... |
Zeile 352... |
| - |
|
352 |
|
| - |
|
353 |
identifier_maybe_readonly:
|
| - |
|
354 |
identifier_not_reserved { $$ = $1; }
|
| - |
|
355 |
| T_READONLY { $$ = Node\Identifier[$1]; }
|
| - |
|
356 |
;
|
| 352 |
|
357 |
|
| 353 |
function_declaration_statement:
|
358 |
function_declaration_statement:
|
| 354 |
T_FUNCTION optional_ref identifier_not_reserved '(' parameter_list ')' optional_return_type block_or_error
|
359 |
T_FUNCTION optional_ref identifier_maybe_readonly '(' parameter_list ')' optional_return_type block_or_error
|
| 355 |
{ $$ = Stmt\Function_[$3, ['byRef' => $2, 'params' => $5, 'returnType' => $7, 'stmts' => $8, 'attrGroups' => []]]; }
|
360 |
{ $$ = Stmt\Function_[$3, ['byRef' => $2, 'params' => $5, 'returnType' => $7, 'stmts' => $8, 'attrGroups' => []]]; }
|
| 356 |
| attributes T_FUNCTION optional_ref identifier_not_reserved '(' parameter_list ')' optional_return_type block_or_error
|
361 |
| attributes T_FUNCTION optional_ref identifier_maybe_readonly '(' parameter_list ')' optional_return_type block_or_error
|
| 357 |
{ $$ = Stmt\Function_[$4, ['byRef' => $3, 'params' => $6, 'returnType' => $8, 'stmts' => $9, 'attrGroups' => $1]]; }
|
362 |
{ $$ = Stmt\Function_[$4, ['byRef' => $3, 'params' => $6, 'returnType' => $8, 'stmts' => $9, 'attrGroups' => $1]]; }
|
| Zeile 358... |
Zeile 363... |
| 358 |
;
|
363 |
;
|
| - |
|
364 |
|
| - |
|
365 |
class_declaration_statement:
|
| - |
|
366 |
class_entry_type identifier_not_reserved extends_from implements_list '{' class_statement_list '}'
|
| 359 |
|
367 |
{ $$ = Stmt\Class_[$2, ['type' => $1, 'extends' => $3, 'implements' => $4, 'stmts' => $6, 'attrGroups' => []]];
|
| 360 |
class_declaration_statement:
|
368 |
$this->checkClass($$, #2); }
|
| 361 |
optional_attributes class_entry_type identifier_not_reserved extends_from implements_list '{' class_statement_list '}'
|
369 |
| attributes class_entry_type identifier_not_reserved extends_from implements_list '{' class_statement_list '}'
|
| 362 |
{ $$ = Stmt\Class_[$3, ['type' => $2, 'extends' => $4, 'implements' => $5, 'stmts' => $7, 'attrGroups' => $1]];
|
370 |
{ $$ = Stmt\Class_[$3, ['type' => $2, 'extends' => $4, 'implements' => $5, 'stmts' => $7, 'attrGroups' => $1]];
|
| 363 |
$this->checkClass($$, #3); }
|
371 |
$this->checkClass($$, #3); }
|
| 364 |
| optional_attributes T_INTERFACE identifier_not_reserved interface_extends_list '{' class_statement_list '}'
|
372 |
| optional_attributes T_INTERFACE identifier_not_reserved interface_extends_list '{' class_statement_list '}'
|
| Zeile 960... |
Zeile 968... |
| 960 |
|
968 |
|
| 961 |
lexical_var:
|
969 |
lexical_var:
|
| 962 |
optional_ref plain_variable { $$ = Expr\ClosureUse[$2, $1]; }
|
970 |
optional_ref plain_variable { $$ = Expr\ClosureUse[$2, $1]; }
|
| Zeile -... |
Zeile 971... |
| - |
|
971 |
;
|
| - |
|
972 |
|
| - |
|
973 |
name_readonly:
|
| - |
|
974 |
T_READONLY { $$ = Name[$1]; }
|
| 963 |
;
|
975 |
;
|
| 964 |
|
976 |
|
| - |
|
977 |
function_call:
|
| 965 |
function_call:
|
978 |
name argument_list { $$ = Expr\FuncCall[$1, $2]; }
|
| 966 |
name argument_list { $$ = Expr\FuncCall[$1, $2]; }
|
979 |
| name_readonly argument_list { $$ = Expr\FuncCall[$1, $2]; }
|
| 967 |
| callable_expr argument_list { $$ = Expr\FuncCall[$1, $2]; }
|
980 |
| callable_expr argument_list { $$ = Expr\FuncCall[$1, $2]; }
|
| 968 |
| class_name_or_var T_PAAMAYIM_NEKUDOTAYIM member_name argument_list
|
981 |
| class_name_or_var T_PAAMAYIM_NEKUDOTAYIM member_name argument_list
|