Changeset View
Changeset View
Standalone View
Standalone View
support/xhpast/parser.y
| Show First 20 Lines • Show All 722 Lines • ▼ Show 20 Lines | | interface_entry T_STRING interface_extends_list '{' class_statement_list '}' { | ||||
| $$->appendChild(NTYPE($2, n_CLASS_NAME)); | $$->appendChild(NTYPE($2, n_CLASS_NAME)); | ||||
| $$->appendChild($3); | $$->appendChild($3); | ||||
| $$->appendChild(NNEW(n_EMPTY)); | $$->appendChild(NNEW(n_EMPTY)); | ||||
| $$->appendChild(NEXPAND($4, $5, $6)); | $$->appendChild(NEXPAND($4, $5, $6)); | ||||
| NMORE($$, $6); | NMORE($$, $6); | ||||
| $$ = NNEW(n_STATEMENT)->appendChild($$); | $$ = NNEW(n_STATEMENT)->appendChild($$); | ||||
| } | } | ||||
| | trait_entry T_STRING '{' class_statement_list '}' { | |||||
| $$ = NNEW(n_TRAIT_DECLARATION); | |||||
| $$->appendChild(NNEW(n_CLASS_ATTRIBUTES)); | |||||
| NMORE($$, $1); | |||||
| $$->appendChild(NTYPE($2, n_CLASS_NAME)); | |||||
| $$->appendChild(NNEW(n_EMPTY)); | |||||
| $$->appendChild(NNEW(n_EMPTY)); | |||||
| $$->appendChild(NEXPAND($3, $4, $5)); | |||||
| NMORE($$, $5); | |||||
| $$ = NNEW(n_STATEMENT)->appendChild($$); | |||||
| } | |||||
| ; | ; | ||||
| class_entry_type: | class_entry_type: | ||||
| T_CLASS { | T_CLASS { | ||||
| NTYPE($1, n_CLASS_ATTRIBUTES); | NTYPE($1, n_CLASS_ATTRIBUTES); | ||||
| $$ = $1; | $$ = $1; | ||||
| } | } | ||||
| | T_ABSTRACT T_CLASS { | | T_ABSTRACT T_CLASS { | ||||
| NTYPE($2, n_CLASS_ATTRIBUTES); | NTYPE($2, n_CLASS_ATTRIBUTES); | ||||
| NMORE($2, $1); | NMORE($2, $1); | ||||
| $2->appendChild(NTYPE($1, n_STRING)); | $2->appendChild(NTYPE($1, n_STRING)); | ||||
| $$ = $2; | $$ = $2; | ||||
| } | } | ||||
| | T_FINAL T_CLASS { | | T_FINAL T_CLASS { | ||||
| NTYPE($2, n_CLASS_ATTRIBUTES); | NTYPE($2, n_CLASS_ATTRIBUTES); | ||||
| NMORE($2, $1); | NMORE($2, $1); | ||||
| $2->appendChild(NTYPE($1, n_STRING)); | $2->appendChild(NTYPE($1, n_STRING)); | ||||
| $$ = $2; | $$ = $2; | ||||
| } | } | ||||
| | T_TRAIT { | |||||
| $$ = NNEW(n_CLASS_ATTRIBUTES); | |||||
| $$->appendChild(NTYPE($1, n_STRING)); | |||||
| } | |||||
| ; | ; | ||||
| extends_from: | extends_from: | ||||
| %empty { | %empty { | ||||
| $$ = NNEW(n_EMPTY); | $$ = NNEW(n_EMPTY); | ||||
| } | } | ||||
| | T_EXTENDS fully_qualified_class_name { | | T_EXTENDS fully_qualified_class_name { | ||||
| $$ = NTYPE($1, n_EXTENDS_LIST)->appendChild($2); | $$ = NTYPE($1, n_EXTENDS_LIST)->appendChild($2); | ||||
| } | } | ||||
| ; | ; | ||||
| interface_entry: | interface_entry: | ||||
| T_INTERFACE | T_INTERFACE | ||||
| ; | ; | ||||
| trait_entry: | |||||
| T_TRAIT | |||||
| ; | |||||
| interface_extends_list: | interface_extends_list: | ||||
| %empty { | %empty { | ||||
| $$ = NNEW(n_EMPTY); | $$ = NNEW(n_EMPTY); | ||||
| } | } | ||||
| | T_EXTENDS interface_list { | | T_EXTENDS interface_list { | ||||
| NTYPE($1, n_EXTENDS_LIST); | NTYPE($1, n_EXTENDS_LIST); | ||||
| $1->appendChildren($2); | $1->appendChildren($2); | ||||
| $$ = $1; | $$ = $1; | ||||
| ▲ Show 20 Lines • Show All 1,945 Lines • Show Last 20 Lines | |||||