@appthreat/atom 2.1.18 → 2.2.0

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 (462) hide show
  1. package/{plugins/composer/LICENSE → LICENSE} +6 -6
  2. package/README.md +2 -2
  3. package/index.js +4 -8
  4. package/package.json +20 -13
  5. package/packages/atom-parsetools/LICENSE +21 -0
  6. package/{astgen.js → packages/atom-parsetools/astgen.js} +1 -1
  7. package/packages/atom-parsetools/index.js +1 -0
  8. package/{phpastgen.js → packages/atom-parsetools/phpastgen.js} +1 -1
  9. package/{rbastgen.js → packages/atom-parsetools/rbastgen.js} +1 -1
  10. package/{scalasem.js → packages/atom-parsetools/scalasem.js} +1 -1
  11. package/plugins/bin/atom +1 -1
  12. package/plugins/bin/atom.bat +1 -1
  13. package/plugins/lib/io.appthreat.atom-2.2.0-classpath.jar +0 -0
  14. package/plugins/lib/{io.appthreat.atom-2.1.18.jar → io.appthreat.atom-2.2.0.jar} +0 -0
  15. package/plugins/lib/{io.appthreat.c2cpg_3-2.3.8.jar → io.appthreat.c2cpg_3-2.4.1.jar} +0 -0
  16. package/plugins/lib/{io.appthreat.dataflowengineoss_3-2.3.8.jar → io.appthreat.dataflowengineoss_3-2.4.1.jar} +0 -0
  17. package/plugins/lib/{io.appthreat.javasrc2cpg_3-2.3.8.jar → io.appthreat.javasrc2cpg_3-2.4.1.jar} +0 -0
  18. package/plugins/lib/{io.appthreat.jimple2cpg_3-2.3.8.jar → io.appthreat.jimple2cpg_3-2.4.1.jar} +0 -0
  19. package/plugins/lib/{io.appthreat.jssrc2cpg_3-2.3.8.jar → io.appthreat.jssrc2cpg_3-2.4.1.jar} +0 -0
  20. package/plugins/lib/{io.appthreat.php2atom_3-2.3.8.jar → io.appthreat.php2atom_3-2.4.1.jar} +0 -0
  21. package/plugins/lib/{io.appthreat.pysrc2cpg_3-2.3.8.jar → io.appthreat.pysrc2cpg_3-2.4.1.jar} +0 -0
  22. package/plugins/lib/{io.appthreat.ruby2atom_3-2.3.8.jar → io.appthreat.ruby2atom_3-2.4.1.jar} +0 -0
  23. package/plugins/lib/{io.appthreat.semanticcpg_3-2.3.8.jar → io.appthreat.semanticcpg_3-2.4.1.jar} +0 -0
  24. package/plugins/lib/{io.appthreat.x2cpg_3-2.3.8.jar → io.appthreat.x2cpg_3-2.4.1.jar} +0 -0
  25. package/plugins/lib/{io.circe.circe-core_3-0.14.12.jar → io.circe.circe-core_3-0.14.13.jar} +0 -0
  26. package/plugins/lib/{io.circe.circe-generic_3-0.14.12.jar → io.circe.circe-generic_3-0.14.13.jar} +0 -0
  27. package/plugins/lib/{io.circe.circe-jawn_3-0.14.12.jar → io.circe.circe-jawn_3-0.14.13.jar} +0 -0
  28. package/plugins/lib/{io.circe.circe-numbers_3-0.14.12.jar → io.circe.circe-numbers_3-0.14.13.jar} +0 -0
  29. package/plugins/lib/{io.circe.circe-parser_3-0.14.12.jar → io.circe.circe-parser_3-0.14.13.jar} +0 -0
  30. package/plugins/lib/{org.scala-lang.scala3-library_3-3.6.2.jar → org.scala-lang.scala3-library_3-3.6.4.jar} +0 -0
  31. package/plugins/autoload.php +0 -22
  32. package/plugins/bin/bundler +0 -14
  33. package/plugins/bin/php-parse +0 -119
  34. package/plugins/bin/ruby_ast_gen +0 -14
  35. package/plugins/composer/ClassLoader.php +0 -579
  36. package/plugins/composer/InstalledVersions.php +0 -396
  37. package/plugins/composer/autoload_classmap.php +0 -260
  38. package/plugins/composer/autoload_namespaces.php +0 -9
  39. package/plugins/composer/autoload_psr4.php +0 -10
  40. package/plugins/composer/autoload_real.php +0 -36
  41. package/plugins/composer/autoload_static.php +0 -286
  42. package/plugins/composer/installed.json +0 -65
  43. package/plugins/composer/installed.php +0 -32
  44. package/plugins/lib/io.appthreat.atom-2.1.18-classpath.jar +0 -0
  45. package/plugins/nikic/php-parser/LICENSE +0 -29
  46. package/plugins/nikic/php-parser/README.md +0 -225
  47. package/plugins/nikic/php-parser/bin/php-parse +0 -205
  48. package/plugins/nikic/php-parser/composer.json +0 -41
  49. package/plugins/nikic/php-parser/lib/PhpParser/Builder/ClassConst.php +0 -148
  50. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Class_.php +0 -146
  51. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Declaration.php +0 -43
  52. package/plugins/nikic/php-parser/lib/PhpParser/Builder/EnumCase.php +0 -85
  53. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Enum_.php +0 -117
  54. package/plugins/nikic/php-parser/lib/PhpParser/Builder/FunctionLike.php +0 -73
  55. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Function_.php +0 -67
  56. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Interface_.php +0 -93
  57. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Method.php +0 -146
  58. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Namespace_.php +0 -45
  59. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Param.php +0 -168
  60. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Property.php +0 -161
  61. package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUse.php +0 -64
  62. package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUseAdaptation.php +0 -148
  63. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Trait_.php +0 -78
  64. package/plugins/nikic/php-parser/lib/PhpParser/Builder/Use_.php +0 -49
  65. package/plugins/nikic/php-parser/lib/PhpParser/Builder.php +0 -13
  66. package/plugins/nikic/php-parser/lib/PhpParser/BuilderFactory.php +0 -399
  67. package/plugins/nikic/php-parser/lib/PhpParser/BuilderHelpers.php +0 -335
  68. package/plugins/nikic/php-parser/lib/PhpParser/Comment/Doc.php +0 -7
  69. package/plugins/nikic/php-parser/lib/PhpParser/Comment.php +0 -239
  70. package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluationException.php +0 -6
  71. package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php +0 -229
  72. package/plugins/nikic/php-parser/lib/PhpParser/Error.php +0 -180
  73. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php +0 -46
  74. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Throwing.php +0 -18
  75. package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler.php +0 -13
  76. package/plugins/nikic/php-parser/lib/PhpParser/Internal/DiffElem.php +0 -27
  77. package/plugins/nikic/php-parser/lib/PhpParser/Internal/Differ.php +0 -164
  78. package/plugins/nikic/php-parser/lib/PhpParser/Internal/PrintableNewAnonClassNode.php +0 -64
  79. package/plugins/nikic/php-parser/lib/PhpParser/Internal/TokenStream.php +0 -286
  80. package/plugins/nikic/php-parser/lib/PhpParser/JsonDecoder.php +0 -103
  81. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/Emulative.php +0 -251
  82. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AttributeEmulator.php +0 -56
  83. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/CoaleseEqualTokenEmulator.php +0 -47
  84. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/EnumTokenEmulator.php +0 -31
  85. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ExplicitOctalEmulator.php +0 -44
  86. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/FlexibleDocStringEmulator.php +0 -76
  87. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/FnTokenEmulator.php +0 -23
  88. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/KeywordEmulator.php +0 -62
  89. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/MatchTokenEmulator.php +0 -23
  90. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NullsafeTokenEmulator.php +0 -67
  91. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NumericLiteralSeparatorEmulator.php +0 -105
  92. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyFunctionTokenEmulator.php +0 -31
  93. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyTokenEmulator.php +0 -36
  94. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php +0 -36
  95. package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php +0 -25
  96. package/plugins/nikic/php-parser/lib/PhpParser/Lexer.php +0 -560
  97. package/plugins/nikic/php-parser/lib/PhpParser/NameContext.php +0 -285
  98. package/plugins/nikic/php-parser/lib/PhpParser/Node/Arg.php +0 -46
  99. package/plugins/nikic/php-parser/lib/PhpParser/Node/Attribute.php +0 -34
  100. package/plugins/nikic/php-parser/lib/PhpParser/Node/AttributeGroup.php +0 -29
  101. package/plugins/nikic/php-parser/lib/PhpParser/Node/ComplexType.php +0 -14
  102. package/plugins/nikic/php-parser/lib/PhpParser/Node/Const_.php +0 -37
  103. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayDimFetch.php +0 -34
  104. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayItem.php +0 -41
  105. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Array_.php +0 -34
  106. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php +0 -79
  107. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Assign.php +0 -34
  108. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseAnd.php +0 -12
  109. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseOr.php +0 -12
  110. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseXor.php +0 -12
  111. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Coalesce.php +0 -12
  112. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Concat.php +0 -12
  113. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Div.php +0 -12
  114. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Minus.php +0 -12
  115. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mod.php +0 -12
  116. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mul.php +0 -12
  117. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Plus.php +0 -12
  118. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Pow.php +0 -12
  119. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftLeft.php +0 -12
  120. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftRight.php +0 -12
  121. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp.php +0 -30
  122. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignRef.php +0 -34
  123. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseAnd.php +0 -16
  124. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseOr.php +0 -16
  125. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseXor.php +0 -16
  126. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanAnd.php +0 -16
  127. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanOr.php +0 -16
  128. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Coalesce.php +0 -16
  129. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Concat.php +0 -16
  130. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Div.php +0 -16
  131. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Equal.php +0 -16
  132. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Greater.php +0 -16
  133. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/GreaterOrEqual.php +0 -16
  134. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Identical.php +0 -16
  135. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalAnd.php +0 -16
  136. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalOr.php +0 -16
  137. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalXor.php +0 -16
  138. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Minus.php +0 -16
  139. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mod.php +0 -16
  140. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mul.php +0 -16
  141. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotEqual.php +0 -16
  142. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotIdentical.php +0 -16
  143. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Plus.php +0 -16
  144. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pow.php +0 -16
  145. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftLeft.php +0 -16
  146. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftRight.php +0 -16
  147. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Smaller.php +0 -16
  148. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/SmallerOrEqual.php +0 -16
  149. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Spaceship.php +0 -16
  150. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp.php +0 -40
  151. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BitwiseNot.php +0 -30
  152. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BooleanNot.php +0 -30
  153. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php +0 -39
  154. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Array_.php +0 -12
  155. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Bool_.php +0 -12
  156. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Double.php +0 -17
  157. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Int_.php +0 -12
  158. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Object_.php +0 -12
  159. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/String_.php +0 -12
  160. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Unset_.php +0 -12
  161. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast.php +0 -26
  162. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClassConstFetch.php +0 -36
  163. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Clone_.php +0 -30
  164. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php +0 -79
  165. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClosureUse.php +0 -34
  166. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ConstFetch.php +0 -31
  167. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Empty_.php +0 -30
  168. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Error.php +0 -31
  169. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ErrorSuppress.php +0 -30
  170. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Eval_.php +0 -30
  171. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Exit_.php +0 -34
  172. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/FuncCall.php +0 -39
  173. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Include_.php +0 -39
  174. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Instanceof_.php +0 -35
  175. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Isset_.php +0 -30
  176. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/List_.php +0 -30
  177. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Match_.php +0 -31
  178. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/MethodCall.php +0 -45
  179. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/New_.php +0 -41
  180. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafeMethodCall.php +0 -45
  181. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafePropertyFetch.php +0 -35
  182. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostDec.php +0 -30
  183. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostInc.php +0 -30
  184. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreDec.php +0 -30
  185. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreInc.php +0 -30
  186. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Print_.php +0 -30
  187. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php +0 -35
  188. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ShellExec.php +0 -30
  189. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticCall.php +0 -46
  190. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticPropertyFetch.php +0 -36
  191. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Ternary.php +0 -38
  192. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Throw_.php +0 -30
  193. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryMinus.php +0 -30
  194. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryPlus.php +0 -30
  195. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Variable.php +0 -30
  196. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/YieldFrom.php +0 -30
  197. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Yield_.php +0 -34
  198. package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr.php +0 -9
  199. package/plugins/nikic/php-parser/lib/PhpParser/Node/FunctionLike.php +0 -43
  200. package/plugins/nikic/php-parser/lib/PhpParser/Node/Identifier.php +0 -75
  201. package/plugins/nikic/php-parser/lib/PhpParser/Node/IntersectionType.php +0 -30
  202. package/plugins/nikic/php-parser/lib/PhpParser/Node/MatchArm.php +0 -31
  203. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/FullyQualified.php +0 -50
  204. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/Relative.php +0 -50
  205. package/plugins/nikic/php-parser/lib/PhpParser/Node/Name.php +0 -254
  206. package/plugins/nikic/php-parser/lib/PhpParser/Node/NullableType.php +0 -28
  207. package/plugins/nikic/php-parser/lib/PhpParser/Node/Param.php +0 -60
  208. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/DNumber.php +0 -77
  209. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Encapsed.php +0 -31
  210. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php +0 -30
  211. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/LNumber.php +0 -80
  212. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Class_.php +0 -16
  213. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Dir.php +0 -16
  214. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/File.php +0 -16
  215. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Function_.php +0 -16
  216. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Line.php +0 -16
  217. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Method.php +0 -16
  218. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Namespace_.php +0 -16
  219. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Trait_.php +0 -16
  220. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst.php +0 -28
  221. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/String_.php +0 -157
  222. package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar.php +0 -7
  223. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Break_.php +0 -30
  224. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Case_.php +0 -34
  225. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Catch_.php +0 -41
  226. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassConst.php +0 -85
  227. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassLike.php +0 -109
  228. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassMethod.php +0 -161
  229. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Class_.php +0 -137
  230. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Const_.php +0 -30
  231. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Continue_.php +0 -30
  232. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/DeclareDeclare.php +0 -34
  233. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Declare_.php +0 -34
  234. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Do_.php +0 -34
  235. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Echo_.php +0 -30
  236. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ElseIf_.php +0 -34
  237. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Else_.php +0 -30
  238. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/EnumCase.php +0 -37
  239. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Enum_.php +0 -40
  240. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Expression.php +0 -33
  241. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Finally_.php +0 -30
  242. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/For_.php +0 -43
  243. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Foreach_.php +0 -47
  244. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php +0 -77
  245. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Global_.php +0 -30
  246. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Goto_.php +0 -31
  247. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/GroupUse.php +0 -39
  248. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/HaltCompiler.php +0 -30
  249. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/If_.php +0 -43
  250. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/InlineHTML.php +0 -30
  251. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php +0 -37
  252. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php +0 -31
  253. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Namespace_.php +0 -38
  254. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php +0 -17
  255. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Property.php +0 -91
  256. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/PropertyProperty.php +0 -34
  257. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Return_.php +0 -30
  258. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/StaticVar.php +0 -37
  259. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Static_.php +0 -30
  260. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Switch_.php +0 -34
  261. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Throw_.php +0 -30
  262. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUse.php +0 -34
  263. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php +0 -38
  264. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php +0 -34
  265. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation.php +0 -13
  266. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Trait_.php +0 -32
  267. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TryCatch.php +0 -38
  268. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Unset_.php +0 -30
  269. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php +0 -52
  270. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php +0 -47
  271. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/While_.php +0 -34
  272. package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt.php +0 -9
  273. package/plugins/nikic/php-parser/lib/PhpParser/Node/UnionType.php +0 -28
  274. package/plugins/nikic/php-parser/lib/PhpParser/Node/VarLikeIdentifier.php +0 -17
  275. package/plugins/nikic/php-parser/lib/PhpParser/Node/VariadicPlaceholder.php +0 -27
  276. package/plugins/nikic/php-parser/lib/PhpParser/Node.php +0 -151
  277. package/plugins/nikic/php-parser/lib/PhpParser/NodeAbstract.php +0 -178
  278. package/plugins/nikic/php-parser/lib/PhpParser/NodeDumper.php +0 -206
  279. package/plugins/nikic/php-parser/lib/PhpParser/NodeFinder.php +0 -81
  280. package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverser.php +0 -291
  281. package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverserInterface.php +0 -29
  282. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/CloningVisitor.php +0 -20
  283. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FindingVisitor.php +0 -48
  284. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FirstFindingVisitor.php +0 -50
  285. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NameResolver.php +0 -260
  286. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php +0 -52
  287. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php +0 -41
  288. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor.php +0 -72
  289. package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php +0 -25
  290. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Multiple.php +0 -55
  291. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php5.php +0 -2682
  292. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php7.php +0 -2898
  293. package/plugins/nikic/php-parser/lib/PhpParser/Parser/Tokens.php +0 -148
  294. package/plugins/nikic/php-parser/lib/PhpParser/Parser.php +0 -18
  295. package/plugins/nikic/php-parser/lib/PhpParser/ParserAbstract.php +0 -1060
  296. package/plugins/nikic/php-parser/lib/PhpParser/ParserFactory.php +0 -76
  297. package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinter/Standard.php +0 -1126
  298. package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinterAbstract.php +0 -1576
  299. package/plugins/rubyastgen/.bundle/config +0 -5
  300. package/plugins/rubyastgen/Gemfile +0 -12
  301. package/plugins/rubyastgen/Gemfile.lock +0 -34
  302. package/plugins/rubyastgen/bundle/bundler/setup.rb +0 -42
  303. package/plugins/rubyastgen/bundle/ruby/3.4.0/bin/racc +0 -29
  304. package/plugins/rubyastgen/bundle/ruby/3.4.0/bin/ruby-parse +0 -29
  305. package/plugins/rubyastgen/bundle/ruby/3.4.0/bin/ruby-rewrite +0 -29
  306. package/plugins/rubyastgen/bundle/ruby/3.4.0/bin/ruby_ast_gen +0 -29
  307. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/.rspec +0 -3
  308. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/Gemfile +0 -10
  309. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/LICENSE.txt +0 -213
  310. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/README.md +0 -46
  311. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/Rakefile +0 -8
  312. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/bin/console +0 -11
  313. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/bin/setup +0 -6
  314. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/exe/ruby_ast_gen +0 -59
  315. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/lib/ruby_ast_gen/node_handling.rb +0 -232
  316. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/lib/ruby_ast_gen/version.rb +0 -5
  317. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/lib/ruby_ast_gen.rb +0 -140
  318. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/ruby_ast_gen.gemspec +0 -25
  319. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/spec/ruby_ast_gen_spec.rb +0 -175
  320. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/spec/spec_helper.rb +0 -15
  321. package/plugins/rubyastgen/bundle/ruby/3.4.0/bundler/gems/ruby_ast_gen-d8b5c5740b5a/update_version.rb +0 -36
  322. package/plugins/rubyastgen/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/racc-1.8.1/gem.build_complete +0 -0
  323. package/plugins/rubyastgen/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/racc-1.8.1/gem_make.out +0 -18
  324. package/plugins/rubyastgen/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/racc-1.8.1/racc/cparse.so +0 -0
  325. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/LICENSE.MIT +0 -20
  326. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/README.YARD.md +0 -12
  327. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/lib/ast/node.rb +0 -268
  328. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/lib/ast/processor/mixin.rb +0 -288
  329. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/lib/ast/processor.rb +0 -12
  330. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/lib/ast/sexp.rb +0 -30
  331. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ast-2.4.3/lib/ast.rb +0 -17
  332. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/BSDL +0 -22
  333. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/COPYING +0 -56
  334. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/Gemfile +0 -10
  335. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/README.md +0 -69
  336. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/Rakefile +0 -18
  337. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/bin/console +0 -14
  338. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/bin/setup +0 -8
  339. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/lib/ostruct.rb +0 -489
  340. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/ostruct-0.6.1/ostruct.gemspec +0 -24
  341. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/LICENSE.txt +0 -26
  342. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/bin/ruby-parse +0 -7
  343. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/bin/ruby-rewrite +0 -7
  344. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/gauntlet_parser.rb +0 -123
  345. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/all.rb +0 -17
  346. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ast/node.rb +0 -40
  347. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ast/processor.rb +0 -293
  348. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/base.rb +0 -294
  349. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/builders/default.rb +0 -2351
  350. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/clobbering_error.rb +0 -13
  351. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/color.rb +0 -32
  352. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/context.rb +0 -51
  353. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/current.rb +0 -146
  354. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/current_arg_stack.rb +0 -46
  355. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/deprecation.rb +0 -13
  356. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/diagnostic/engine.rb +0 -104
  357. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/diagnostic.rb +0 -163
  358. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer/dedenter.rb +0 -88
  359. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer/explanation.rb +0 -55
  360. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer/literal.rb +0 -284
  361. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer/stack_state.rb +0 -49
  362. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer-F0.rb +0 -12931
  363. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer-F1.rb +0 -14884
  364. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/lexer-strings.rb +0 -5433
  365. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/macruby.rb +0 -9634
  366. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/max_numparam_stack.rb +0 -56
  367. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/messages.rb +0 -125
  368. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/meta.rb +0 -48
  369. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/rewriter.rb +0 -105
  370. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby18.rb +0 -9272
  371. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby19.rb +0 -9558
  372. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby20.rb +0 -10229
  373. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby21.rb +0 -10203
  374. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby22.rb +0 -10302
  375. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby23.rb +0 -10322
  376. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby24.rb +0 -10454
  377. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby25.rb +0 -10374
  378. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby26.rb +0 -10352
  379. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby27.rb +0 -11948
  380. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby30.rb +0 -12244
  381. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby31.rb +0 -12717
  382. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby32.rb +0 -12705
  383. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby33.rb +0 -12590
  384. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/ruby34.rb +0 -12597
  385. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/rubymotion.rb +0 -9515
  386. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/runner/ruby_parse.rb +0 -157
  387. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/runner/ruby_rewrite.rb +0 -101
  388. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/runner.rb +0 -299
  389. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/buffer.rb +0 -369
  390. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/comment/associator.rb +0 -233
  391. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/comment.rb +0 -134
  392. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/collection.rb +0 -18
  393. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/condition.rb +0 -21
  394. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/constant.rb +0 -32
  395. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/definition.rb +0 -23
  396. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/for.rb +0 -19
  397. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/heredoc.rb +0 -19
  398. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/index.rb +0 -33
  399. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/keyword.rb +0 -20
  400. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/method_definition.rb +0 -25
  401. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/objc_kwarg.rb +0 -19
  402. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/operator.rb +0 -17
  403. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/rescue_body.rb +0 -21
  404. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/send.rb +0 -36
  405. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/ternary.rb +0 -18
  406. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map/variable.rb +0 -31
  407. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/map.rb +0 -186
  408. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/range.rb +0 -326
  409. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/rewriter/action.rb +0 -44
  410. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/rewriter.rb +0 -513
  411. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/tree_rewriter/action.rb +0 -243
  412. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/source/tree_rewriter.rb +0 -431
  413. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/static_environment.rb +0 -134
  414. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/syntax_error.rb +0 -21
  415. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/tree_rewriter.rb +0 -133
  416. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/unknown_encoding_in_magic_comment_error.rb +0 -15
  417. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/variables_stack.rb +0 -36
  418. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser/version.rb +0 -5
  419. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/lib/parser.rb +0 -91
  420. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/parser-3.3.8.0/parser.gemspec +0 -43
  421. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/BSDL +0 -22
  422. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/COPYING +0 -56
  423. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/ChangeLog +0 -846
  424. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +0 -58
  425. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +0 -60
  426. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/TODO +0 -5
  427. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/bin/racc +0 -320
  428. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/en/grammar.en.rdoc +0 -218
  429. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/en/grammar2.en.rdoc +0 -219
  430. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/command.ja.html +0 -99
  431. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/debug.ja.rdoc +0 -36
  432. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/grammar.ja.rdoc +0 -348
  433. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/index.ja.html +0 -10
  434. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/parser.ja.rdoc +0 -125
  435. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/doc/ja/usage.ja.html +0 -414
  436. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/ext/racc/cparse/Makefile +0 -273
  437. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/ext/racc/cparse/cparse.c +0 -840
  438. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/ext/racc/cparse/extconf.rb +0 -8
  439. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/compat.rb +0 -33
  440. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/cparse.so +0 -0
  441. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/debugflags.rb +0 -60
  442. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/exception.rb +0 -16
  443. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/grammar.rb +0 -1191
  444. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/grammarfileparser.rb +0 -667
  445. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/info.rb +0 -18
  446. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/iset.rb +0 -92
  447. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/logfilegenerator.rb +0 -212
  448. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/parser-text.rb +0 -644
  449. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/parser.rb +0 -630
  450. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/parserfilegenerator.rb +0 -473
  451. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/sourcetext.rb +0 -35
  452. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/state.rb +0 -976
  453. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/statetransitiontable.rb +0 -311
  454. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc/static.rb +0 -5
  455. package/plugins/rubyastgen/bundle/ruby/3.4.0/gems/racc-1.8.1/lib/racc.rb +0 -6
  456. package/plugins/rubyastgen/bundle/ruby/3.4.0/specifications/ast-2.4.3.gemspec +0 -29
  457. package/plugins/rubyastgen/bundle/ruby/3.4.0/specifications/ostruct-0.6.1.gemspec +0 -21
  458. package/plugins/rubyastgen/bundle/ruby/3.4.0/specifications/parser-3.3.8.0.gemspec +0 -37
  459. package/plugins/rubyastgen/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +0 -28
  460. package/plugins/rubyastgen/setup.ps1 +0 -4
  461. package/plugins/rubyastgen/setup.sh +0 -6
  462. package/utils.mjs +0 -139
