view vendor/nikic/php-parser/test/code/parser/expr/fetchAndCall/staticPropertyFetch.test @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 5fb285c0d0e3
children
line wrap: on
line source
Static property fetches
-----
<?php

// property name variations
A::$b;
A::$$b;
A::${'b'};

// array access
A::$b['c'];
A::$b{'c'};

// class name variations can be found in staticCall.test
-----
array(
    0: Stmt_Expression(
        expr: Expr_StaticPropertyFetch(
            class: Name(
                parts: array(
                    0: A
                )
                comments: array(
                    0: // property name variations
                )
            )
            name: VarLikeIdentifier(
                name: b
            )
            comments: array(
                0: // property name variations
            )
        )
        comments: array(
            0: // property name variations
        )
    )
    1: Stmt_Expression(
        expr: Expr_StaticPropertyFetch(
            class: Name(
                parts: array(
                    0: A
                )
            )
            name: Expr_Variable(
                name: b
            )
        )
    )
    2: Stmt_Expression(
        expr: Expr_StaticPropertyFetch(
            class: Name(
                parts: array(
                    0: A
                )
            )
            name: Scalar_String(
                value: b
            )
        )
    )
    3: Stmt_Expression(
        expr: Expr_ArrayDimFetch(
            var: Expr_StaticPropertyFetch(
                class: Name(
                    parts: array(
                        0: A
                    )
                    comments: array(
                        0: // array access
                    )
                )
                name: VarLikeIdentifier(
                    name: b
                )
                comments: array(
                    0: // array access
                )
            )
            dim: Scalar_String(
                value: c
            )
            comments: array(
                0: // array access
            )
        )
        comments: array(
            0: // array access
        )
    )
    4: Stmt_Expression(
        expr: Expr_ArrayDimFetch(
            var: Expr_StaticPropertyFetch(
                class: Name(
                    parts: array(
                        0: A
                    )
                )
                name: VarLikeIdentifier(
                    name: b
                )
            )
            dim: Scalar_String(
                value: c
            )
        )
    )
    5: Stmt_Nop(
        comments: array(
            0: // class name variations can be found in staticCall.test
        )
    )
)