Mercurial > hg > isophonics-drupal-site
annotate vendor/nikic/php-parser/test/code/formatPreservation/insertionOfNullable.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@13 | 1 Insertion of a nullable node |
Chris@13 | 2 ----- |
Chris@13 | 3 <?php |
Chris@13 | 4 |
Chris@13 | 5 // TODO: The result spacing isn't always optimal. We may want to skip whitespace in some cases. |
Chris@13 | 6 |
Chris@13 | 7 function |
Chris@13 | 8 foo( |
Chris@13 | 9 $x, |
Chris@13 | 10 &$y |
Chris@13 | 11 ) |
Chris@13 | 12 {} |
Chris@13 | 13 |
Chris@13 | 14 $foo |
Chris@13 | 15 [ |
Chris@13 | 16 ]; |
Chris@13 | 17 |
Chris@13 | 18 [ |
Chris@13 | 19 $value |
Chris@13 | 20 ]; |
Chris@13 | 21 |
Chris@13 | 22 function |
Chris@13 | 23 () |
Chris@13 | 24 {}; |
Chris@13 | 25 |
Chris@13 | 26 $x |
Chris@13 | 27 ? |
Chris@13 | 28 : |
Chris@13 | 29 $y; |
Chris@13 | 30 |
Chris@13 | 31 yield |
Chris@13 | 32 $v ; |
Chris@13 | 33 yield ; |
Chris@13 | 34 |
Chris@13 | 35 break |
Chris@13 | 36 ; |
Chris@13 | 37 continue |
Chris@13 | 38 ; |
Chris@13 | 39 return |
Chris@13 | 40 ; |
Chris@13 | 41 |
Chris@13 | 42 class |
Chris@13 | 43 X |
Chris@13 | 44 { |
Chris@13 | 45 public |
Chris@13 | 46 function y() |
Chris@13 | 47 {} |
Chris@13 | 48 |
Chris@13 | 49 private |
Chris@13 | 50 $x |
Chris@13 | 51 ; |
Chris@13 | 52 } |
Chris@13 | 53 |
Chris@13 | 54 foreach ( |
Chris@13 | 55 $x |
Chris@13 | 56 as |
Chris@13 | 57 $y |
Chris@13 | 58 ) {} |
Chris@13 | 59 |
Chris@13 | 60 static |
Chris@13 | 61 $var |
Chris@13 | 62 ; |
Chris@13 | 63 |
Chris@13 | 64 try { |
Chris@13 | 65 } catch (X |
Chris@13 | 66 $y) { |
Chris@13 | 67 } |
Chris@13 | 68 |
Chris@13 | 69 if ($cond) { // Foo |
Chris@13 | 70 } elseif ($cond2) { // Bar |
Chris@13 | 71 } |
Chris@13 | 72 ----- |
Chris@13 | 73 $stmts[0]->returnType = new Node\Name('Foo'); |
Chris@13 | 74 $stmts[0]->params[0]->type = new Node\Identifier('int'); |
Chris@13 | 75 $stmts[0]->params[1]->type = new Node\Identifier('array'); |
Chris@13 | 76 $stmts[0]->params[1]->default = new Expr\ConstFetch(new Node\Name('null')); |
Chris@13 | 77 $stmts[1]->expr->dim = new Expr\Variable('a'); |
Chris@13 | 78 $stmts[2]->expr->items[0]->key = new Scalar\String_('X'); |
Chris@13 | 79 $stmts[3]->expr->returnType = new Node\Name('Bar'); |
Chris@13 | 80 $stmts[4]->expr->if = new Expr\Variable('z'); |
Chris@13 | 81 $stmts[5]->expr->key = new Expr\Variable('k'); |
Chris@13 | 82 $stmts[6]->expr->value = new Expr\Variable('v'); |
Chris@13 | 83 $stmts[7]->num = new Scalar\LNumber(2); |
Chris@13 | 84 $stmts[8]->num = new Scalar\LNumber(2); |
Chris@13 | 85 $stmts[9]->expr = new Expr\Variable('x'); |
Chris@13 | 86 $stmts[10]->extends = new Node\Name\FullyQualified('Bar'); |
Chris@13 | 87 $stmts[10]->stmts[0]->returnType = new Node\Name('Y'); |
Chris@13 | 88 $stmts[10]->stmts[1]->props[0]->default = new Scalar\DNumber(42.0); |
Chris@13 | 89 $stmts[11]->keyVar = new Expr\Variable('z'); |
Chris@13 | 90 $stmts[12]->vars[0]->default = new Scalar\String_('abc'); |
Chris@13 | 91 $stmts[13]->finally = new Stmt\Finally_([]); |
Chris@13 | 92 $stmts[14]->else = new Stmt\Else_([]); |
Chris@13 | 93 ----- |
Chris@13 | 94 <?php |
Chris@13 | 95 |
Chris@13 | 96 // TODO: The result spacing isn't always optimal. We may want to skip whitespace in some cases. |
Chris@13 | 97 |
Chris@13 | 98 function |
Chris@13 | 99 foo( |
Chris@13 | 100 int $x, |
Chris@13 | 101 array &$y = null |
Chris@13 | 102 ) : Foo |
Chris@13 | 103 {} |
Chris@13 | 104 |
Chris@13 | 105 $foo |
Chris@13 | 106 [$a |
Chris@13 | 107 ]; |
Chris@13 | 108 |
Chris@13 | 109 [ |
Chris@13 | 110 'X' => $value |
Chris@13 | 111 ]; |
Chris@13 | 112 |
Chris@13 | 113 function |
Chris@13 | 114 () : Bar |
Chris@13 | 115 {}; |
Chris@13 | 116 |
Chris@13 | 117 $x |
Chris@13 | 118 ? $z |
Chris@13 | 119 : |
Chris@13 | 120 $y; |
Chris@13 | 121 |
Chris@13 | 122 yield |
Chris@13 | 123 $k => $v ; |
Chris@13 | 124 yield $v ; |
Chris@13 | 125 |
Chris@13 | 126 break 2 |
Chris@13 | 127 ; |
Chris@13 | 128 continue 2 |
Chris@13 | 129 ; |
Chris@13 | 130 return $x |
Chris@13 | 131 ; |
Chris@13 | 132 |
Chris@13 | 133 class |
Chris@13 | 134 X extends \Bar |
Chris@13 | 135 { |
Chris@13 | 136 public |
Chris@13 | 137 function y() : Y |
Chris@13 | 138 {} |
Chris@13 | 139 |
Chris@13 | 140 private |
Chris@13 | 141 $x = 42.0 |
Chris@13 | 142 ; |
Chris@13 | 143 } |
Chris@13 | 144 |
Chris@13 | 145 foreach ( |
Chris@13 | 146 $x |
Chris@13 | 147 as |
Chris@13 | 148 $z => $y |
Chris@13 | 149 ) {} |
Chris@13 | 150 |
Chris@13 | 151 static |
Chris@13 | 152 $var = 'abc' |
Chris@13 | 153 ; |
Chris@13 | 154 |
Chris@13 | 155 try { |
Chris@13 | 156 } catch (X |
Chris@13 | 157 $y) { |
Chris@13 | 158 } finally { |
Chris@13 | 159 } |
Chris@13 | 160 |
Chris@13 | 161 if ($cond) { // Foo |
Chris@13 | 162 } elseif ($cond2) { // Bar |
Chris@13 | 163 } else { |
Chris@13 | 164 } |
Chris@13 | 165 ----- |
Chris@13 | 166 <?php |
Chris@13 | 167 |
Chris@13 | 168 namespace |
Chris@13 | 169 { echo 42; } |
Chris@13 | 170 ----- |
Chris@13 | 171 $stmts[0]->name = new Node\Name('Foo'); |
Chris@13 | 172 ----- |
Chris@13 | 173 <?php |
Chris@13 | 174 |
Chris@13 | 175 namespace Foo |
Chris@13 | 176 { echo 42; } |