@appthreat/atom 1.8.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/astgen.js +6 -2
  2. package/index.js +3 -1
  3. package/package.json +3 -2
  4. package/phpastgen.js +31 -0
  5. package/plugins/autoload.php +25 -0
  6. package/plugins/bin/atom +1 -1
  7. package/plugins/bin/atom.bat +1 -1
  8. package/plugins/bin/php-parse +119 -0
  9. package/plugins/composer/ClassLoader.php +579 -0
  10. package/plugins/composer/InstalledVersions.php +359 -0
  11. package/plugins/composer/LICENSE +21 -0
  12. package/plugins/composer/autoload_classmap.php +260 -0
  13. package/plugins/composer/autoload_namespaces.php +9 -0
  14. package/plugins/composer/autoload_psr4.php +10 -0
  15. package/plugins/composer/autoload_real.php +36 -0
  16. package/plugins/composer/autoload_static.php +286 -0
  17. package/plugins/composer/installed.json +67 -0
  18. package/plugins/composer/installed.php +32 -0
  19. package/plugins/lib/io.appthreat.atom-1.8.1-classpath.jar +0 -0
  20. package/plugins/lib/{io.appthreat.atom-1.8.0.jar → io.appthreat.atom-1.8.1.jar} +0 -0
  21. package/plugins/lib/{io.appthreat.c2cpg_3-1.1.1.jar → io.appthreat.c2cpg_3-1.1.3.jar} +0 -0
  22. package/plugins/lib/{io.appthreat.dataflowengineoss_3-1.1.1.jar → io.appthreat.dataflowengineoss_3-1.1.3.jar} +0 -0
  23. package/plugins/lib/{io.appthreat.javasrc2cpg_3-1.1.1.jar → io.appthreat.javasrc2cpg_3-1.1.3.jar} +0 -0
  24. package/plugins/lib/{io.appthreat.jimple2cpg_3-1.1.1.jar → io.appthreat.jimple2cpg_3-1.1.3.jar} +0 -0
  25. package/plugins/lib/{io.appthreat.jssrc2cpg_3-1.1.1.jar → io.appthreat.jssrc2cpg_3-1.1.3.jar} +0 -0
  26. package/plugins/lib/io.appthreat.php2atom_3-1.1.3.jar +0 -0
  27. package/plugins/lib/{io.appthreat.pysrc2cpg_3-1.1.1.jar → io.appthreat.pysrc2cpg_3-1.1.3.jar} +0 -0
  28. package/plugins/lib/{io.appthreat.semanticcpg_3-1.1.1.jar → io.appthreat.semanticcpg_3-1.1.3.jar} +0 -0
  29. package/plugins/lib/{io.appthreat.x2cpg_3-1.1.1.jar → io.appthreat.x2cpg_3-1.1.3.jar} +0 -0
  30. package/plugins/nikic/php-parser/.php-cs-fixer.dist.php +31 -0
  31. package/plugins/nikic/php-parser/LICENSE +29 -0
  32. package/plugins/nikic/php-parser/Makefile +10 -0
  33. package/plugins/nikic/php-parser/README.md +233 -0
  34. package/plugins/nikic/php-parser/bin/php-parse +206 -0
  35. package/plugins/nikic/php-parser/composer.json +43 -0
  36. package/plugins/nikic/php-parser/lib/PhpParser/Builder/ClassConst.php +150 -0
  37. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Class_.php +151 -0
  38. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Declaration.php +50 -0
  39. package/plugins/nikic/php-parser/lib/PhpParser/Builder/EnumCase.php +87 -0
  40. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Enum_.php +116 -0
  41. package/plugins/nikic/php-parser/lib/PhpParser/Builder/FunctionLike.php +73 -0
  42. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Function_.php +67 -0
  43. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Interface_.php +94 -0
  44. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Method.php +147 -0
  45. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Namespace_.php +45 -0
  46. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Param.php +149 -0
  47. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Property.php +161 -0
  48. package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUse.php +65 -0
  49. package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUseAdaptation.php +145 -0
  50. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Trait_.php +83 -0
  51. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Use_.php +49 -0
  52. package/plugins/nikic/php-parser/lib/PhpParser/Builder.php +12 -0
  53. package/plugins/nikic/php-parser/lib/PhpParser/BuilderFactory.php +375 -0
  54. package/plugins/nikic/php-parser/lib/PhpParser/BuilderHelpers.php +333 -0
  55. package/plugins/nikic/php-parser/lib/PhpParser/Comment/Doc.php +6 -0
  56. package/plugins/nikic/php-parser/lib/PhpParser/Comment.php +207 -0
  57. package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluationException.php +6 -0
  58. package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php +234 -0
  59. package/plugins/nikic/php-parser/lib/PhpParser/Error.php +171 -0
  60. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php +43 -0
  61. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Throwing.php +17 -0
  62. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler.php +12 -0
  63. package/plugins/nikic/php-parser/lib/PhpParser/Internal/DiffElem.php +31 -0
  64. package/plugins/nikic/php-parser/lib/PhpParser/Internal/Differ.php +178 -0
  65. package/plugins/nikic/php-parser/lib/PhpParser/Internal/PrintableNewAnonClassNode.php +71 -0
  66. package/plugins/nikic/php-parser/lib/PhpParser/Internal/TokenPolyfill.php +237 -0
  67. package/plugins/nikic/php-parser/lib/PhpParser/Internal/TokenStream.php +271 -0
  68. package/plugins/nikic/php-parser/lib/PhpParser/JsonDecoder.php +108 -0
  69. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/Emulative.php +226 -0
  70. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AttributeEmulator.php +49 -0
  71. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/EnumTokenEmulator.php +26 -0
  72. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ExplicitOctalEmulator.php +45 -0
  73. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/KeywordEmulator.php +56 -0
  74. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/MatchTokenEmulator.php +19 -0
  75. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NullsafeTokenEmulator.php +60 -0
  76. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyFunctionTokenEmulator.php +31 -0
  77. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyTokenEmulator.php +31 -0
  78. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php +37 -0
  79. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php +30 -0
  80. package/plugins/nikic/php-parser/lib/PhpParser/Lexer.php +116 -0
  81. package/plugins/nikic/php-parser/lib/PhpParser/Modifiers.php +69 -0
  82. package/plugins/nikic/php-parser/lib/PhpParser/NameContext.php +284 -0
  83. package/plugins/nikic/php-parser/lib/PhpParser/Node/Arg.php +44 -0
  84. package/plugins/nikic/php-parser/lib/PhpParser/Node/ArrayItem.php +43 -0
  85. package/plugins/nikic/php-parser/lib/PhpParser/Node/Attribute.php +33 -0
  86. package/plugins/nikic/php-parser/lib/PhpParser/Node/AttributeGroup.php +27 -0
  87. package/plugins/nikic/php-parser/lib/PhpParser/Node/ClosureUse.php +36 -0
  88. package/plugins/nikic/php-parser/lib/PhpParser/Node/ComplexType.php +13 -0
  89. package/plugins/nikic/php-parser/lib/PhpParser/Node/Const_.php +36 -0
  90. package/plugins/nikic/php-parser/lib/PhpParser/Node/DeclareItem.php +37 -0
  91. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayDimFetch.php +33 -0
  92. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayItem.php +3 -0
  93. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Array_.php +34 -0
  94. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php +84 -0
  95. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Assign.php +33 -0
  96. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseAnd.php +11 -0
  97. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseOr.php +11 -0
  98. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseXor.php +11 -0
  99. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Coalesce.php +11 -0
  100. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Concat.php +11 -0
  101. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Div.php +11 -0
  102. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Minus.php +11 -0
  103. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mod.php +11 -0
  104. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mul.php +11 -0
  105. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Plus.php +11 -0
  106. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Pow.php +11 -0
  107. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftLeft.php +11 -0
  108. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftRight.php +11 -0
  109. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp.php +29 -0
  110. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignRef.php +33 -0
  111. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseAnd.php +15 -0
  112. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseOr.php +15 -0
  113. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseXor.php +15 -0
  114. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanAnd.php +15 -0
  115. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanOr.php +15 -0
  116. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Coalesce.php +15 -0
  117. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Concat.php +15 -0
  118. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Div.php +15 -0
  119. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Equal.php +15 -0
  120. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Greater.php +15 -0
  121. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/GreaterOrEqual.php +15 -0
  122. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Identical.php +15 -0
  123. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalAnd.php +15 -0
  124. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalOr.php +15 -0
  125. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalXor.php +15 -0
  126. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Minus.php +15 -0
  127. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mod.php +15 -0
  128. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mul.php +15 -0
  129. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotEqual.php +15 -0
  130. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotIdentical.php +15 -0
  131. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Plus.php +15 -0
  132. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pow.php +15 -0
  133. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftLeft.php +15 -0
  134. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftRight.php +15 -0
  135. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Smaller.php +15 -0
  136. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/SmallerOrEqual.php +15 -0
  137. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Spaceship.php +15 -0
  138. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp.php +37 -0
  139. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BitwiseNot.php +29 -0
  140. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BooleanNot.php +29 -0
  141. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php +35 -0
  142. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Array_.php +11 -0
  143. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Bool_.php +11 -0
  144. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Double.php +16 -0
  145. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Int_.php +11 -0
  146. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Object_.php +11 -0
  147. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/String_.php +11 -0
  148. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Unset_.php +11 -0
  149. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast.php +25 -0
  150. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClassConstFetch.php +36 -0
  151. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Clone_.php +29 -0
  152. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php +86 -0
  153. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClosureUse.php +3 -0
  154. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ConstFetch.php +30 -0
  155. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Empty_.php +29 -0
  156. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Error.php +30 -0
  157. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ErrorSuppress.php +29 -0
  158. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Eval_.php +29 -0
  159. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Exit_.php +33 -0
  160. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/FuncCall.php +38 -0
  161. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Include_.php +38 -0
  162. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Instanceof_.php +35 -0
  163. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Isset_.php +29 -0
  164. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/List_.php +34 -0
  165. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Match_.php +32 -0
  166. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/MethodCall.php +45 -0
  167. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/New_.php +40 -0
  168. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafeMethodCall.php +45 -0
  169. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafePropertyFetch.php +35 -0
  170. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostDec.php +29 -0
  171. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostInc.php +29 -0
  172. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreDec.php +29 -0
  173. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreInc.php +29 -0
  174. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Print_.php +29 -0
  175. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php +35 -0
  176. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ShellExec.php +30 -0
  177. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticCall.php +45 -0
  178. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticPropertyFetch.php +36 -0
  179. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Ternary.php +37 -0
  180. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Throw_.php +29 -0
  181. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryMinus.php +29 -0
  182. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryPlus.php +29 -0
  183. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Variable.php +29 -0
  184. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/YieldFrom.php +29 -0
  185. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Yield_.php +33 -0
  186. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr.php +8 -0
  187. package/plugins/nikic/php-parser/lib/PhpParser/Node/FunctionLike.php +40 -0
  188. package/plugins/nikic/php-parser/lib/PhpParser/Node/Identifier.php +75 -0
  189. package/plugins/nikic/php-parser/lib/PhpParser/Node/InterpolatedStringPart.php +32 -0
  190. package/plugins/nikic/php-parser/lib/PhpParser/Node/IntersectionType.php +27 -0
  191. package/plugins/nikic/php-parser/lib/PhpParser/Node/MatchArm.php +30 -0
  192. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/FullyQualified.php +49 -0
  193. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/Relative.php +49 -0
  194. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name.php +269 -0
  195. package/plugins/nikic/php-parser/lib/PhpParser/Node/NullableType.php +29 -0
  196. package/plugins/nikic/php-parser/lib/PhpParser/Node/Param.php +84 -0
  197. package/plugins/nikic/php-parser/lib/PhpParser/Node/PropertyItem.php +37 -0
  198. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/DNumber.php +3 -0
  199. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Encapsed.php +3 -0
  200. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php +3 -0
  201. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Float_.php +78 -0
  202. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Int_.php +82 -0
  203. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/InterpolatedString.php +34 -0
  204. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/LNumber.php +3 -0
  205. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Class_.php +15 -0
  206. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Dir.php +15 -0
  207. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/File.php +15 -0
  208. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Function_.php +15 -0
  209. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Line.php +15 -0
  210. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Method.php +15 -0
  211. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Namespace_.php +15 -0
  212. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Trait_.php +15 -0
  213. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst.php +27 -0
  214. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/String_.php +161 -0
  215. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar.php +6 -0
  216. package/plugins/nikic/php-parser/lib/PhpParser/Node/StaticVar.php +39 -0
  217. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Block.php +29 -0
  218. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Break_.php +29 -0
  219. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Case_.php +33 -0
  220. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Catch_.php +40 -0
  221. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassConst.php +77 -0
  222. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassLike.php +109 -0
  223. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassMethod.php +154 -0
  224. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Class_.php +94 -0
  225. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Const_.php +29 -0
  226. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Continue_.php +29 -0
  227. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/DeclareDeclare.php +3 -0
  228. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Declare_.php +34 -0
  229. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Do_.php +33 -0
  230. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Echo_.php +29 -0
  231. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ElseIf_.php +33 -0
  232. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Else_.php +29 -0
  233. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/EnumCase.php +36 -0
  234. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Enum_.php +44 -0
  235. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Expression.php +32 -0
  236. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Finally_.php +29 -0
  237. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/For_.php +47 -0
  238. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Foreach_.php +50 -0
  239. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php +81 -0
  240. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Global_.php +29 -0
  241. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Goto_.php +30 -0
  242. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/GroupUse.php +41 -0
  243. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/HaltCompiler.php +29 -0
  244. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/If_.php +46 -0
  245. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/InlineHTML.php +29 -0
  246. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php +40 -0
  247. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php +30 -0
  248. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Namespace_.php +37 -0
  249. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php +16 -0
  250. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Property.php +82 -0
  251. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/PropertyProperty.php +3 -0
  252. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Return_.php +29 -0
  253. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/StaticVar.php +3 -0
  254. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Static_.php +30 -0
  255. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Switch_.php +33 -0
  256. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUse.php +33 -0
  257. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php +37 -0
  258. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php +33 -0
  259. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation.php +12 -0
  260. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Trait_.php +34 -0
  261. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TryCatch.php +37 -0
  262. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Unset_.php +29 -0
  263. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php +3 -0
  264. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php +47 -0
  265. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/While_.php +33 -0
  266. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt.php +8 -0
  267. package/plugins/nikic/php-parser/lib/PhpParser/Node/UnionType.php +27 -0
  268. package/plugins/nikic/php-parser/lib/PhpParser/Node/UseItem.php +55 -0
  269. package/plugins/nikic/php-parser/lib/PhpParser/Node/VarLikeIdentifier.php +16 -0
  270. package/plugins/nikic/php-parser/lib/PhpParser/Node/VariadicPlaceholder.php +27 -0
  271. package/plugins/nikic/php-parser/lib/PhpParser/Node.php +146 -0
  272. package/plugins/nikic/php-parser/lib/PhpParser/NodeAbstract.php +178 -0
  273. package/plugins/nikic/php-parser/lib/PhpParser/NodeDumper.php +290 -0
  274. package/plugins/nikic/php-parser/lib/PhpParser/NodeFinder.php +90 -0
  275. package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverser.php +278 -0
  276. package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverserInterface.php +26 -0
  277. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/CloningVisitor.php +19 -0
  278. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/CommentAnnotatingVisitor.php +82 -0
  279. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FindingVisitor.php +47 -0
  280. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FirstFindingVisitor.php +49 -0
  281. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NameResolver.php +262 -0
  282. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php +51 -0
  283. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php +38 -0
  284. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor.php +124 -0
  285. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php +24 -0
  286. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php7.php +2699 -0
  287. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php8.php +2717 -0
  288. package/plugins/nikic/php-parser/lib/PhpParser/Parser.php +24 -0
  289. package/plugins/nikic/php-parser/lib/PhpParser/ParserAbstract.php +1241 -0
  290. package/plugins/nikic/php-parser/lib/PhpParser/ParserFactory.php +42 -0
  291. package/plugins/nikic/php-parser/lib/PhpParser/PhpVersion.php +164 -0
  292. package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinter/Standard.php +1177 -0
  293. package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinter.php +51 -0
  294. package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinterAbstract.php +1655 -0
  295. package/plugins/nikic/php-parser/lib/PhpParser/Token.php +18 -0
  296. package/plugins/nikic/php-parser/lib/PhpParser/compatibility_tokens.php +56 -0
  297. package/plugins/nikic/php-parser/phpstan-baseline.neon +236 -0
  298. package/plugins/nikic/php-parser/phpstan.neon.dist +8 -0
  299. package/utils.mjs +10 -0
  300. package/plugins/lib/io.appthreat.atom-1.8.0-classpath.jar +0 -0
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Identical extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '===';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Identical';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class LogicalAnd extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return 'and';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_LogicalAnd';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class LogicalOr extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return 'or';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_LogicalOr';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class LogicalXor extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return 'xor';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_LogicalXor';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Minus extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '-';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Minus';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Mod extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '%';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Mod';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Mul extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '*';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Mul';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class NotEqual extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '!=';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_NotEqual';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class NotIdentical extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '!==';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_NotIdentical';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Plus extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '+';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Plus';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Pow extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '**';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Pow';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class ShiftLeft extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '<<';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_ShiftLeft';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class ShiftRight extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '>>';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_ShiftRight';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Smaller extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '<';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Smaller';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class SmallerOrEqual extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '<=';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_SmallerOrEqual';
14
+ }
15
+ }
@@ -0,0 +1,15 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\BinaryOp;
4
+
5
+ use PhpParser\Node\Expr\BinaryOp;
6
+
7
+ class Spaceship extends BinaryOp {
8
+ public function getOperatorSigil(): string {
9
+ return '<=>';
10
+ }
11
+
12
+ public function getType(): string {
13
+ return 'Expr_BinaryOp_Spaceship';
14
+ }
15
+ }
@@ -0,0 +1,37 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Expr;
6
+
7
+ abstract class BinaryOp extends Expr {
8
+ /** @var Expr The left hand side expression */
9
+ public Expr $left;
10
+ /** @var Expr The right hand side expression */
11
+ public Expr $right;
12
+
13
+ /**
14
+ * Constructs a binary operator node.
15
+ *
16
+ * @param Expr $left The left hand side expression
17
+ * @param Expr $right The right hand side expression
18
+ * @param array<string, mixed> $attributes Additional attributes
19
+ */
20
+ public function __construct(Expr $left, Expr $right, array $attributes = []) {
21
+ $this->attributes = $attributes;
22
+ $this->left = $left;
23
+ $this->right = $right;
24
+ }
25
+
26
+ public function getSubNodeNames(): array {
27
+ return ['left', 'right'];
28
+ }
29
+
30
+ /**
31
+ * Get the operator sigil for this binary operation.
32
+ *
33
+ * In the case there are multiple possible sigils for an operator, this method does not
34
+ * necessarily return the one used in the parsed code.
35
+ */
36
+ abstract public function getOperatorSigil(): string;
37
+ }
@@ -0,0 +1,29 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Expr;
6
+
7
+ class BitwiseNot extends Expr {
8
+ /** @var Expr Expression */
9
+ public Expr $expr;
10
+
11
+ /**
12
+ * Constructs a bitwise not node.
13
+ *
14
+ * @param Expr $expr Expression
15
+ * @param array<string, mixed> $attributes Additional attributes
16
+ */
17
+ public function __construct(Expr $expr, array $attributes = []) {
18
+ $this->attributes = $attributes;
19
+ $this->expr = $expr;
20
+ }
21
+
22
+ public function getSubNodeNames(): array {
23
+ return ['expr'];
24
+ }
25
+
26
+ public function getType(): string {
27
+ return 'Expr_BitwiseNot';
28
+ }
29
+ }
@@ -0,0 +1,29 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Expr;
6
+
7
+ class BooleanNot extends Expr {
8
+ /** @var Expr Expression */
9
+ public Expr $expr;
10
+
11
+ /**
12
+ * Constructs a boolean not node.
13
+ *
14
+ * @param Expr $expr Expression
15
+ * @param array<string, mixed> $attributes Additional attributes
16
+ */
17
+ public function __construct(Expr $expr, array $attributes = []) {
18
+ $this->attributes = $attributes;
19
+ $this->expr = $expr;
20
+ }
21
+
22
+ public function getSubNodeNames(): array {
23
+ return ['expr'];
24
+ }
25
+
26
+ public function getType(): string {
27
+ return 'Expr_BooleanNot';
28
+ }
29
+ }
@@ -0,0 +1,35 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Arg;
6
+ use PhpParser\Node\Expr;
7
+ use PhpParser\Node\VariadicPlaceholder;
8
+
9
+ abstract class CallLike extends Expr {
10
+ /**
11
+ * Return raw arguments, which may be actual Args, or VariadicPlaceholders for first-class
12
+ * callables.
13
+ *
14
+ * @return array<Arg|VariadicPlaceholder>
15
+ */
16
+ abstract public function getRawArgs(): array;
17
+
18
+ /**
19
+ * Returns whether this call expression is actually a first class callable.
20
+ */
21
+ public function isFirstClassCallable(): bool {
22
+ $rawArgs = $this->getRawArgs();
23
+ return count($rawArgs) === 1 && current($rawArgs) instanceof VariadicPlaceholder;
24
+ }
25
+
26
+ /**
27
+ * Assert that this is not a first-class callable and return only ordinary Args.
28
+ *
29
+ * @return Arg[]
30
+ */
31
+ public function getArgs(): array {
32
+ assert(!$this->isFirstClassCallable());
33
+ return $this->getRawArgs();
34
+ }
35
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Array_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_Array';
10
+ }
11
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Bool_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_Bool';
10
+ }
11
+ }
@@ -0,0 +1,16 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Double extends Cast {
8
+ // For use in "kind" attribute
9
+ public const KIND_DOUBLE = 1; // "double" syntax
10
+ public const KIND_FLOAT = 2; // "float" syntax
11
+ public const KIND_REAL = 3; // "real" syntax
12
+
13
+ public function getType(): string {
14
+ return 'Expr_Cast_Double';
15
+ }
16
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Int_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_Int';
10
+ }
11
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Object_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_Object';
10
+ }
11
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class String_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_String';
10
+ }
11
+ }
@@ -0,0 +1,11 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr\Cast;
4
+
5
+ use PhpParser\Node\Expr\Cast;
6
+
7
+ class Unset_ extends Cast {
8
+ public function getType(): string {
9
+ return 'Expr_Cast_Unset';
10
+ }
11
+ }
@@ -0,0 +1,25 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Expr;
6
+
7
+ abstract class Cast extends Expr {
8
+ /** @var Expr Expression */
9
+ public Expr $expr;
10
+
11
+ /**
12
+ * Constructs a cast node.
13
+ *
14
+ * @param Expr $expr Expression
15
+ * @param array<string, mixed> $attributes Additional attributes
16
+ */
17
+ public function __construct(Expr $expr, array $attributes = []) {
18
+ $this->attributes = $attributes;
19
+ $this->expr = $expr;
20
+ }
21
+
22
+ public function getSubNodeNames(): array {
23
+ return ['expr'];
24
+ }
25
+ }
@@ -0,0 +1,36 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node;
6
+ use PhpParser\Node\Expr;
7
+ use PhpParser\Node\Identifier;
8
+ use PhpParser\Node\Name;
9
+
10
+ class ClassConstFetch extends Expr {
11
+ /** @var Name|Expr Class name */
12
+ public Node $class;
13
+ /** @var Identifier|Expr|Error Constant name */
14
+ public Node $name;
15
+
16
+ /**
17
+ * Constructs a class const fetch node.
18
+ *
19
+ * @param Name|Expr $class Class name
20
+ * @param string|Identifier|Expr|Error $name Constant name
21
+ * @param array<string, mixed> $attributes Additional attributes
22
+ */
23
+ public function __construct(Node $class, $name, array $attributes = []) {
24
+ $this->attributes = $attributes;
25
+ $this->class = $class;
26
+ $this->name = \is_string($name) ? new Identifier($name) : $name;
27
+ }
28
+
29
+ public function getSubNodeNames(): array {
30
+ return ['class', 'name'];
31
+ }
32
+
33
+ public function getType(): string {
34
+ return 'Expr_ClassConstFetch';
35
+ }
36
+ }
@@ -0,0 +1,29 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node\Expr;
6
+
7
+ class Clone_ extends Expr {
8
+ /** @var Expr Expression */
9
+ public Expr $expr;
10
+
11
+ /**
12
+ * Constructs a clone node.
13
+ *
14
+ * @param Expr $expr Expression
15
+ * @param array<string, mixed> $attributes Additional attributes
16
+ */
17
+ public function __construct(Expr $expr, array $attributes = []) {
18
+ $this->attributes = $attributes;
19
+ $this->expr = $expr;
20
+ }
21
+
22
+ public function getSubNodeNames(): array {
23
+ return ['expr'];
24
+ }
25
+
26
+ public function getType(): string {
27
+ return 'Expr_Clone';
28
+ }
29
+ }
@@ -0,0 +1,86 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ namespace PhpParser\Node\Expr;
4
+
5
+ use PhpParser\Node;
6
+ use PhpParser\Node\ClosureUse;
7
+ use PhpParser\Node\Expr;
8
+ use PhpParser\Node\FunctionLike;
9
+
10
+ class Closure extends Expr implements FunctionLike {
11
+ /** @var bool Whether the closure is static */
12
+ public bool $static;
13
+ /** @var bool Whether to return by reference */
14
+ public bool $byRef;
15
+ /** @var Node\Param[] Parameters */
16
+ public array $params;
17
+ /** @var ClosureUse[] use()s */
18
+ public array $uses;
19
+ /** @var null|Node\Identifier|Node\Name|Node\ComplexType Return type */
20
+ public ?Node $returnType;
21
+ /** @var Node\Stmt[] Statements */
22
+ public array $stmts;
23
+ /** @var Node\AttributeGroup[] PHP attribute groups */
24
+ public array $attrGroups;
25
+
26
+ /**
27
+ * Constructs a lambda function node.
28
+ *
29
+ * @param array{
30
+ * static?: bool,
31
+ * byRef?: bool,
32
+ * params?: Node\Param[],
33
+ * uses?: ClosureUse[],
34
+ * returnType?: null|Node\Identifier|Node\Name|Node\ComplexType,
35
+ * stmts?: Node\Stmt[],
36
+ * attrGroups?: Node\AttributeGroup[],
37
+ * } $subNodes Array of the following optional subnodes:
38
+ * 'static' => false : Whether the closure is static
39
+ * 'byRef' => false : Whether to return by reference
40
+ * 'params' => array(): Parameters
41
+ * 'uses' => array(): use()s
42
+ * 'returnType' => null : Return type
43
+ * 'stmts' => array(): Statements
44
+ * 'attrGroups' => array(): PHP attributes groups
45
+ * @param array<string, mixed> $attributes Additional attributes
46
+ */
47
+ public function __construct(array $subNodes = [], array $attributes = []) {
48
+ $this->attributes = $attributes;
49
+ $this->static = $subNodes['static'] ?? false;
50
+ $this->byRef = $subNodes['byRef'] ?? false;
51
+ $this->params = $subNodes['params'] ?? [];
52
+ $this->uses = $subNodes['uses'] ?? [];
53
+ $this->returnType = $subNodes['returnType'] ?? null;
54
+ $this->stmts = $subNodes['stmts'] ?? [];
55
+ $this->attrGroups = $subNodes['attrGroups'] ?? [];
56
+ }
57
+
58
+ public function getSubNodeNames(): array {
59
+ return ['attrGroups', 'static', 'byRef', 'params', 'uses', 'returnType', 'stmts'];
60
+ }
61
+
62
+ public function returnsByRef(): bool {
63
+ return $this->byRef;
64
+ }
65
+
66
+ public function getParams(): array {
67
+ return $this->params;
68
+ }
69
+
70
+ public function getReturnType() {
71
+ return $this->returnType;
72
+ }
73
+
74
+ /** @return Node\Stmt[] */
75
+ public function getStmts(): array {
76
+ return $this->stmts;
77
+ }
78
+
79
+ public function getAttrGroups(): array {
80
+ return $this->attrGroups;
81
+ }
82
+
83
+ public function getType(): string {
84
+ return 'Expr_Closure';
85
+ }
86
+ }
@@ -0,0 +1,3 @@
1
+ <?php declare(strict_types=1);
2
+
3
+ require __DIR__ . '/../ClosureUse.php';