mirror of
https://github.com/danog/PHP-Parser.git
synced 2024-12-02 17:28:27 +01:00
3da189769c
The UseUse::$alias node can now be null if an alias is not explicitly given. As such "use Foo\Bar" and "use Foo\Bar as Bar" are now represented differently. The UseUse->getAlias() method replicates the previous semantics, by returning "Bar" in both cases.
178 lines
4.0 KiB
Plaintext
178 lines
4.0 KiB
Plaintext
Aliases (use)
|
|
-----
|
|
<?php
|
|
|
|
use A\B;
|
|
use C\D as E;
|
|
use F\G as H, J;
|
|
|
|
// evil alias notation - Do Not Use!
|
|
use \A;
|
|
use \A as B;
|
|
|
|
// function and constant aliases
|
|
use function foo\bar;
|
|
use function foo\bar as baz;
|
|
use const foo\BAR;
|
|
use const foo\BAR as BAZ;
|
|
-----
|
|
array(
|
|
0: Stmt_Use(
|
|
type: TYPE_NORMAL (1)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: A
|
|
1: B
|
|
)
|
|
)
|
|
alias: null
|
|
)
|
|
)
|
|
)
|
|
1: Stmt_Use(
|
|
type: TYPE_NORMAL (1)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: C
|
|
1: D
|
|
)
|
|
)
|
|
alias: Identifier(
|
|
name: E
|
|
)
|
|
)
|
|
)
|
|
)
|
|
2: Stmt_Use(
|
|
type: TYPE_NORMAL (1)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: F
|
|
1: G
|
|
)
|
|
)
|
|
alias: Identifier(
|
|
name: H
|
|
)
|
|
)
|
|
1: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: J
|
|
)
|
|
)
|
|
alias: null
|
|
)
|
|
)
|
|
)
|
|
3: Stmt_Use(
|
|
type: TYPE_NORMAL (1)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: A
|
|
)
|
|
)
|
|
alias: null
|
|
)
|
|
)
|
|
comments: array(
|
|
0: // evil alias notation - Do Not Use!
|
|
)
|
|
)
|
|
4: Stmt_Use(
|
|
type: TYPE_NORMAL (1)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: A
|
|
)
|
|
)
|
|
alias: Identifier(
|
|
name: B
|
|
)
|
|
)
|
|
)
|
|
)
|
|
5: Stmt_Use(
|
|
type: TYPE_FUNCTION (2)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: foo
|
|
1: bar
|
|
)
|
|
)
|
|
alias: null
|
|
)
|
|
)
|
|
comments: array(
|
|
0: // function and constant aliases
|
|
)
|
|
)
|
|
6: Stmt_Use(
|
|
type: TYPE_FUNCTION (2)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: foo
|
|
1: bar
|
|
)
|
|
)
|
|
alias: Identifier(
|
|
name: baz
|
|
)
|
|
)
|
|
)
|
|
)
|
|
7: Stmt_Use(
|
|
type: TYPE_CONSTANT (3)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: foo
|
|
1: BAR
|
|
)
|
|
)
|
|
alias: null
|
|
)
|
|
)
|
|
)
|
|
8: Stmt_Use(
|
|
type: TYPE_CONSTANT (3)
|
|
uses: array(
|
|
0: Stmt_UseUse(
|
|
type: TYPE_UNKNOWN (0)
|
|
name: Name(
|
|
parts: array(
|
|
0: foo
|
|
1: BAR
|
|
)
|
|
)
|
|
alias: Identifier(
|
|
name: BAZ
|
|
)
|
|
)
|
|
)
|
|
)
|
|
) |