annotate vendor/nikic/php-parser/test/code/parser/stmt/class/trait.test @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 5fb285c0d0e3
children
rev   line source
Chris@0 1 Traits
Chris@0 2 -----
Chris@0 3 <?php
Chris@0 4
Chris@0 5 trait A {
Chris@0 6 public function a() {}
Chris@0 7 }
Chris@0 8
Chris@0 9 class B {
Chris@0 10 use C;
Chris@0 11 use D {
Chris@0 12 a as protected b;
Chris@0 13 c as d;
Chris@0 14 e as private;
Chris@0 15 }
Chris@0 16 use E, F, G {
Chris@0 17 E::a insteadof F, G;
Chris@0 18 E::b as protected c;
Chris@0 19 E::d as e;
Chris@0 20 E::f as private;
Chris@0 21 }
Chris@0 22 }
Chris@0 23 -----
Chris@0 24 array(
Chris@0 25 0: Stmt_Trait(
Chris@13 26 name: Identifier(
Chris@13 27 name: A
Chris@13 28 )
Chris@0 29 stmts: array(
Chris@0 30 0: Stmt_ClassMethod(
Chris@0 31 flags: MODIFIER_PUBLIC (1)
Chris@0 32 byRef: false
Chris@13 33 name: Identifier(
Chris@13 34 name: a
Chris@13 35 )
Chris@0 36 params: array(
Chris@0 37 )
Chris@0 38 returnType: null
Chris@0 39 stmts: array(
Chris@0 40 )
Chris@0 41 )
Chris@0 42 )
Chris@0 43 )
Chris@0 44 1: Stmt_Class(
Chris@0 45 flags: 0
Chris@13 46 name: Identifier(
Chris@13 47 name: B
Chris@13 48 )
Chris@0 49 extends: null
Chris@0 50 implements: array(
Chris@0 51 )
Chris@0 52 stmts: array(
Chris@0 53 0: Stmt_TraitUse(
Chris@0 54 traits: array(
Chris@0 55 0: Name(
Chris@0 56 parts: array(
Chris@0 57 0: C
Chris@0 58 )
Chris@0 59 )
Chris@0 60 )
Chris@0 61 adaptations: array(
Chris@0 62 )
Chris@0 63 )
Chris@0 64 1: Stmt_TraitUse(
Chris@0 65 traits: array(
Chris@0 66 0: Name(
Chris@0 67 parts: array(
Chris@0 68 0: D
Chris@0 69 )
Chris@0 70 )
Chris@0 71 )
Chris@0 72 adaptations: array(
Chris@0 73 0: Stmt_TraitUseAdaptation_Alias(
Chris@0 74 trait: null
Chris@13 75 method: Identifier(
Chris@13 76 name: a
Chris@13 77 )
Chris@0 78 newModifier: MODIFIER_PROTECTED (2)
Chris@13 79 newName: Identifier(
Chris@13 80 name: b
Chris@13 81 )
Chris@0 82 )
Chris@0 83 1: Stmt_TraitUseAdaptation_Alias(
Chris@0 84 trait: null
Chris@13 85 method: Identifier(
Chris@13 86 name: c
Chris@13 87 )
Chris@0 88 newModifier: null
Chris@13 89 newName: Identifier(
Chris@13 90 name: d
Chris@13 91 )
Chris@0 92 )
Chris@0 93 2: Stmt_TraitUseAdaptation_Alias(
Chris@0 94 trait: null
Chris@13 95 method: Identifier(
Chris@13 96 name: e
Chris@13 97 )
Chris@0 98 newModifier: MODIFIER_PRIVATE (4)
Chris@0 99 newName: null
Chris@0 100 )
Chris@0 101 )
Chris@0 102 )
Chris@0 103 2: Stmt_TraitUse(
Chris@0 104 traits: array(
Chris@0 105 0: Name(
Chris@0 106 parts: array(
Chris@0 107 0: E
Chris@0 108 )
Chris@0 109 )
Chris@0 110 1: Name(
Chris@0 111 parts: array(
Chris@0 112 0: F
Chris@0 113 )
Chris@0 114 )
Chris@0 115 2: Name(
Chris@0 116 parts: array(
Chris@0 117 0: G
Chris@0 118 )
Chris@0 119 )
Chris@0 120 )
Chris@0 121 adaptations: array(
Chris@0 122 0: Stmt_TraitUseAdaptation_Precedence(
Chris@0 123 trait: Name(
Chris@0 124 parts: array(
Chris@0 125 0: E
Chris@0 126 )
Chris@0 127 )
Chris@13 128 method: Identifier(
Chris@13 129 name: a
Chris@13 130 )
Chris@0 131 insteadof: array(
Chris@0 132 0: Name(
Chris@0 133 parts: array(
Chris@0 134 0: F
Chris@0 135 )
Chris@0 136 )
Chris@0 137 1: Name(
Chris@0 138 parts: array(
Chris@0 139 0: G
Chris@0 140 )
Chris@0 141 )
Chris@0 142 )
Chris@0 143 )
Chris@0 144 1: Stmt_TraitUseAdaptation_Alias(
Chris@0 145 trait: Name(
Chris@0 146 parts: array(
Chris@0 147 0: E
Chris@0 148 )
Chris@0 149 )
Chris@13 150 method: Identifier(
Chris@13 151 name: b
Chris@13 152 )
Chris@0 153 newModifier: MODIFIER_PROTECTED (2)
Chris@13 154 newName: Identifier(
Chris@13 155 name: c
Chris@13 156 )
Chris@0 157 )
Chris@0 158 2: Stmt_TraitUseAdaptation_Alias(
Chris@0 159 trait: Name(
Chris@0 160 parts: array(
Chris@0 161 0: E
Chris@0 162 )
Chris@0 163 )
Chris@13 164 method: Identifier(
Chris@13 165 name: d
Chris@13 166 )
Chris@0 167 newModifier: null
Chris@13 168 newName: Identifier(
Chris@13 169 name: e
Chris@13 170 )
Chris@0 171 )
Chris@0 172 3: Stmt_TraitUseAdaptation_Alias(
Chris@0 173 trait: Name(
Chris@0 174 parts: array(
Chris@0 175 0: E
Chris@0 176 )
Chris@0 177 )
Chris@13 178 method: Identifier(
Chris@13 179 name: f
Chris@13 180 )
Chris@0 181 newModifier: MODIFIER_PRIVATE (4)
Chris@0 182 newName: null
Chris@0 183 )
Chris@0 184 )
Chris@0 185 )
Chris@0 186 )
Chris@0 187 )
Chris@0 188 )