@@ -1,560 +0,0 @@
1
- <?php declare(strict_types=1);
2
-
3
- namespace PhpParser;
4
-
5
- use PhpParser\Parser\Tokens;
6
-
7
- class Lexer
8
- {
9
- protected $code;
10
- protected $tokens;
11
- protected $pos;
12
- protected $line;
13
- protected $filePos;
14
- protected $prevCloseTagHasNewline;
15
-
16
- protected $tokenMap;
17
- protected $dropTokens;
18
- protected $identifierTokens;
19
-
20
- private $attributeStartLineUsed;
21
- private $attributeEndLineUsed;
22
- private $attributeStartTokenPosUsed;
23
- private $attributeEndTokenPosUsed;
24
- private $attributeStartFilePosUsed;
25
- private $attributeEndFilePosUsed;
26
- private $attributeCommentsUsed;
27
-
28
- /**
29
- * Creates a Lexer.
30
- *
31
- * @param array $options Options array. Currently only the 'usedAttributes' option is supported,
32
- * which is an array of attributes to add to the AST nodes. Possible
33
- * attributes are: 'comments', 'startLine', 'endLine', 'startTokenPos',
34
- * 'endTokenPos', 'startFilePos', 'endFilePos'. The option defaults to the
35
- * first three. For more info see getNextToken() docs.
36
- */
37
- public function __construct(array $options = []) {
38
- // Create Map from internal tokens to PhpParser tokens.
39
- $this->defineCompatibilityTokens();
40
- $this->tokenMap = $this->createTokenMap();
41
- $this->identifierTokens = $this->createIdentifierTokenMap();
42
-
43
- // map of tokens to drop while lexing (the map is only used for isset lookup,
44
- // that's why the value is simply set to 1; the value is never actually used.)
45
- $this->dropTokens = array_fill_keys(
46
- [\T_WHITESPACE, \T_OPEN_TAG, \T_COMMENT, \T_DOC_COMMENT, \T_BAD_CHARACTER], 1
47
- );
48
-
49
- $defaultAttributes = ['comments', 'startLine', 'endLine'];
50
- $usedAttributes = array_fill_keys($options['usedAttributes'] ?? $defaultAttributes, true);
51
-
52
- // Create individual boolean properties to make these checks faster.
53
- $this->attributeStartLineUsed = isset($usedAttributes['startLine']);
54
- $this->attributeEndLineUsed = isset($usedAttributes['endLine']);
55
- $this->attributeStartTokenPosUsed = isset($usedAttributes['startTokenPos']);
56
- $this->attributeEndTokenPosUsed = isset($usedAttributes['endTokenPos']);
57
- $this->attributeStartFilePosUsed = isset($usedAttributes['startFilePos']);
58
- $this->attributeEndFilePosUsed = isset($usedAttributes['endFilePos']);
59
- $this->attributeCommentsUsed = isset($usedAttributes['comments']);
60
- }
61
-
62
- /**
63
- * Initializes the lexer for lexing the provided source code.
64
- *
65
- * This function does not throw if lexing errors occur. Instead, errors may be retrieved using
66
- * the getErrors() method.
67
- *
68
- * @param string $code The source code to lex
69
- * @param ErrorHandler|null $errorHandler Error handler to use for lexing errors. Defaults to
70
- * ErrorHandler\Throwing
71
- */
72
- public function startLexing(string $code, ErrorHandler $errorHandler = null) {
73
- if (null === $errorHandler) {
74
- $errorHandler = new ErrorHandler\Throwing();
75
- }
76
-
77
- $this->code = $code; // keep the code around for __halt_compiler() handling
78
- $this->pos = -1;
79
- $this->line = 1;
80
- $this->filePos = 0;
81
-
82
- // If inline HTML occurs without preceding code, treat it as if it had a leading newline.
83
- // This ensures proper composability, because having a newline is the "safe" assumption.
84
- $this->prevCloseTagHasNewline = true;
85
-
86
- $scream = ini_set('xdebug.scream', '0');
87
-
88
- $this->tokens = @token_get_all($code);
89
- $this->postprocessTokens($errorHandler);
90
-
91
- if (false !== $scream) {
92
- ini_set('xdebug.scream', $scream);
93
- }
94
- }
95
-
96
- private function handleInvalidCharacterRange($start, $end, $line, ErrorHandler $errorHandler) {
97
- $tokens = [];
98
- for ($i = $start; $i < $end; $i++) {
99
- $chr = $this->code[$i];
100
- if ($chr === "\0") {
101
- // PHP cuts error message after null byte, so need special case
102
- $errorMsg = 'Unexpected null byte';
103
- } else {
104
- $errorMsg = sprintf(
105
- 'Unexpected character "%s" (ASCII %d)', $chr, ord($chr)
106
- );
107
- }
108
-
109
- $tokens[] = [\T_BAD_CHARACTER, $chr, $line];
110
- $errorHandler->handleError(new Error($errorMsg, [
111
- 'startLine' => $line,
112
- 'endLine' => $line,
113
- 'startFilePos' => $i,
114
- 'endFilePos' => $i,
115
- ]));
116
- }
117
- return $tokens;
118
- }
119
-
120
- /**
121
- * Check whether comment token is unterminated.
122
- *
123
- * @return bool
124
- */
125
- private function isUnterminatedComment($token) : bool {
126
- return ($token[0] === \T_COMMENT || $token[0] === \T_DOC_COMMENT)
127
- && substr($token[1], 0, 2) === '/*'
128
- && substr($token[1], -2) !== '*/';
129
- }
130
-
131
- protected function postprocessTokens(ErrorHandler $errorHandler) {
132
- // PHP's error handling for token_get_all() is rather bad, so if we want detailed
133
- // error information we need to compute it ourselves. Invalid character errors are
134
- // detected by finding "gaps" in the token array. Unterminated comments are detected
135
- // by checking if a trailing comment has a "*/" at the end.
136
- //
137
- // Additionally, we perform a number of canonicalizations here:
138
- // * Use the PHP 8.0 comment format, which does not include trailing whitespace anymore.
139
- // * Use PHP 8.0 T_NAME_* tokens.
140
- // * Use PHP 8.1 T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG and
141
- // T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG tokens used to disambiguate intersection types.
142
-
143
- $filePos = 0;
144
- $line = 1;
145
- $numTokens = \count($this->tokens);
146
- for ($i = 0; $i < $numTokens; $i++) {
147
- $token = $this->tokens[$i];
148
-
149
- // Since PHP 7.4 invalid characters are represented by a T_BAD_CHARACTER token.
150
- // In this case we only need to emit an error.
151
- if ($token[0] === \T_BAD_CHARACTER) {
152
- $this->handleInvalidCharacterRange($filePos, $filePos + 1, $line, $errorHandler);
153
- }
154
-
155
- if ($token[0] === \T_COMMENT && substr($token[1], 0, 2) !== '/*'
156
- && preg_match('/(\r\n|\n|\r)$/D', $token[1], $matches)) {
157
- $trailingNewline = $matches[0];
158
- $token[1] = substr($token[1], 0, -strlen($trailingNewline));
159
- $this->tokens[$i] = $token;
160
- if (isset($this->tokens[$i + 1]) && $this->tokens[$i + 1][0] === \T_WHITESPACE) {
161
- // Move trailing newline into following T_WHITESPACE token, if it already exists.
162
- $this->tokens[$i + 1][1] = $trailingNewline . $this->tokens[$i + 1][1];
163
- $this->tokens[$i + 1][2]--;
164
- } else {
165
- // Otherwise, we need to create a new T_WHITESPACE token.
166
- array_splice($this->tokens, $i + 1, 0, [
167
- [\T_WHITESPACE, $trailingNewline, $line],
168
- ]);
169
- $numTokens++;
170
- }
171
- }
172
-
173
- // Emulate PHP 8 T_NAME_* tokens, by combining sequences of T_NS_SEPARATOR and T_STRING
174
- // into a single token.
175
- if (\is_array($token)
176
- && ($token[0] === \T_NS_SEPARATOR || isset($this->identifierTokens[$token[0]]))) {
177
- $lastWasSeparator = $token[0] === \T_NS_SEPARATOR;
178
- $text = $token[1];
179
- for ($j = $i + 1; isset($this->tokens[$j]); $j++) {
180
- if ($lastWasSeparator) {
181
- if (!isset($this->identifierTokens[$this->tokens[$j][0]])) {
182
- break;
183
- }
184
- $lastWasSeparator = false;
185
- } else {
186
- if ($this->tokens[$j][0] !== \T_NS_SEPARATOR) {
187
- break;
188
- }
189
- $lastWasSeparator = true;
190
- }
191
- $text .= $this->tokens[$j][1];
192
- }
193
- if ($lastWasSeparator) {
194
- // Trailing separator is not part of the name.
195
- $j--;
196
- $text = substr($text, 0, -1);
197
- }
198
- if ($j > $i + 1) {
199
- if ($token[0] === \T_NS_SEPARATOR) {
200
- $type = \T_NAME_FULLY_QUALIFIED;
201
- } else if ($token[0] === \T_NAMESPACE) {
202
- $type = \T_NAME_RELATIVE;
203
- } else {
204
- $type = \T_NAME_QUALIFIED;
205
- }
206
- $token = [$type, $text, $line];
207
- array_splice($this->tokens, $i, $j - $i, [$token]);
208
- $numTokens -= $j - $i - 1;
209
- }
210
- }
211
-
212
- if ($token === '&') {
213
- $next = $i + 1;
214
- while (isset($this->tokens[$next]) && $this->tokens[$next][0] === \T_WHITESPACE) {
215
- $next++;
216
- }
217
- $followedByVarOrVarArg = isset($this->tokens[$next]) &&
218
- ($this->tokens[$next][0] === \T_VARIABLE || $this->tokens[$next][0] === \T_ELLIPSIS);
219
- $this->tokens[$i] = $token = [
220
- $followedByVarOrVarArg
221
- ? \T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG
222
- : \T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG,
223
- '&',
224
- $line,
225
- ];
226
- }
227
-
228
- $tokenValue = \is_string($token) ? $token : $token[1];
229
- $tokenLen = \strlen($tokenValue);
230
-
231
- if (substr($this->code, $filePos, $tokenLen) !== $tokenValue) {
232
- // Something is missing, must be an invalid character
233
- $nextFilePos = strpos($this->code, $tokenValue, $filePos);
234
- $badCharTokens = $this->handleInvalidCharacterRange(
235
- $filePos, $nextFilePos, $line, $errorHandler);
236
- $filePos = (int) $nextFilePos;
237
-
238
- array_splice($this->tokens, $i, 0, $badCharTokens);
239
- $numTokens += \count($badCharTokens);
240
- $i += \count($badCharTokens);
241
- }
242
-
243
- $filePos += $tokenLen;
244
- $line += substr_count($tokenValue, "\n");
245
- }
246
-
247
- if ($filePos !== \strlen($this->code)) {
248
- if (substr($this->code, $filePos, 2) === '/*') {
249
- // Unlike PHP, HHVM will drop unterminated comments entirely
250
- $comment = substr($this->code, $filePos);
251
- $errorHandler->handleError(new Error('Unterminated comment', [
252
- 'startLine' => $line,
253
- 'endLine' => $line + substr_count($comment, "\n"),
254
- 'startFilePos' => $filePos,
255
- 'endFilePos' => $filePos + \strlen($comment),
256
- ]));
257
-
258
- // Emulate the PHP behavior
259
- $isDocComment = isset($comment[3]) && $comment[3] === '*';
260
- $this->tokens[] = [$isDocComment ? \T_DOC_COMMENT : \T_COMMENT, $comment, $line];
261
- } else {
262
- // Invalid characters at the end of the input
263
- $badCharTokens = $this->handleInvalidCharacterRange(
264
- $filePos, \strlen($this->code), $line, $errorHandler);
265
- $this->tokens = array_merge($this->tokens, $badCharTokens);
266
- }
267
- return;
268
- }
269
-
270
- if (count($this->tokens) > 0) {
271
- // Check for unterminated comment
272
- $lastToken = $this->tokens[count($this->tokens) - 1];
273
- if ($this->isUnterminatedComment($lastToken)) {
274
- $errorHandler->handleError(new Error('Unterminated comment', [
275
- 'startLine' => $line - substr_count($lastToken[1], "\n"),
276
- 'endLine' => $line,
277
- 'startFilePos' => $filePos - \strlen($lastToken[1]),
278
- 'endFilePos' => $filePos,
279
- ]));
280
- }
281
- }
282
- }
283
-
284
- /**
285
- * Fetches the next token.
286
- *
287
- * The available attributes are determined by the 'usedAttributes' option, which can
288
- * be specified in the constructor. The following attributes are supported:
289
- *
290
- * * 'comments' => Array of PhpParser\Comment or PhpParser\Comment\Doc instances,
291
- * representing all comments that occurred between the previous
292
- * non-discarded token and the current one.
293
- * * 'startLine' => Line in which the node starts.
294
- * * 'endLine' => Line in which the node ends.
295
- * * 'startTokenPos' => Offset into the token array of the first token in the node.
296
- * * 'endTokenPos' => Offset into the token array of the last token in the node.
297
- * * 'startFilePos' => Offset into the code string of the first character that is part of the node.
298
- * * 'endFilePos' => Offset into the code string of the last character that is part of the node.
299
- *
300
- * @param mixed $value Variable to store token content in
301
- * @param mixed $startAttributes Variable to store start attributes in
302
- * @param mixed $endAttributes Variable to store end attributes in
303
- *
304
- * @return int Token id
305
- */
306
- public function getNextToken(&$value = null, &$startAttributes = null, &$endAttributes = null) : int {
307
- $startAttributes = [];
308
- $endAttributes = [];
309
-
310
- while (1) {
311
- if (isset($this->tokens[++$this->pos])) {
312
- $token = $this->tokens[$this->pos];
313
- } else {
314
- // EOF token with ID 0
315
- $token = "\0";
316
- }
317
-
318
- if ($this->attributeStartLineUsed) {
319
- $startAttributes['startLine'] = $this->line;
320
- }
321
- if ($this->attributeStartTokenPosUsed) {
322
- $startAttributes['startTokenPos'] = $this->pos;
323
- }
324
- if ($this->attributeStartFilePosUsed) {
325
- $startAttributes['startFilePos'] = $this->filePos;
326
- }
327
-
328
- if (\is_string($token)) {
329
- $value = $token;
330
- if (isset($token[1])) {
331
- // bug in token_get_all
332
- $this->filePos += 2;
333
- $id = ord('"');
334
- } else {
335
- $this->filePos += 1;
336
- $id = ord($token);
337
- }
338
- } elseif (!isset($this->dropTokens[$token[0]])) {
339
- $value = $token[1];
340
- $id = $this->tokenMap[$token[0]];
341
- if (\T_CLOSE_TAG === $token[0]) {
342
- $this->prevCloseTagHasNewline = false !== strpos($token[1], "\n")
343
- || false !== strpos($token[1], "\r");
344
- } elseif (\T_INLINE_HTML === $token[0]) {
345
- $startAttributes['hasLeadingNewline'] = $this->prevCloseTagHasNewline;
346
- }
347
-
348
- $this->line += substr_count($value, "\n");
349
- $this->filePos += \strlen($value);
350
- } else {
351
- $origLine = $this->line;
352
- $origFilePos = $this->filePos;
353
- $this->line += substr_count($token[1], "\n");
354
- $this->filePos += \strlen($token[1]);
355
-
356
- if (\T_COMMENT === $token[0] || \T_DOC_COMMENT === $token[0]) {
357
- if ($this->attributeCommentsUsed) {
358
- $comment = \T_DOC_COMMENT === $token[0]
359
- ? new Comment\Doc($token[1],
360
- $origLine, $origFilePos, $this->pos,
361
- $this->line, $this->filePos - 1, $this->pos)
362
- : new Comment($token[1],
363
- $origLine, $origFilePos, $this->pos,
364
- $this->line, $this->filePos - 1, $this->pos);
365
- $startAttributes['comments'][] = $comment;
366
- }
367
- }
368
- continue;
369
- }
370
-
371
- if ($this->attributeEndLineUsed) {
372
- $endAttributes['endLine'] = $this->line;
373
- }
374
- if ($this->attributeEndTokenPosUsed) {
375
- $endAttributes['endTokenPos'] = $this->pos;
376
- }
377
- if ($this->attributeEndFilePosUsed) {
378
- $endAttributes['endFilePos'] = $this->filePos - 1;
379
- }
380
-
381
- return $id;
382
- }
383
-
384
- throw new \RuntimeException('Reached end of lexer loop');
385
- }
386
-
387
- /**
388
- * Returns the token array for current code.
389
- *
390
- * The token array is in the same format as provided by the
391
- * token_get_all() function and does not discard tokens (i.e.
392
- * whitespace and comments are included). The token position
393
- * attributes are against this token array.
394
- *
395
- * @return array Array of tokens in token_get_all() format
396
- */
397
- public function getTokens() : array {
398
- return $this->tokens;
399
- }
400
-
401
- /**
402
- * Handles __halt_compiler() by returning the text after it.
403
- *
404
- * @return string Remaining text
405
- */
406
- public function handleHaltCompiler() : string {
407
- // text after T_HALT_COMPILER, still including ();
408
- $textAfter = substr($this->code, $this->filePos);
409
-
410
- // ensure that it is followed by ();
411
- // this simplifies the situation, by not allowing any comments
412
- // in between of the tokens.
413
- if (!preg_match('~^\s*\(\s*\)\s*(?:;|\?>\r?\n?)~', $textAfter, $matches)) {
414
- throw new Error('__HALT_COMPILER must be followed by "();"');
415
- }
416
-
417
- // prevent the lexer from returning any further tokens
418
- $this->pos = count($this->tokens);
419
-
420
- // return with (); removed
421
- return substr($textAfter, strlen($matches[0]));
422
- }
423
-
424
- private function defineCompatibilityTokens() {
425
- static $compatTokensDefined = false;
426
- if ($compatTokensDefined) {
427
- return;
428
- }
429
-
430
- $compatTokens = [
431
- // PHP 7.4
432
- 'T_BAD_CHARACTER',
433
- 'T_FN',
434
- 'T_COALESCE_EQUAL',
435
- // PHP 8.0
436
- 'T_NAME_QUALIFIED',
437
- 'T_NAME_FULLY_QUALIFIED',
438
- 'T_NAME_RELATIVE',
439
- 'T_MATCH',
440
- 'T_NULLSAFE_OBJECT_OPERATOR',
441
- 'T_ATTRIBUTE',
442
- // PHP 8.1
443
- 'T_ENUM',
444
- 'T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG',
445
- 'T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG',
446
- 'T_READONLY',
447
- ];
448
-
449
- // PHP-Parser might be used together with another library that also emulates some or all
450
- // of these tokens. Perform a sanity-check that all already defined tokens have been
451
- // assigned a unique ID.
452
- $usedTokenIds = [];
453
- foreach ($compatTokens as $token) {
454
- if (\defined($token)) {
455
- $tokenId = \constant($token);
456
- $clashingToken = $usedTokenIds[$tokenId] ?? null;
457
- if ($clashingToken !== null) {
458
- throw new \Error(sprintf(
459
- 'Token %s has same ID as token %s, ' .
460
- 'you may be using a library with broken token emulation',
461
- $token, $clashingToken
462
- ));
463
- }
464
- $usedTokenIds[$tokenId] = $token;
465
- }
466
- }
467
-
468
- // Now define any tokens that have not yet been emulated. Try to assign IDs from -1
469
- // downwards, but skip any IDs that may already be in use.
470
- $newTokenId = -1;
471
- foreach ($compatTokens as $token) {
472
- if (!\defined($token)) {
473
- while (isset($usedTokenIds[$newTokenId])) {
474
- $newTokenId--;
475
- }
476
- \define($token, $newTokenId);
477
- $newTokenId--;
478
- }
479
- }
480
-
481
- $compatTokensDefined = true;
482
- }
483
-
484
- /**
485
- * Creates the token map.
486
- *
487
- * The token map maps the PHP internal token identifiers
488
- * to the identifiers used by the Parser. Additionally it
489
- * maps T_OPEN_TAG_WITH_ECHO to T_ECHO and T_CLOSE_TAG to ';'.
490
- *
491
- * @return array The token map
492
- */
493
- protected function createTokenMap() : array {
494
- $tokenMap = [];
495
-
496
- // 256 is the minimum possible token number, as everything below
497
- // it is an ASCII value
498
- for ($i = 256; $i < 1000; ++$i) {
499
- if (\T_DOUBLE_COLON === $i) {
500
- // T_DOUBLE_COLON is equivalent to T_PAAMAYIM_NEKUDOTAYIM
501
- $tokenMap[$i] = Tokens::T_PAAMAYIM_NEKUDOTAYIM;
502
- } elseif(\T_OPEN_TAG_WITH_ECHO === $i) {
503
- // T_OPEN_TAG_WITH_ECHO with dropped T_OPEN_TAG results in T_ECHO
504
- $tokenMap[$i] = Tokens::T_ECHO;
505
- } elseif(\T_CLOSE_TAG === $i) {
506
- // T_CLOSE_TAG is equivalent to ';'
507
- $tokenMap[$i] = ord(';');
508
- } elseif ('UNKNOWN' !== $name = token_name($i)) {
509
- if ('T_HASHBANG' === $name) {
510
- // HHVM uses a special token for #! hashbang lines
511
- $tokenMap[$i] = Tokens::T_INLINE_HTML;
512
- } elseif (defined($name = Tokens::class . '::' . $name)) {
513
- // Other tokens can be mapped directly
514
- $tokenMap[$i] = constant($name);
515
- }
516
- }
517
- }
518
-
519
- // HHVM uses a special token for numbers that overflow to double
520
- if (defined('T_ONUMBER')) {
521
- $tokenMap[\T_ONUMBER] = Tokens::T_DNUMBER;
522
- }
523
- // HHVM also has a separate token for the __COMPILER_HALT_OFFSET__ constant
524
- if (defined('T_COMPILER_HALT_OFFSET')) {
525
- $tokenMap[\T_COMPILER_HALT_OFFSET] = Tokens::T_STRING;
526
- }
527
-
528
- // Assign tokens for which we define compatibility constants, as token_name() does not know them.
529
- $tokenMap[\T_FN] = Tokens::T_FN;
530
- $tokenMap[\T_COALESCE_EQUAL] = Tokens::T_COALESCE_EQUAL;
531
- $tokenMap[\T_NAME_QUALIFIED] = Tokens::T_NAME_QUALIFIED;
532
- $tokenMap[\T_NAME_FULLY_QUALIFIED] = Tokens::T_NAME_FULLY_QUALIFIED;
533
- $tokenMap[\T_NAME_RELATIVE] = Tokens::T_NAME_RELATIVE;
534
- $tokenMap[\T_MATCH] = Tokens::T_MATCH;
535
- $tokenMap[\T_NULLSAFE_OBJECT_OPERATOR] = Tokens::T_NULLSAFE_OBJECT_OPERATOR;
536
- $tokenMap[\T_ATTRIBUTE] = Tokens::T_ATTRIBUTE;
537
- $tokenMap[\T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG] = Tokens::T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG;
538
- $tokenMap[\T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG] = Tokens::T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG;
539
- $tokenMap[\T_ENUM] = Tokens::T_ENUM;
540
- $tokenMap[\T_READONLY] = Tokens::T_READONLY;
541
-
542
- return $tokenMap;
543
- }
544
-
545
- private function createIdentifierTokenMap(): array {
546
- // Based on semi_reserved production.
547
- return array_fill_keys([
548
- \T_STRING,
549
- \T_STATIC, \T_ABSTRACT, \T_FINAL, \T_PRIVATE, \T_PROTECTED, \T_PUBLIC, \T_READONLY,
550
- \T_INCLUDE, \T_INCLUDE_ONCE, \T_EVAL, \T_REQUIRE, \T_REQUIRE_ONCE, \T_LOGICAL_OR, \T_LOGICAL_XOR, \T_LOGICAL_AND,
551
- \T_INSTANCEOF, \T_NEW, \T_CLONE, \T_EXIT, \T_IF, \T_ELSEIF, \T_ELSE, \T_ENDIF, \T_ECHO, \T_DO, \T_WHILE,
552
- \T_ENDWHILE, \T_FOR, \T_ENDFOR, \T_FOREACH, \T_ENDFOREACH, \T_DECLARE, \T_ENDDECLARE, \T_AS, \T_TRY, \T_CATCH,
553
- \T_FINALLY, \T_THROW, \T_USE, \T_INSTEADOF, \T_GLOBAL, \T_VAR, \T_UNSET, \T_ISSET, \T_EMPTY, \T_CONTINUE, \T_GOTO,
554
- \T_FUNCTION, \T_CONST, \T_RETURN, \T_PRINT, \T_YIELD, \T_LIST, \T_SWITCH, \T_ENDSWITCH, \T_CASE, \T_DEFAULT,
555
- \T_BREAK, \T_ARRAY, \T_CALLABLE, \T_EXTENDS, \T_IMPLEMENTS, \T_NAMESPACE, \T_TRAIT, \T_INTERFACE, \T_CLASS,
556
- \T_CLASS_C, \T_TRAIT_C, \T_FUNC_C, \T_METHOD_C, \T_LINE, \T_FILE, \T_DIR, \T_NS_C, \T_HALT_COMPILER, \T_FN,
557
- \T_MATCH,
558
- ], true);
559
- }
560
- }