Mercurial > hg > isophonics-drupal-site
view vendor/nikic/php-parser/test/code/parser/expr/fetchAndCall/staticCall.test @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
Static calls ----- <?php // method name variations A::b(); A::{'b'}(); A::$b(); A::$b['c'](); A::$b['c']['d'](); // array dereferencing A::b()['c']; // class name variations static::b(); $a::b(); ${'a'}::b(); $a['b']::c(); ----- !!php5 array( 0: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: A ) comments: array( 0: // method name variations ) ) name: Identifier( name: b ) args: array( ) comments: array( 0: // method name variations ) ) comments: array( 0: // method name variations ) ) 1: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: A ) ) name: Scalar_String( value: b ) args: array( ) ) ) 2: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: A ) ) name: Expr_Variable( name: b ) args: array( ) ) ) 3: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: A ) ) name: Expr_ArrayDimFetch( var: Expr_Variable( name: b ) dim: Scalar_String( value: c ) ) args: array( ) ) ) 4: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: A ) ) name: Expr_ArrayDimFetch( var: Expr_ArrayDimFetch( var: Expr_Variable( name: b ) dim: Scalar_String( value: c ) ) dim: Scalar_String( value: d ) ) args: array( ) ) ) 5: Stmt_Expression( expr: Expr_ArrayDimFetch( var: Expr_StaticCall( class: Name( parts: array( 0: A ) comments: array( 0: // array dereferencing ) ) name: Identifier( name: b ) args: array( ) comments: array( 0: // array dereferencing ) ) dim: Scalar_String( value: c ) comments: array( 0: // array dereferencing ) ) comments: array( 0: // array dereferencing ) ) 6: Stmt_Expression( expr: Expr_StaticCall( class: Name( parts: array( 0: static ) comments: array( 0: // class name variations ) ) name: Identifier( name: b ) args: array( ) comments: array( 0: // class name variations ) ) comments: array( 0: // class name variations ) ) 7: Stmt_Expression( expr: Expr_StaticCall( class: Expr_Variable( name: a ) name: Identifier( name: b ) args: array( ) ) ) 8: Stmt_Expression( expr: Expr_StaticCall( class: Expr_Variable( name: Scalar_String( value: a ) ) name: Identifier( name: b ) args: array( ) ) ) 9: Stmt_Expression( expr: Expr_StaticCall( class: Expr_ArrayDimFetch( var: Expr_Variable( name: a ) dim: Scalar_String( value: b ) ) name: Identifier( name: c ) args: array( ) ) ) )