annotate vendor/nikic/php-parser/test/code/parser/expr/fetchAndCall/objectAccess.test @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
rev   line source
Chris@0 1 Object access
Chris@0 2 -----
Chris@0 3 <?php
Chris@0 4
Chris@0 5 // property fetch variations
Chris@0 6 $a->b;
Chris@0 7 $a->b['c'];
Chris@0 8 $a->b{'c'};
Chris@0 9
Chris@0 10 // method call variations
Chris@0 11 $a->b();
Chris@0 12 $a->{'b'}();
Chris@0 13 $a->$b();
Chris@0 14 $a->$b['c']();
Chris@0 15
Chris@0 16 // array dereferencing
Chris@0 17 $a->b()['c'];
Chris@0 18 $a->b(){'c'}; // invalid PHP: drop Support?
Chris@0 19 -----
Chris@0 20 !!php5
Chris@0 21 array(
Chris@0 22 0: Expr_PropertyFetch(
Chris@0 23 var: Expr_Variable(
Chris@0 24 name: a
Chris@0 25 comments: array(
Chris@0 26 0: // property fetch variations
Chris@0 27 )
Chris@0 28 )
Chris@0 29 name: b
Chris@0 30 comments: array(
Chris@0 31 0: // property fetch variations
Chris@0 32 )
Chris@0 33 )
Chris@0 34 1: Expr_ArrayDimFetch(
Chris@0 35 var: Expr_PropertyFetch(
Chris@0 36 var: Expr_Variable(
Chris@0 37 name: a
Chris@0 38 )
Chris@0 39 name: b
Chris@0 40 )
Chris@0 41 dim: Scalar_String(
Chris@0 42 value: c
Chris@0 43 )
Chris@0 44 )
Chris@0 45 2: Expr_ArrayDimFetch(
Chris@0 46 var: Expr_PropertyFetch(
Chris@0 47 var: Expr_Variable(
Chris@0 48 name: a
Chris@0 49 )
Chris@0 50 name: b
Chris@0 51 )
Chris@0 52 dim: Scalar_String(
Chris@0 53 value: c
Chris@0 54 )
Chris@0 55 )
Chris@0 56 3: Expr_MethodCall(
Chris@0 57 var: Expr_Variable(
Chris@0 58 name: a
Chris@0 59 comments: array(
Chris@0 60 0: // method call variations
Chris@0 61 )
Chris@0 62 )
Chris@0 63 name: b
Chris@0 64 args: array(
Chris@0 65 )
Chris@0 66 comments: array(
Chris@0 67 0: // method call variations
Chris@0 68 )
Chris@0 69 )
Chris@0 70 4: Expr_MethodCall(
Chris@0 71 var: Expr_Variable(
Chris@0 72 name: a
Chris@0 73 )
Chris@0 74 name: Scalar_String(
Chris@0 75 value: b
Chris@0 76 )
Chris@0 77 args: array(
Chris@0 78 )
Chris@0 79 )
Chris@0 80 5: Expr_MethodCall(
Chris@0 81 var: Expr_Variable(
Chris@0 82 name: a
Chris@0 83 )
Chris@0 84 name: Expr_Variable(
Chris@0 85 name: b
Chris@0 86 )
Chris@0 87 args: array(
Chris@0 88 )
Chris@0 89 )
Chris@0 90 6: Expr_MethodCall(
Chris@0 91 var: Expr_Variable(
Chris@0 92 name: a
Chris@0 93 )
Chris@0 94 name: Expr_ArrayDimFetch(
Chris@0 95 var: Expr_Variable(
Chris@0 96 name: b
Chris@0 97 )
Chris@0 98 dim: Scalar_String(
Chris@0 99 value: c
Chris@0 100 )
Chris@0 101 )
Chris@0 102 args: array(
Chris@0 103 )
Chris@0 104 )
Chris@0 105 7: Expr_ArrayDimFetch(
Chris@0 106 var: Expr_MethodCall(
Chris@0 107 var: Expr_Variable(
Chris@0 108 name: a
Chris@0 109 comments: array(
Chris@0 110 0: // array dereferencing
Chris@0 111 )
Chris@0 112 )
Chris@0 113 name: b
Chris@0 114 args: array(
Chris@0 115 )
Chris@0 116 comments: array(
Chris@0 117 0: // array dereferencing
Chris@0 118 )
Chris@0 119 )
Chris@0 120 dim: Scalar_String(
Chris@0 121 value: c
Chris@0 122 )
Chris@0 123 comments: array(
Chris@0 124 0: // array dereferencing
Chris@0 125 )
Chris@0 126 )
Chris@0 127 8: Expr_ArrayDimFetch(
Chris@0 128 var: Expr_MethodCall(
Chris@0 129 var: Expr_Variable(
Chris@0 130 name: a
Chris@0 131 )
Chris@0 132 name: b
Chris@0 133 args: array(
Chris@0 134 )
Chris@0 135 )
Chris@0 136 dim: Scalar_String(
Chris@0 137 value: c
Chris@0 138 )
Chris@0 139 )
Chris@0 140 9: Stmt_Nop(
Chris@0 141 comments: array(
Chris@0 142 0: // invalid PHP: drop Support?
Chris@0 143 )
Chris@0 144 )
Chris@0 145 )