Viewing File: /home/ubuntu/code_review/arcanist/src/parser/xhpast/__tests__/data/php-traits.php.test
<?php
trait T {
function f() {}
}
class C {
use T;
}
class D {
use T, U;
}
class E {
use T, U {
T::x insteadof U;
T::x as y;
T::z as private z;
}
}
class F {
use Q { q as protected; }
}
~~~~~~~~~~
pass
~~~~~~~~~~
* n_PROGRAM
* n_STATEMENT_LIST
* n_OPEN_TAG
> <?php
> "\n\n"
* n_STATEMENT
* n_CLASS_DECLARATION
* n_CLASS_ATTRIBUTES
* n_STRING
> trait
> " "
* n_CLASS_NAME
> T
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> "\n "
* n_STATEMENT
* n_METHOD_DECLARATION
* n_METHOD_MODIFIER_LIST
* n_EMPTY
* n_STRING
> f
* n_DECLARATION_PARAMETER_LIST
> (
> )
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> }
> "\n"
> }
> "\n\n"
* n_STATEMENT
* n_CLASS_DECLARATION
* n_CLASS_ATTRIBUTES
> class
> " "
* n_CLASS_NAME
> C
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> "\n "
* n_TRAIT_USE
> use
> " "
* n_CLASS_NAME
> T
* n_EMPTY
> ;
> "\n"
> }
> "\n\n"
* n_STATEMENT
* n_CLASS_DECLARATION
* n_CLASS_ATTRIBUTES
> class
> " "
* n_CLASS_NAME
> D
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> "\n "
* n_TRAIT_USE
> use
> " "
* n_CLASS_NAME
> T
> ,
> " "
* n_CLASS_NAME
> U
* n_EMPTY
> ;
> "\n"
> }
> "\n\n"
* n_STATEMENT
* n_CLASS_DECLARATION
* n_CLASS_ATTRIBUTES
> class
> " "
* n_CLASS_NAME
> E
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> "\n "
* n_TRAIT_USE
> use
> " "
* n_CLASS_NAME
> T
> ,
> " "
* n_CLASS_NAME
> U
> " "
* n_TRAIT_ADAPTATION_LIST
> {
> "\n "
* n_TRAIT_INSTEADOF
* n_TRAIT_METHOD_REFERENCE
> T
> ::
> x
> " "
> insteadof
> " "
* n_TRAIT_REFERENCE_LIST
* n_CLASS_NAME
> U
> ;
> "\n "
* n_TRAIT_AS
* n_TRAIT_METHOD_REFERENCE
> T
> ::
> x
* n_EMPTY
* n_STRING
> y
> ;
> "\n "
* n_TRAIT_AS
* n_TRAIT_METHOD_REFERENCE
> T
> ::
> z
> " "
> as
> " "
* n_METHOD_MODIFIER_LIST
* n_STRING
> private
> " "
* n_STRING
> z
> ;
> "\n "
> }
> "\n"
> }
> "\n\n"
* n_STATEMENT
* n_CLASS_DECLARATION
* n_CLASS_ATTRIBUTES
> class
> " "
* n_CLASS_NAME
> F
* n_EMPTY
* n_EMPTY
* n_STATEMENT_LIST
> {
> "\n "
* n_TRAIT_USE
> use
> " "
* n_CLASS_NAME
> Q
> " "
* n_TRAIT_ADAPTATION_LIST
> {
> " "
* n_TRAIT_AS
* n_TRAIT_METHOD_REFERENCE
* n_STRING
> q
> " "
> as
> " "
* n_STRING
> protected
* n_EMPTY
> " "
> }
> "\n"
> }
> "\n"
Back to Directory
File Manager