@@ -1415,7 +1415,10 @@ public function getMethodParameters($stackPtr)
14151415 }
14161416 break ;
14171417 case T_STRING :
1418- // This is a string, so it may be a type hint, but it could
1418+ case T_NAME_QUALIFIED :
1419+ case T_NAME_FULLY_QUALIFIED :
1420+ case T_NAME_RELATIVE :
1421+ // This is an identifier name, so it may be a type declaration, but it could
14191422 // also be a constant used as a default value.
14201423 $ prevComma = false ;
14211424 for ($ t = $ i ; $ t >= $ opener ; $ t --) {
@@ -1673,17 +1676,15 @@ public function getMethodProperties($stackPtr)
16731676 $ scopeOpener = $ this ->tokens [$ stackPtr ]['scope_opener ' ];
16741677 }
16751678
1676- $ valid = [
1677- T_STRING => T_STRING ,
1679+ $ valid = Tokens:: $ nameTokens ;
1680+ $ valid += [
16781681 T_CALLABLE => T_CALLABLE ,
16791682 T_SELF => T_SELF ,
16801683 T_PARENT => T_PARENT ,
16811684 T_STATIC => T_STATIC ,
16821685 T_FALSE => T_FALSE ,
16831686 T_TRUE => T_TRUE ,
16841687 T_NULL => T_NULL ,
1685- T_NAMESPACE => T_NAMESPACE ,
1686- T_NS_SEPARATOR => T_NS_SEPARATOR ,
16871688 T_TYPE_UNION => T_TYPE_UNION ,
16881689 T_TYPE_INTERSECTION => T_TYPE_INTERSECTION ,
16891690 T_TYPE_OPEN_PARENTHESIS => T_TYPE_OPEN_PARENTHESIS ,
@@ -1876,16 +1877,14 @@ public function getMemberProperties($stackPtr)
18761877
18771878 if ($ i < $ stackPtr ) {
18781879 // We've found a type.
1879- $ valid = [
1880- T_STRING => T_STRING ,
1880+ $ valid = Tokens:: $ nameTokens ;
1881+ $ valid += [
18811882 T_CALLABLE => T_CALLABLE ,
18821883 T_SELF => T_SELF ,
18831884 T_PARENT => T_PARENT ,
18841885 T_FALSE => T_FALSE ,
18851886 T_TRUE => T_TRUE ,
18861887 T_NULL => T_NULL ,
1887- T_NAMESPACE => T_NAMESPACE ,
1888- T_NS_SEPARATOR => T_NS_SEPARATOR ,
18891888 T_TYPE_UNION => T_TYPE_UNION ,
18901889 T_TYPE_INTERSECTION => T_TYPE_INTERSECTION ,
18911890 T_TYPE_OPEN_PARENTHESIS => T_TYPE_OPEN_PARENTHESIS ,
@@ -2086,12 +2085,10 @@ public function isReference($stackPtr)
20862085 return true ;
20872086 } else {
20882087 $ skip = Tokens::$ emptyTokens ;
2089- $ skip[] = T_NS_SEPARATOR ;
2088+ $ skip += Tokens:: $ nameTokens ;
20902089 $ skip [] = T_SELF ;
20912090 $ skip [] = T_PARENT ;
20922091 $ skip [] = T_STATIC ;
2093- $ skip [] = T_STRING ;
2094- $ skip [] = T_NAMESPACE ;
20952092 $ skip [] = T_DOUBLE_COLON ;
20962093
20972094 $ nextSignificantAfter = $ this ->findNext (
@@ -2781,11 +2778,8 @@ public function findExtendedClassName($stackPtr)
27812778 return false ;
27822779 }
27832780
2784- $ find = [
2785- T_NS_SEPARATOR ,
2786- T_STRING ,
2787- T_WHITESPACE ,
2788- ];
2781+ $ find = Tokens::$ nameTokens ;
2782+ $ find [] = T_WHITESPACE ;
27892783
27902784 $ end = $ this ->findNext ($ find , ($ extendsIndex + 1 ), ($ classOpenerIndex + 1 ), true );
27912785 $ name = $ this ->getTokensAsString (($ extendsIndex + 1 ), ($ end - $ extendsIndex - 1 ));
@@ -2833,12 +2827,9 @@ public function findImplementedInterfaceNames($stackPtr)
28332827 return false ;
28342828 }
28352829
2836- $ find = [
2837- T_NS_SEPARATOR ,
2838- T_STRING ,
2839- T_WHITESPACE ,
2840- T_COMMA ,
2841- ];
2830+ $ find = Tokens::$ nameTokens ;
2831+ $ find [] = T_WHITESPACE ;
2832+ $ find [] = T_COMMA ;
28422833
28432834 $ end = $ this ->findNext ($ find , ($ implementsIndex + 1 ), ($ classOpenerIndex + 1 ), true );
28442835 $ name = $ this ->getTokensAsString (($ implementsIndex + 1 ), ($ end - $ implementsIndex - 1 ));
0 commit comments