javonet-nodejs-sdk 2.5.14 → 2.5.16

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 (2014) hide show
  1. package/dist/core/delegatesCache/DelegatesCache.cjs +59 -0
  2. package/dist/core/handler/AbstractHandler.cjs +62 -0
  3. package/dist/core/handler/ArrayGetItemHandler.cjs +61 -0
  4. package/dist/core/handler/ArrayGetRankHandler.cjs +52 -0
  5. package/dist/core/handler/ArrayGetSizeHandler.cjs +52 -0
  6. package/dist/core/handler/ArrayHandler.cjs +41 -0
  7. package/dist/core/handler/ArraySetItemHandler.cjs +62 -0
  8. package/dist/core/handler/CastingHandler.cjs +34 -0
  9. package/dist/core/handler/ConvertTypeHandler.cjs +53 -0
  10. package/dist/core/handler/CreateClassInstanceHandler.cjs +62 -0
  11. package/dist/core/handler/DestructReferenceHandler.cjs +42 -0
  12. package/dist/core/handler/EnableNamespaceHandler.cjs +56 -0
  13. package/dist/core/handler/EnableTypeHandler.cjs +58 -0
  14. package/dist/core/handler/GetGlobalStaticFieldHandler.cjs +62 -0
  15. package/dist/core/handler/GetInstanceFieldHandler.cjs +61 -0
  16. package/dist/core/handler/GetInstanceMethodAsDelegateHandler.cjs +83 -0
  17. package/dist/core/handler/GetStaticFieldHandler.cjs +61 -0
  18. package/dist/core/handler/GetStaticMethodAsDelegateHandler.cjs +85 -0
  19. package/dist/core/handler/GetTypeHandler.cjs +87 -0
  20. package/dist/core/handler/Handler.cjs +136 -0
  21. package/dist/core/handler/InvokeDelegateHandler.cjs +53 -0
  22. package/dist/core/handler/InvokeGlobalFunctionHandler.cjs +62 -0
  23. package/dist/core/handler/InvokeInstanceMethodHandler.cjs +64 -0
  24. package/dist/core/handler/InvokeStaticMethodHandler.cjs +64 -0
  25. package/dist/core/handler/LoadLibraryHandler.cjs +71 -0
  26. package/dist/core/handler/PassDelegateHandler.cjs +164 -0
  27. package/dist/core/handler/ResolveReferenceHandler.cjs +41 -0
  28. package/dist/core/handler/SetGlobalStaticFieldHandler.cjs +63 -0
  29. package/dist/core/handler/SetInstanceFieldHandler.cjs +61 -0
  30. package/dist/core/handler/SetStaticFieldHandler.cjs +59 -0
  31. package/dist/core/handler/ValueHandler.cjs +37 -0
  32. package/dist/core/interpreter/Interpreter.cjs +163 -0
  33. package/dist/core/namespaceCache/NamespaceCache.cjs +61 -0
  34. package/dist/core/protocol/CommandDeserializer.cjs +188 -0
  35. package/dist/core/protocol/CommandSerializer.cjs +64 -0
  36. package/dist/core/protocol/TypeDeserializer.cjs +91 -0
  37. package/dist/core/protocol/TypeSerializer.cjs +153 -0
  38. package/dist/core/receiver/Receiver.cjs +65 -0
  39. package/dist/core/receiver/ReceiverNative.cjs +37 -0
  40. package/dist/core/referenceCache/ReferencesCache.cjs +65 -0
  41. package/dist/core/transmitter/Transmitter.cjs +44 -0
  42. package/dist/core/transmitter/TransmitterWebsocket.cjs +55 -0
  43. package/dist/core/transmitter/TransmitterWebsocketBrowser.cjs +59 -0
  44. package/dist/core/transmitter/TransmitterWrapper.cjs +75 -0
  45. package/dist/core/typeCache/TypeCache.cjs +61 -0
  46. package/dist/core/webSocketClient/WebSocketClient.cjs +150 -0
  47. package/dist/core/webSocketClient/WebSocketClientBrowser.cjs +153 -0
  48. package/dist/sdk/ConfigRuntimeFactory.cjs +209 -0
  49. package/dist/sdk/InvocationContext.cjs +495 -0
  50. package/dist/sdk/Javonet.cjs +150 -0
  51. package/dist/sdk/RuntimeContext.cjs +304 -0
  52. package/dist/sdk/RuntimeFactory.cjs +98 -0
  53. package/dist/sdk/tools/browser/ConfigSourceResolver.cjs +153 -0
  54. package/dist/sdk/tools/browser/SdkExceptionHelper.cjs +37 -0
  55. package/dist/sdk/tools/nodejs/JsonFileResolver.cjs +120 -0
  56. package/dist/sdk/tools/nodejs/SdkExceptionHelper.cjs +100 -0
  57. package/dist/types/core/delegatesCache/DelegatesCache.d.ts +21 -0
  58. package/dist/types/core/handler/AbstractHandler.d.ts +7 -0
  59. package/dist/types/core/handler/ArrayGetItemHandler.d.ts +5 -0
  60. package/dist/types/core/handler/ArrayGetRankHandler.d.ts +5 -0
  61. package/dist/types/core/handler/ArrayGetSizeHandler.d.ts +5 -0
  62. package/dist/types/core/handler/ArrayHandler.d.ts +4 -0
  63. package/dist/types/core/handler/ArraySetItemHandler.d.ts +5 -0
  64. package/dist/types/core/handler/CastingHandler.d.ts +3 -0
  65. package/dist/types/core/handler/ConvertTypeHandler.d.ts +22 -0
  66. package/dist/types/core/handler/CreateClassInstanceHandler.d.ts +5 -0
  67. package/dist/types/core/handler/DestructReferenceHandler.d.ts +4 -0
  68. package/dist/types/core/handler/EnableNamespaceHandler.d.ts +5 -0
  69. package/dist/types/core/handler/EnableTypeHandler.d.ts +5 -0
  70. package/dist/types/core/handler/GetGlobalStaticFieldHandler.d.ts +5 -0
  71. package/dist/types/core/handler/GetInstanceFieldHandler.d.ts +5 -0
  72. package/dist/types/core/handler/GetInstanceMethodAsDelegateHandler.d.ts +38 -0
  73. package/dist/types/core/handler/GetStaticFieldHandler.d.ts +5 -0
  74. package/dist/types/core/handler/GetStaticMethodAsDelegateHandler.d.ts +36 -0
  75. package/dist/types/core/handler/GetTypeHandler.d.ts +16 -0
  76. package/dist/types/core/handler/Handler.d.ts +27 -0
  77. package/dist/types/core/handler/InvokeDelegateHandler.d.ts +15 -0
  78. package/dist/types/core/handler/InvokeGlobalFunctionHandler.d.ts +5 -0
  79. package/dist/types/core/handler/InvokeInstanceMethodHandler.d.ts +5 -0
  80. package/dist/types/core/handler/InvokeStaticMethodHandler.d.ts +5 -0
  81. package/dist/types/core/handler/LoadLibraryHandler.d.ts +7 -0
  82. package/dist/types/core/handler/PassDelegateHandler.d.ts +104 -0
  83. package/dist/types/core/handler/ResolveReferenceHandler.d.ts +12 -0
  84. package/dist/types/core/handler/SetGlobalStaticFieldHandler.d.ts +4 -0
  85. package/dist/types/core/handler/SetInstanceFieldHandler.d.ts +5 -0
  86. package/dist/types/core/handler/SetStaticFieldHandler.d.ts +5 -0
  87. package/dist/types/core/handler/ValueHandler.d.ts +4 -0
  88. package/dist/types/core/interpreter/Interpreter.d.ts +27 -0
  89. package/dist/types/core/namespaceCache/NamespaceCache.d.ts +9 -0
  90. package/dist/types/core/protocol/CommandDeserializer.d.ts +25 -0
  91. package/dist/types/core/protocol/CommandSerializer.d.ts +4 -0
  92. package/dist/types/core/protocol/TypeDeserializer.d.ts +15 -0
  93. package/dist/types/core/protocol/TypeSerializer.d.ts +17 -0
  94. package/dist/types/core/receiver/Receiver.d.ts +14 -0
  95. package/dist/types/core/receiver/ReceiverNative.d.ts +4 -0
  96. package/dist/types/core/referenceCache/ReferencesCache.d.ts +24 -0
  97. package/dist/types/core/transmitter/Transmitter.d.ts +6 -0
  98. package/dist/types/core/transmitter/TransmitterWebsocket.d.ts +21 -0
  99. package/dist/types/core/transmitter/TransmitterWebsocketBrowser.d.ts +30 -0
  100. package/dist/types/core/transmitter/TransmitterWrapper.d.ts +11 -0
  101. package/dist/types/core/typeCache/TypeCache.d.ts +9 -0
  102. package/dist/types/core/webSocketClient/WebSocketClient.d.ts +50 -0
  103. package/dist/types/core/webSocketClient/WebSocketClientBrowser.d.ts +63 -0
  104. package/dist/types/sdk/ConfigRuntimeFactory.d.ts +73 -0
  105. package/dist/types/sdk/InvocationContext.d.ts +207 -0
  106. package/dist/types/sdk/Javonet.d.ts +63 -0
  107. package/dist/types/sdk/RuntimeContext.d.ts +103 -0
  108. package/dist/types/sdk/RuntimeFactory.d.ts +58 -0
  109. package/dist/types/sdk/tools/browser/ConfigSourceResolver.d.ts +46 -0
  110. package/dist/types/sdk/tools/browser/SdkExceptionHelper.d.ts +7 -0
  111. package/dist/types/sdk/tools/nodejs/JsonFileResolver.d.ts +13 -0
  112. package/dist/types/sdk/tools/nodejs/SdkExceptionHelper.d.ts +6 -0
  113. package/dist/types/utils/Command.d.ts +42 -0
  114. package/dist/types/utils/CommandType.d.ts +44 -0
  115. package/dist/types/utils/ConnectionType.d.ts +5 -0
  116. package/dist/types/utils/CustomError.d.ts +3 -0
  117. package/dist/types/utils/ExceptionType.d.ts +10 -0
  118. package/dist/types/utils/Runtime.d.ts +24 -0
  119. package/dist/types/utils/RuntimeLogger.d.ts +5 -0
  120. package/dist/types/utils/RuntimeLoggerBrowser.d.ts +15 -0
  121. package/dist/types/utils/RuntimeName.d.ts +13 -0
  122. package/dist/types/utils/RuntimeNameHandler.d.ts +7 -0
  123. package/dist/types/utils/StringEncodingMode.d.ts +6 -0
  124. package/dist/types/utils/Type.d.ts +14 -0
  125. package/dist/types/utils/connectionData/IConnectionData.d.ts +5 -0
  126. package/dist/types/utils/connectionData/InMemoryConnectionData.d.ts +16 -0
  127. package/dist/types/utils/connectionData/WsConnectionData.d.ts +31 -0
  128. package/dist/types/utils/exception/ExceptionSerializer.d.ts +6 -0
  129. package/dist/types/utils/exception/ExceptionThrower.d.ts +4 -0
  130. package/dist/types/utils/guid/generateGuid.d.ts +1 -0
  131. package/dist/types/utils/nodejs/TypesConverter.d.ts +48 -0
  132. package/dist/types/utils/nodejs/connectionData/TcpConnectionData.d.ts +25 -0
  133. package/dist/types/utils/nodejs/uuid/REGEX.d.ts +1 -0
  134. package/dist/types/utils/nodejs/uuid/rng.d.ts +1 -0
  135. package/dist/types/utils/nodejs/uuid/stringify.d.ts +1 -0
  136. package/dist/types/utils/nodejs/uuid/v4.d.ts +1 -0
  137. package/dist/types/utils/nodejs/uuid/validate.d.ts +1 -0
  138. package/dist/utils/Command.cjs +87 -0
  139. package/dist/utils/CommandType.cjs +74 -0
  140. package/dist/utils/ConnectionType.cjs +35 -0
  141. package/dist/utils/CustomError.cjs +33 -0
  142. package/dist/utils/ExceptionType.cjs +40 -0
  143. package/dist/utils/Runtime.cjs +103 -0
  144. package/dist/utils/RuntimeLogger.cjs +63 -0
  145. package/dist/utils/RuntimeLoggerBrowser.cjs +58 -0
  146. package/dist/utils/RuntimeName.cjs +43 -0
  147. package/dist/utils/RuntimeNameHandler.cjs +62 -0
  148. package/dist/utils/StringEncodingMode.cjs +36 -0
  149. package/dist/utils/Type.cjs +44 -0
  150. package/dist/utils/connectionData/IConnectionData.cjs +38 -0
  151. package/dist/utils/connectionData/InMemoryConnectionData.cjs +52 -0
  152. package/dist/utils/connectionData/WsConnectionData.cjs +61 -0
  153. package/dist/utils/exception/ExceptionSerializer.cjs +82 -0
  154. package/dist/utils/exception/ExceptionThrower.cjs +111 -0
  155. package/dist/utils/guid/generateGuid.cjs +34 -0
  156. package/dist/utils/nodejs/TypesConverter.cjs +102 -0
  157. package/dist/utils/nodejs/connectionData/TcpConnectionData.cjs +111 -0
  158. package/dist/utils/nodejs/uuid/REGEX.cjs +28 -0
  159. package/dist/utils/nodejs/uuid/rng.cjs +47 -0
  160. package/dist/utils/nodejs/uuid/stringify.cjs +39 -0
  161. package/dist/utils/nodejs/uuid/v4.cjs +43 -0
  162. package/dist/utils/nodejs/uuid/validate.cjs +31 -0
  163. package/lib/core/delegatesCache/DelegatesCache.js +37 -0
  164. package/lib/core/handler/AbstractHandler.js +2 -2
  165. package/lib/core/handler/ArrayGetItemHandler.js +2 -2
  166. package/lib/core/handler/ArrayGetRankHandler.js +2 -2
  167. package/lib/core/handler/ArrayGetSizeHandler.js +2 -2
  168. package/lib/core/handler/ArrayHandler.js +2 -2
  169. package/lib/core/handler/ArraySetItemHandler.js +2 -2
  170. package/lib/core/handler/CastingHandler.js +2 -2
  171. package/lib/core/handler/ConvertTypeHandler.js +3 -3
  172. package/lib/core/handler/CreateClassInstanceHandler.js +4 -2
  173. package/lib/core/handler/DestructReferenceHandler.js +3 -3
  174. package/lib/core/handler/EnableNamespaceHandler.js +3 -3
  175. package/lib/core/handler/EnableTypeHandler.js +3 -3
  176. package/lib/core/handler/GetGlobalStaticFieldHandler.js +2 -2
  177. package/lib/core/handler/GetInstanceFieldHandler.js +2 -2
  178. package/lib/core/handler/GetInstanceMethodAsDelegateHandler.js +2 -2
  179. package/lib/core/handler/GetStaticFieldHandler.js +3 -2
  180. package/lib/core/handler/GetStaticMethodAsDelegateHandler.js +2 -3
  181. package/lib/core/handler/GetTypeHandler.js +16 -7
  182. package/lib/core/handler/Handler.js +91 -60
  183. package/lib/core/handler/InvokeDelegateHandler.js +4 -4
  184. package/lib/core/handler/InvokeGlobalFunctionHandler.js +3 -5
  185. package/lib/core/handler/InvokeInstanceMethodHandler.js +2 -2
  186. package/lib/core/handler/InvokeStaticMethodHandler.js +2 -2
  187. package/lib/core/handler/LoadLibraryHandler.js +7 -4
  188. package/lib/core/handler/PassDelegateHandler.js +38 -24
  189. package/lib/core/handler/ResolveReferenceHandler.js +13 -3
  190. package/lib/core/handler/SetGlobalStaticFieldHandler.js +2 -2
  191. package/lib/core/handler/SetInstanceFieldHandler.js +2 -2
  192. package/lib/core/handler/SetStaticFieldHandler.js +2 -2
  193. package/lib/core/handler/ValueHandler.js +2 -2
  194. package/lib/core/interpreter/Interpreter.js +164 -0
  195. package/lib/core/namespaceCache/NamespaceCache.js +1 -1
  196. package/lib/core/protocol/CommandDeserializer.js +180 -0
  197. package/lib/core/protocol/CommandSerializer.js +48 -0
  198. package/lib/core/protocol/TypeDeserializer.js +81 -0
  199. package/lib/core/protocol/TypeSerializer.js +143 -0
  200. package/lib/core/receiver/Receiver.js +17 -8
  201. package/lib/core/receiver/ReceiverNative.js +2 -2
  202. package/lib/core/referenceCache/ReferencesCache.js +27 -4
  203. package/lib/core/transmitter/Transmitter.js +6 -8
  204. package/lib/core/transmitter/TransmitterWebsocket.js +2 -6
  205. package/lib/core/transmitter/TransmitterWebsocketBrowser.js +39 -0
  206. package/lib/core/transmitter/TransmitterWrapper.js +26 -13
  207. package/lib/core/typeCache/TypeCache.js +1 -1
  208. package/lib/core/webSocketClient/WebSocketClient.js +56 -24
  209. package/lib/core/webSocketClient/WebSocketClientBrowser.js +174 -0
  210. package/lib/declarations.d.ts +35 -0
  211. package/lib/sdk/ConfigRuntimeFactory.js +118 -58
  212. package/lib/sdk/InvocationContext.js +487 -0
  213. package/lib/sdk/Javonet.js +64 -30
  214. package/lib/sdk/RuntimeContext.js +289 -0
  215. package/lib/sdk/RuntimeFactory.js +12 -5
  216. package/lib/sdk/tools/browser/ConfigSourceResolver.js +146 -0
  217. package/lib/sdk/tools/browser/SdkExceptionHelper.js +20 -0
  218. package/lib/sdk/tools/nodejs/JsonFileResolver.js +106 -0
  219. package/lib/sdk/tools/nodejs/SdkExceptionHelper.js +89 -0
  220. package/lib/utils/Command.js +67 -0
  221. package/lib/utils/CommandType.js +45 -0
  222. package/lib/utils/ConnectionType.js +6 -0
  223. package/lib/utils/CustomError.js +6 -0
  224. package/lib/utils/ExceptionType.js +13 -0
  225. package/lib/utils/Runtime.js +94 -0
  226. package/lib/utils/RuntimeLogger.js +19 -9
  227. package/lib/utils/RuntimeLoggerBrowser.js +35 -0
  228. package/lib/utils/RuntimeName.js +14 -0
  229. package/lib/utils/RuntimeNameHandler.js +38 -0
  230. package/lib/utils/StringEncodingMode.js +7 -0
  231. package/lib/utils/Type.js +15 -0
  232. package/lib/utils/connectionData/IConnectionData.js +13 -0
  233. package/lib/utils/connectionData/InMemoryConnectionData.js +35 -0
  234. package/lib/utils/connectionData/WsConnectionData.js +48 -0
  235. package/lib/utils/exception/ExceptionSerializer.js +64 -0
  236. package/lib/utils/exception/ExceptionThrower.js +96 -0
  237. package/lib/utils/guid/generateGuid.js +9 -0
  238. package/lib/utils/nodejs/TypesConverter.js +91 -0
  239. package/lib/utils/nodejs/connectionData/TcpConnectionData.js +89 -0
  240. package/lib/utils/nodejs/uuid/REGEX.js +2 -0
  241. package/lib/utils/nodejs/uuid/rng.js +23 -0
  242. package/lib/utils/nodejs/uuid/stringify.js +51 -0
  243. package/lib/utils/nodejs/uuid/v4.js +26 -0
  244. package/lib/utils/nodejs/uuid/validate.js +7 -0
  245. package/package.json +59 -47
  246. package/Binaries/Clr/Javonet.Clr.Utils.dll +0 -0
  247. package/Binaries/Clr/JavonetClrRuntime.dll +0 -0
  248. package/Binaries/Jvm/JavonetJvmRuntime.jar +0 -0
  249. package/Binaries/Native/Linux/ARM64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  250. package/Binaries/Native/Linux/ARM64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  251. package/Binaries/Native/Linux/ARM64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  252. package/Binaries/Native/Linux/ARM64/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  253. package/Binaries/Native/Linux/ARM64/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  254. package/Binaries/Native/Linux/ARM64/NetVersionLatest.runtimeconfig.json +0 -10
  255. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  256. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  257. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  258. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  259. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  260. package/Binaries/Native/Linux/ARM64/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  261. package/Binaries/Native/Linux/ARM64/libJavonetActivationService.so +0 -0
  262. package/Binaries/Native/Linux/ARM64/libJavonetCppRuntimeNative.so +0 -0
  263. package/Binaries/Native/Linux/ARM64/libJavonetGoRuntimeNative.so +0 -0
  264. package/Binaries/Native/Linux/ARM64/libJavonetJvmRuntimeNative.so +0 -0
  265. package/Binaries/Native/Linux/ARM64/libJavonetNetcoreRuntimeNative.so +0 -0
  266. package/Binaries/Native/Linux/ARM64/libJavonetPythonRuntimeNative.so +0 -0
  267. package/Binaries/Native/Linux/ARM64/libJavonetRuby278RuntimeNative.so +0 -0
  268. package/Binaries/Native/Linux/ARM64/libJavonetRubyRuntimeNative.so +0 -0
  269. package/Binaries/Native/Linux/ARM64/libJavonetTcpClient.so +0 -0
  270. package/Binaries/Native/Linux/ARM64/libJavonetTcpTlsClient.so +0 -0
  271. package/Binaries/Native/Linux/ARM64/libUtils.so +0 -0
  272. package/Binaries/Native/Linux/ARM64/libnethost.so +0 -0
  273. package/Binaries/Native/Linux/ARM64/libpython3.12.so.1.0 +0 -0
  274. package/Binaries/Native/Linux/ARM64/version.txt +0 -1
  275. package/Binaries/Native/Linux/X64/NativeUtilsUnitTests.xml +0 -33
  276. package/Binaries/Native/Linux/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  277. package/Binaries/Native/Linux/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  278. package/Binaries/Native/Linux/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  279. package/Binaries/Native/Linux/X64/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  280. package/Binaries/Native/Linux/X64/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  281. package/Binaries/Native/Linux/X64/NetVersionLatest.runtimeconfig.json +0 -10
  282. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  283. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  284. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  285. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  286. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  287. package/Binaries/Native/Linux/X64/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  288. package/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
  289. package/Binaries/Native/Linux/X64/libJavonetCppRuntimeNative.so +0 -0
  290. package/Binaries/Native/Linux/X64/libJavonetGoRuntimeNative.so +0 -0
  291. package/Binaries/Native/Linux/X64/libJavonetJvmRuntimeNative.so +0 -0
  292. package/Binaries/Native/Linux/X64/libJavonetNetcoreRuntimeNative.so +0 -0
  293. package/Binaries/Native/Linux/X64/libJavonetNodejs1816RuntimeNative.so +0 -0
  294. package/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
  295. package/Binaries/Native/Linux/X64/libJavonetPerlRuntimeNative.so +0 -0
  296. package/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
  297. package/Binaries/Native/Linux/X64/libJavonetRuby278RuntimeNative.so +0 -0
  298. package/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
  299. package/Binaries/Native/Linux/X64/libJavonetTcpClient.so +0 -0
  300. package/Binaries/Native/Linux/X64/libJavonetTcpTlsClient.so +0 -0
  301. package/Binaries/Native/Linux/X64/libUtils.so +0 -0
  302. package/Binaries/Native/Linux/X64/libnethost.so +0 -0
  303. package/Binaries/Native/Linux/X64/libnode.so.108 +0 -0
  304. package/Binaries/Native/Linux/X64/libperl.so.5.30.0 +0 -0
  305. package/Binaries/Native/Linux/X64/libpython3.11.so.1.0 +0 -0
  306. package/Binaries/Native/Linux/X64/libruby.so.2.7.8 +0 -0
  307. package/Binaries/Native/Linux/X64/openssl3/libJavonetActivationService.so +0 -0
  308. package/Binaries/Native/Linux/X64/openssl3/libJavonetTcpTlsClient.so +0 -0
  309. package/Binaries/Native/Linux/X64/openssl3/libUtils.so +0 -0
  310. package/Binaries/Native/Linux/X64/version.txt +0 -1
  311. package/Binaries/Native/MacOs/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  312. package/Binaries/Native/MacOs/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  313. package/Binaries/Native/MacOs/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  314. package/Binaries/Native/MacOs/X64/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  315. package/Binaries/Native/MacOs/X64/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  316. package/Binaries/Native/MacOs/X64/NetVersionLatest.runtimeconfig.json +0 -10
  317. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  318. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  319. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  320. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  321. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  322. package/Binaries/Native/MacOs/X64/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  323. package/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
  324. package/Binaries/Native/MacOs/X64/libJavonetCppRuntimeNative.dylib +0 -0
  325. package/Binaries/Native/MacOs/X64/libJavonetGoRuntimeNative.dylib +0 -0
  326. package/Binaries/Native/MacOs/X64/libJavonetJvmRuntimeNative.dylib +0 -0
  327. package/Binaries/Native/MacOs/X64/libJavonetNetcoreRuntimeNative.dylib +0 -0
  328. package/Binaries/Native/MacOs/X64/libJavonetNodejs1816RuntimeNative.dylib +0 -0
  329. package/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
  330. package/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
  331. package/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
  332. package/Binaries/Native/MacOs/X64/libJavonetRuby278RuntimeNative.dylib +0 -0
  333. package/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
  334. package/Binaries/Native/MacOs/X64/libJavonetTcpClient.dylib +0 -0
  335. package/Binaries/Native/MacOs/X64/libJavonetTcpTlsClient.dylib +0 -0
  336. package/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
  337. package/Binaries/Native/MacOs/X64/libnethost.dylib +0 -0
  338. package/Binaries/Native/MacOs/X64/libnode.108.dylib +0 -0
  339. package/Binaries/Native/MacOs/X64/libpython3.11.dylib +0 -0
  340. package/Binaries/Native/MacOs/X64/libruby.2.7.dylib +0 -0
  341. package/Binaries/Native/MacOs/X64/version.txt +0 -1
  342. package/Binaries/Native/Windows/ARM64/JavonetActivationService.dll +0 -0
  343. package/Binaries/Native/Windows/ARM64/JavonetCppRuntimeNative.dll +0 -0
  344. package/Binaries/Native/Windows/ARM64/JavonetGoRuntimeNative.dll +0 -0
  345. package/Binaries/Native/Windows/ARM64/JavonetJvmRuntimeNative.dll +0 -0
  346. package/Binaries/Native/Windows/ARM64/JavonetNetcoreRuntimeNative.dll +0 -0
  347. package/Binaries/Native/Windows/ARM64/JavonetPythonRuntimeNative.dll +0 -0
  348. package/Binaries/Native/Windows/ARM64/JavonetRuby278RuntimeNative.dll +0 -0
  349. package/Binaries/Native/Windows/ARM64/JavonetRubyRuntimeNative.dll +0 -0
  350. package/Binaries/Native/Windows/ARM64/JavonetTcpClient.dll +0 -0
  351. package/Binaries/Native/Windows/ARM64/JavonetTcpTlsClient.dll +0 -0
  352. package/Binaries/Native/Windows/ARM64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  353. package/Binaries/Native/Windows/ARM64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  354. package/Binaries/Native/Windows/ARM64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  355. package/Binaries/Native/Windows/ARM64/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  356. package/Binaries/Native/Windows/ARM64/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  357. package/Binaries/Native/Windows/ARM64/NetVersionLatest.runtimeconfig.json +0 -10
  358. package/Binaries/Native/Windows/ARM64/Utils.dll +0 -0
  359. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  360. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  361. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  362. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  363. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  364. package/Binaries/Native/Windows/ARM64/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  365. package/Binaries/Native/Windows/ARM64/libcrypto-3-arm64.dll +0 -0
  366. package/Binaries/Native/Windows/ARM64/libssl-3-arm64.dll +0 -0
  367. package/Binaries/Native/Windows/ARM64/libxml2.dll +0 -0
  368. package/Binaries/Native/Windows/ARM64/libxmlsec-openssl.dll +0 -0
  369. package/Binaries/Native/Windows/ARM64/libxmlsec.dll +0 -0
  370. package/Binaries/Native/Windows/ARM64/libxslt.dll +0 -0
  371. package/Binaries/Native/Windows/ARM64/nethost.dll +0 -0
  372. package/Binaries/Native/Windows/ARM64/python312.dll +0 -0
  373. package/Binaries/Native/Windows/ARM64/version.txt +0 -0
  374. package/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
  375. package/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
  376. package/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
  377. package/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
  378. package/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
  379. package/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
  380. package/Binaries/Native/Windows/X64/JavonetNodejs1816RuntimeNative.dll +0 -0
  381. package/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
  382. package/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
  383. package/Binaries/Native/Windows/X64/JavonetPerlRuntimeNativeAuxiliary.dll +0 -0
  384. package/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
  385. package/Binaries/Native/Windows/X64/JavonetRuby278RuntimeNative.dll +0 -0
  386. package/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
  387. package/Binaries/Native/Windows/X64/JavonetRubyRuntimeNativeAuxiliary.dll +0 -0
  388. package/Binaries/Native/Windows/X64/JavonetTcpClient.dll +0 -0
  389. package/Binaries/Native/Windows/X64/JavonetTcpTlsClient.dll +0 -0
  390. package/Binaries/Native/Windows/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  391. package/Binaries/Native/Windows/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  392. package/Binaries/Native/Windows/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  393. package/Binaries/Native/Windows/X64/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  394. package/Binaries/Native/Windows/X64/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  395. package/Binaries/Native/Windows/X64/NetVersionLatest.runtimeconfig.json +0 -10
  396. package/Binaries/Native/Windows/X64/Utils.dll +0 -0
  397. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  398. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  399. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  400. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  401. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  402. package/Binaries/Native/Windows/X64/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  403. package/Binaries/Native/Windows/X64/libcrypto-3-x64.dll +0 -0
  404. package/Binaries/Native/Windows/X64/libnode.dll +0 -0
  405. package/Binaries/Native/Windows/X64/libssl-3-x64.dll +0 -0
  406. package/Binaries/Native/Windows/X64/libxml2.dll +0 -0
  407. package/Binaries/Native/Windows/X64/libxmlsec-openssl.dll +0 -0
  408. package/Binaries/Native/Windows/X64/libxmlsec.dll +0 -0
  409. package/Binaries/Native/Windows/X64/libxslt.dll +0 -0
  410. package/Binaries/Native/Windows/X64/nethost.dll +0 -0
  411. package/Binaries/Native/Windows/X64/python312.dll +0 -0
  412. package/Binaries/Native/Windows/X64/version.txt +0 -1
  413. package/Binaries/Native/Windows/X64/x64-msvcrt-ruby270.dll +0 -0
  414. package/Binaries/Native/Windows/X86/JavonetActivationService.dll +0 -0
  415. package/Binaries/Native/Windows/X86/JavonetClrRuntimeNative.dll +0 -0
  416. package/Binaries/Native/Windows/X86/JavonetCppRuntimeNative.dll +0 -0
  417. package/Binaries/Native/Windows/X86/JavonetGoRuntimeNative.dll +0 -0
  418. package/Binaries/Native/Windows/X86/JavonetJvmRuntimeNative.dll +0 -0
  419. package/Binaries/Native/Windows/X86/JavonetNetcoreRuntimeNative.dll +0 -0
  420. package/Binaries/Native/Windows/X86/JavonetPythonRuntimeNative.dll +0 -0
  421. package/Binaries/Native/Windows/X86/JavonetTcpClient.dll +0 -0
  422. package/Binaries/Native/Windows/X86/JavonetTcpTlsClient.dll +0 -0
  423. package/Binaries/Native/Windows/X86/NetVersion31LatestPatch.runtimeconfig.json +0 -10
  424. package/Binaries/Native/Windows/X86/NetVersion60LatestPatch.runtimeconfig.json +0 -10
  425. package/Binaries/Native/Windows/X86/NetVersion70LatestPatch.runtimeconfig.json +0 -10
  426. package/Binaries/Native/Windows/X86/NetVersion80LatestPatch.runtimeconfig.json +0 -10
  427. package/Binaries/Native/Windows/X86/NetVersion90LatestPatch.runtimeconfig.json +0 -10
  428. package/Binaries/Native/Windows/X86/NetVersionLatest.runtimeconfig.json +0 -10
  429. package/Binaries/Native/Windows/X86/Utils.dll +0 -0
  430. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Linux/jni.h +0 -1960
  431. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Linux/jni_md.h +0 -51
  432. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/MacOs/jni.h +0 -1960
  433. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/MacOs/jni_md.h +0 -51
  434. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Windows/jni.h +0 -1960
  435. package/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Windows/jni_md.h +0 -37
  436. package/Binaries/Native/Windows/X86/libcrypto-3.dll +0 -0
  437. package/Binaries/Native/Windows/X86/libssl-3.dll +0 -0
  438. package/Binaries/Native/Windows/X86/libxml2.dll +0 -0
  439. package/Binaries/Native/Windows/X86/libxmlsec-openssl.dll +0 -0
  440. package/Binaries/Native/Windows/X86/libxmlsec.dll +0 -0
  441. package/Binaries/Native/Windows/X86/libxslt.dll +0 -0
  442. package/Binaries/Native/Windows/X86/nethost.dll +0 -0
  443. package/Binaries/Native/Windows/X86/python312.dll +0 -0
  444. package/Binaries/Native/Windows/X86/version.txt +0 -1
  445. package/Binaries/Netcore/Javonet.Netcore.Core.dll +0 -0
  446. package/Binaries/Netcore/Javonet.Netcore.Utils.dll +0 -0
  447. package/Binaries/Nodejs/index.js +0 -66
  448. package/Binaries/Nodejs/lib/core/delegatesCache/DelegatesCache.js +0 -35
  449. package/Binaries/Nodejs/lib/core/handler/AbstractHandler.js +0 -41
  450. package/Binaries/Nodejs/lib/core/handler/ArrayGetItemHandler.js +0 -38
  451. package/Binaries/Nodejs/lib/core/handler/ArrayGetRankHandler.js +0 -28
  452. package/Binaries/Nodejs/lib/core/handler/ArrayGetSizeHandler.js +0 -29
  453. package/Binaries/Nodejs/lib/core/handler/ArrayHandler.js +0 -18
  454. package/Binaries/Nodejs/lib/core/handler/ArraySetItemHandler.js +0 -43
  455. package/Binaries/Nodejs/lib/core/handler/CastingHandler.js +0 -10
  456. package/Binaries/Nodejs/lib/core/handler/ConvertTypeHandler.js +0 -38
  457. package/Binaries/Nodejs/lib/core/handler/CreateClassInstanceHandler.js +0 -36
  458. package/Binaries/Nodejs/lib/core/handler/DestructReferenceHandler.js +0 -19
  459. package/Binaries/Nodejs/lib/core/handler/EnableNamespaceHandler.js +0 -34
  460. package/Binaries/Nodejs/lib/core/handler/EnableTypeHandler.js +0 -35
  461. package/Binaries/Nodejs/lib/core/handler/GetGlobalStaticFieldHandler.js +0 -37
  462. package/Binaries/Nodejs/lib/core/handler/GetInstanceFieldHandler.js +0 -35
  463. package/Binaries/Nodejs/lib/core/handler/GetInstanceMethodAsDelegateHandler.js +0 -73
  464. package/Binaries/Nodejs/lib/core/handler/GetStaticFieldHandler.js +0 -36
  465. package/Binaries/Nodejs/lib/core/handler/GetStaticMethodAsDelegateHandler.js +0 -74
  466. package/Binaries/Nodejs/lib/core/handler/GetTypeHandler.js +0 -63
  467. package/Binaries/Nodejs/lib/core/handler/Handler.js +0 -98
  468. package/Binaries/Nodejs/lib/core/handler/InvokeDelegateHandler.js +0 -36
  469. package/Binaries/Nodejs/lib/core/handler/InvokeGlobalFunctionHandler.js +0 -39
  470. package/Binaries/Nodejs/lib/core/handler/InvokeInstanceMethodHandler.js +0 -38
  471. package/Binaries/Nodejs/lib/core/handler/InvokeStaticMethodHandler.js +0 -38
  472. package/Binaries/Nodejs/lib/core/handler/LoadLibraryHandler.js +0 -48
  473. package/Binaries/Nodejs/lib/core/handler/PassDelegateHandler.js +0 -157
  474. package/Binaries/Nodejs/lib/core/handler/ResolveReferenceHandler.js +0 -13
  475. package/Binaries/Nodejs/lib/core/handler/SetGlobalStaticFieldHandler.js +0 -38
  476. package/Binaries/Nodejs/lib/core/handler/SetInstanceFieldHandler.js +0 -35
  477. package/Binaries/Nodejs/lib/core/handler/SetStaticFieldHandler.js +0 -33
  478. package/Binaries/Nodejs/lib/core/handler/ValueHandler.js +0 -13
  479. package/Binaries/Nodejs/lib/core/interpreter/Interpreter.js +0 -142
  480. package/Binaries/Nodejs/lib/core/namespaceCache/NamespaceCache.js +0 -39
  481. package/Binaries/Nodejs/lib/core/protocol/CommandDeserializer.js +0 -181
  482. package/Binaries/Nodejs/lib/core/protocol/CommandSerializer.js +0 -50
  483. package/Binaries/Nodejs/lib/core/protocol/TypeDeserializer.js +0 -83
  484. package/Binaries/Nodejs/lib/core/protocol/TypeSerializer.js +0 -143
  485. package/Binaries/Nodejs/lib/core/receiver/Receiver.js +0 -32
  486. package/Binaries/Nodejs/lib/core/receiver/ReceiverNative.js +0 -13
  487. package/Binaries/Nodejs/lib/core/referenceCache/ReferencesCache.js +0 -30
  488. package/Binaries/Nodejs/lib/core/transmitter/Transmitter.js +0 -21
  489. package/Binaries/Nodejs/lib/core/transmitter/TransmitterWebsocket.js +0 -33
  490. package/Binaries/Nodejs/lib/core/transmitter/TransmitterWrapper.js +0 -47
  491. package/Binaries/Nodejs/lib/core/typeCache/TypeCache.js +0 -39
  492. package/Binaries/Nodejs/lib/core/webSocketClient/WebSocketClient.js +0 -136
  493. package/Binaries/Nodejs/lib/declarations.d.ts +0 -64
  494. package/Binaries/Nodejs/lib/sdk/ConfigRuntimeFactory.js +0 -145
  495. package/Binaries/Nodejs/lib/sdk/InvocationContext.js +0 -485
  496. package/Binaries/Nodejs/lib/sdk/Javonet.js +0 -105
  497. package/Binaries/Nodejs/lib/sdk/RuntimeContext.js +0 -300
  498. package/Binaries/Nodejs/lib/sdk/RuntimeFactory.js +0 -78
  499. package/Binaries/Nodejs/lib/sdk/tools/JsonFileResolver.js +0 -101
  500. package/Binaries/Nodejs/lib/sdk/tools/SdkExceptionHelper.js +0 -79
  501. package/Binaries/Nodejs/lib/utils/Command.js +0 -69
  502. package/Binaries/Nodejs/lib/utils/CommandType.js +0 -47
  503. package/Binaries/Nodejs/lib/utils/ConnectionType.js +0 -8
  504. package/Binaries/Nodejs/lib/utils/CustomError.js +0 -8
  505. package/Binaries/Nodejs/lib/utils/ExceptionType.js +0 -13
  506. package/Binaries/Nodejs/lib/utils/RuntimeLogger.js +0 -30
  507. package/Binaries/Nodejs/lib/utils/RuntimeName.js +0 -14
  508. package/Binaries/Nodejs/lib/utils/RuntimeNameHandler.js +0 -34
  509. package/Binaries/Nodejs/lib/utils/StringEncodingMode.js +0 -9
  510. package/Binaries/Nodejs/lib/utils/Type.js +0 -17
  511. package/Binaries/Nodejs/lib/utils/TypesConverter.js +0 -91
  512. package/Binaries/Nodejs/lib/utils/connectionData/IConnectionData.js +0 -15
  513. package/Binaries/Nodejs/lib/utils/connectionData/InMemoryConnectionData.js +0 -35
  514. package/Binaries/Nodejs/lib/utils/connectionData/TcpConnectionData.js +0 -77
  515. package/Binaries/Nodejs/lib/utils/connectionData/WsConnectionData.js +0 -50
  516. package/Binaries/Nodejs/lib/utils/exception/ExceptionSerializer.js +0 -64
  517. package/Binaries/Nodejs/lib/utils/exception/ExceptionThrower.js +0 -95
  518. package/Binaries/Nodejs/lib/utils/guid/generateGuid.js +0 -9
  519. package/Binaries/Nodejs/lib/utils/uuid/REGEX.js +0 -2
  520. package/Binaries/Nodejs/lib/utils/uuid/rng.js +0 -12
  521. package/Binaries/Nodejs/lib/utils/uuid/stringify.js +0 -51
  522. package/Binaries/Nodejs/lib/utils/uuid/v4.js +0 -27
  523. package/Binaries/Nodejs/lib/utils/uuid/validate.js +0 -6
  524. package/Binaries/Perl/Linux/X64/deps/bin/config_data +0 -249
  525. package/Binaries/Perl/Linux/X64/deps/bin/moose-outdated +0 -22
  526. package/Binaries/Perl/Linux/X64/deps/bin/package-stash-conflicts +0 -22
  527. package/Binaries/Perl/Linux/X64/deps/bin/yamlpp-events +0 -62
  528. package/Binaries/Perl/Linux/X64/deps/bin/yamlpp-highlight +0 -54
  529. package/Binaries/Perl/Linux/X64/deps/bin/yamlpp-load +0 -155
  530. package/Binaries/Perl/Linux/X64/deps/bin/yamlpp-load-dump +0 -314
  531. package/Binaries/Perl/Linux/X64/deps/bin/yamlpp-parse-emit +0 -123
  532. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/Abstract.pm +0 -74
  533. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/Alias.pm +0 -75
  534. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/Memoize.pm +0 -77
  535. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/Method.pm +0 -151
  536. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/SigHandler.pm +0 -61
  537. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Attribute/Util.pm +0 -101
  538. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Capture/Tiny.pm +0 -917
  539. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Class/Load/PP.pm +0 -59
  540. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Class/Load.pm +0 -420
  541. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Data/Cmp/Numeric.pm +0 -188
  542. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Data/Cmp/StrOrNumeric.pm +0 -200
  543. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Data/Cmp.pm +0 -278
  544. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Data/OptList.pm +0 -416
  545. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Devel/GlobalDestruction.pm +0 -110
  546. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Devel/OverloadInfo.pm +0 -309
  547. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Devel/StackTrace/Frame.pm +0 -272
  548. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Devel/StackTrace.pm +0 -624
  549. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Eval/Closure.pm +0 -379
  550. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Config/MakeMaker.pm +0 -141
  551. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Config.pm +0 -152
  552. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Helpers/Unix.pm +0 -97
  553. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Helpers/VMS.pm +0 -118
  554. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Helpers/Windows.pm +0 -125
  555. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Helpers.pm +0 -122
  556. package/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/InstallPaths.pm +0 -627
  557. package/Binaries/Perl/Linux/X64/deps/lib/perl5/FFI/CheckLib.pm +0 -856
  558. package/Binaries/Perl/Linux/X64/deps/lib/perl5/File/Which.pm +0 -398
  559. package/Binaries/Perl/Linux/X64/deps/lib/perl5/IPC/System/Simple.pm +0 -1115
  560. package/Binaries/Perl/Linux/X64/deps/lib/perl5/MRO/Compat.pm +0 -407
  561. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Module/Build.pm +0 -1097
  562. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Module/Implementation.pm +0 -290
  563. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Module/Runtime/Conflicts.pm +0 -105
  564. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Module/Runtime.pm +0 -515
  565. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Nice/Try.pm +0 -3257
  566. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Cache.pm +0 -301
  567. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Document/File.pm +0 -136
  568. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Document/Fragment.pm +0 -90
  569. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Document/Normalized.pm +0 -315
  570. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Document.pm +0 -1012
  571. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Dumper.pm +0 -309
  572. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Element.pm +0 -907
  573. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Exception/ParserRejection.pm +0 -10
  574. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Exception.pm +0 -108
  575. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Find.pm +0 -391
  576. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Lexer.pm +0 -1584
  577. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Node.pm +0 -831
  578. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Normal/Standard.pm +0 -139
  579. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Normal.pm +0 -257
  580. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Singletons.pm +0 -92
  581. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Break.pm +0 -75
  582. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Compound.pm +0 -205
  583. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Data.pm +0 -81
  584. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/End.pm +0 -79
  585. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Expression.pm +0 -67
  586. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Given.pm +0 -90
  587. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Include/Perl6.pm +0 -87
  588. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Include.pm +0 -365
  589. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Null.pm +0 -75
  590. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Package.pm +0 -145
  591. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Scheduled.pm +0 -124
  592. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Sub.pm +0 -222
  593. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Unknown.pm +0 -68
  594. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/UnmatchedBrace.pm +0 -80
  595. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/Variable.pm +0 -195
  596. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement/When.pm +0 -100
  597. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Statement.pm +0 -344
  598. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Block.pm +0 -82
  599. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Condition.pm +0 -67
  600. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Constructor.pm +0 -62
  601. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/For.pm +0 -77
  602. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Given.pm +0 -63
  603. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/List.pm +0 -87
  604. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Signature.pm +0 -61
  605. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Subscript.pm +0 -68
  606. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/Unknown.pm +0 -69
  607. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure/When.pm +0 -63
  608. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Structure.pm +0 -348
  609. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/ArrayIndex.pm +0 -77
  610. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Attribute.pm +0 -176
  611. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/BOM.pm +0 -113
  612. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Cast.pm +0 -87
  613. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Comment.pm +0 -146
  614. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/DashedWord.pm +0 -96
  615. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Data.pm +0 -116
  616. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/End.pm +0 -111
  617. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/HereDoc.pm +0 -338
  618. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Label.pm +0 -58
  619. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Magic.pm +0 -200
  620. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Binary.pm +0 -117
  621. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Exp.pm +0 -146
  622. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Float.pm +0 -140
  623. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Hex.pm +0 -108
  624. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Octal.pm +0 -115
  625. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number/Version.pm +0 -164
  626. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Number.pm +0 -166
  627. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Operator.pm +0 -124
  628. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Pod.pm +0 -159
  629. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Prototype.pm +0 -100
  630. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Quote/Double.pm +0 -138
  631. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Quote/Interpolate.pm +0 -76
  632. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Quote/Literal.pm +0 -81
  633. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Quote/Single.pm +0 -93
  634. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Quote.pm +0 -120
  635. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike/Backtick.pm +0 -62
  636. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike/Command.pm +0 -62
  637. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike/Readline.pm +0 -71
  638. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike/Regexp.pm +0 -126
  639. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike/Words.pm +0 -88
  640. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/QuoteLike.pm +0 -77
  641. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Regexp/Match.pm +0 -76
  642. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Regexp/Substitute.pm +0 -66
  643. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Regexp/Transliterate.pm +0 -70
  644. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Regexp.pm +0 -136
  645. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Separator.pm +0 -64
  646. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Structure.pm +0 -209
  647. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Symbol.pm +0 -241
  648. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Unknown.pm +0 -506
  649. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Whitespace.pm +0 -454
  650. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/Word.pm +0 -375
  651. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Full.pm +0 -450
  652. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Simple.pm +0 -67
  653. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token/_QuoteEngine.pm +0 -240
  654. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Token.pm +0 -245
  655. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Tokenizer.pm +0 -1123
  656. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Transform/UpdateCopyright.pm +0 -179
  657. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Transform.pm +0 -240
  658. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/Util.pm +0 -72
  659. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI/XSAccessor.pm +0 -165
  660. package/Binaries/Perl/Linux/X64/deps/lib/perl5/PPI.pm +0 -822
  661. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Package/DeprecationManager.pm +0 -368
  662. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Package/Stash/Conflicts.pm +0 -35
  663. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Package/Stash/PP.pm +0 -503
  664. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Package/Stash.pm +0 -308
  665. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Path/Tiny.pm +0 -3946
  666. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Safe/Isa.pm +0 -213
  667. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Scope/Guard.pm +0 -183
  668. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Exporter/Cookbook.pod +0 -602
  669. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Exporter/Progressive.pm +0 -174
  670. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Exporter/Tutorial.pod +0 -539
  671. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Exporter/Util.pm +0 -488
  672. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Exporter.pm +0 -1769
  673. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Sub/Install.pm +0 -486
  674. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Task/Weaken.pm +0 -95
  675. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Test/Fatal.pm +0 -477
  676. package/Binaries/Perl/Linux/X64/deps/lib/perl5/Try/Tiny.pm +0 -820
  677. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Common.pm +0 -273
  678. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Constructor.pm +0 -435
  679. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Dumper.pm +0 -283
  680. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Emitter.pm +0 -1165
  681. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Exception.pm +0 -79
  682. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Grammar.pm +0 -2150
  683. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Highlight.pm +0 -235
  684. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Lexer.pm +0 -962
  685. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Loader.pm +0 -103
  686. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Parser.pm +0 -1469
  687. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Perl.pm +0 -83
  688. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Reader.pm +0 -78
  689. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Render.pm +0 -155
  690. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Representer.pm +0 -230
  691. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Binary.pm +0 -102
  692. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Catchall.pm +0 -76
  693. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Core.pm +0 -155
  694. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Failsafe.pm +0 -71
  695. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Include.pm +0 -259
  696. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/JSON.pm +0 -259
  697. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Merge.pm +0 -109
  698. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Perl.pm +0 -1004
  699. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/Tie/IxHash.pm +0 -156
  700. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema/YAML1_1.pm +0 -249
  701. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Schema.pm +0 -447
  702. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Type/MergeKey.pm +0 -40
  703. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Writer/File.pm +0 -104
  704. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP/Writer.pm +0 -89
  705. package/Binaries/Perl/Linux/X64/deps/lib/perl5/YAML/PP.pm +0 -1547
  706. package/Binaries/Perl/Linux/X64/deps/lib/perl5/aliased.pm +0 -371
  707. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Attribute-Util-1.07/MYMETA.json +0 -43
  708. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Attribute-Util-1.07/install.json +0 -1
  709. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Capture-Tiny-0.50/MYMETA.json +0 -124
  710. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Capture-Tiny-0.50/install.json +0 -1
  711. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-0.25/MYMETA.json +0 -1290
  712. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-0.25/install.json +0 -1
  713. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-XS-0.10/MYMETA.json +0 -1222
  714. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Class-Load-XS-0.10/install.json +0 -1
  715. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Clone-0.47/MYMETA.json +0 -54
  716. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Clone-0.47/install.json +0 -1
  717. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-Cmp-0.010/MYMETA.json +0 -591
  718. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-Cmp-0.010/install.json +0 -1
  719. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-OptList-0.114/MYMETA.json +0 -570
  720. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-OptList-0.114/install.json +0 -1
  721. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-UUID-1.227/MYMETA.json +0 -50
  722. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Data-UUID-1.227/install.json +0 -1
  723. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-GlobalDestruction-0.14/MYMETA.json +0 -65
  724. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-GlobalDestruction-0.14/install.json +0 -1
  725. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-OverloadInfo-0.007/MYMETA.json +0 -73
  726. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-OverloadInfo-0.007/install.json +0 -1
  727. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-StackTrace-2.05/MYMETA.json +0 -1081
  728. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Devel-StackTrace-2.05/install.json +0 -1
  729. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Dist-CheckConflicts-0.11/MYMETA.json +0 -463
  730. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Dist-CheckConflicts-0.11/install.json +0 -1
  731. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Eval-Closure-0.14/MYMETA.json +0 -599
  732. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Eval-Closure-0.14/install.json +0 -1
  733. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Config-0.010/MYMETA.json +0 -79
  734. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Config-0.010/install.json +0 -1
  735. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Helpers-0.028/MYMETA.json +0 -89
  736. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-Helpers-0.028/install.json +0 -1
  737. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-InstallPaths-0.014/MYMETA.json +0 -76
  738. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/ExtUtils-InstallPaths-0.014/install.json +0 -1
  739. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-CheckLib-0.31/MYMETA.json +0 -156
  740. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-CheckLib-0.31/install.json +0 -1
  741. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-Platypus-2.10/MYMETA.json +0 -198
  742. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/FFI-Platypus-2.10/install.json +0 -1
  743. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/File-Which-1.27/MYMETA.json +0 -81
  744. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/File-Which-1.27/install.json +0 -1
  745. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/IPC-System-Simple-1.30/MYMETA.json +0 -69
  746. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/IPC-System-Simple-1.30/install.json +0 -1
  747. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/MRO-Compat-0.15/MYMETA.json +0 -66
  748. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/MRO-Compat-0.15/install.json +0 -1
  749. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-0.4234/MYMETA.json +0 -161
  750. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-0.4234/install.json +0 -1
  751. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-Tiny-0.051/MYMETA.json +0 -122
  752. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Build-Tiny-0.051/install.json +0 -1
  753. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Implementation-0.09/MYMETA.json +0 -625
  754. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Implementation-0.09/install.json +0 -1
  755. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-0.016/MYMETA.json +0 -62
  756. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-0.016/install.json +0 -1
  757. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-Conflicts-0.003/MYMETA.json +0 -1162
  758. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Module-Runtime-Conflicts-0.003/install.json +0 -1
  759. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Moose-2.2207/MYMETA.json +0 -3189
  760. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Moose-2.2207/install.json +0 -1
  761. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Nice-Try-v1.3.15/MYMETA.json +0 -68
  762. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Nice-Try-v1.3.15/install.json +0 -1
  763. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-1.281/MYMETA.json +0 -1115
  764. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-1.281/install.json +0 -1
  765. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-XS-0.910/MYMETA.json +0 -1045
  766. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/PPI-XS-0.910/install.json +0 -1
  767. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-DeprecationManager-0.18/MYMETA.json +0 -1069
  768. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-DeprecationManager-0.18/install.json +0 -1
  769. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-0.40/MYMETA.json +0 -1371
  770. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-0.40/install.json +0 -1
  771. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-XS-0.30/MYMETA.json +0 -1331
  772. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Package-Stash-XS-0.30/install.json +0 -1
  773. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Params-Util-1.102/MYMETA.json +0 -89
  774. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Params-Util-1.102/install.json +0 -1
  775. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Path-Tiny-0.148/MYMETA.json +0 -186
  776. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Path-Tiny-0.148/install.json +0 -1
  777. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Safe-Isa-1.000010/MYMETA.json +0 -64
  778. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Safe-Isa-1.000010/install.json +0 -1
  779. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-List-Utils-1.68/MYMETA.json +0 -58
  780. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-List-Utils-1.68/install.json +0 -1
  781. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-Util-Numeric-0.40/MYMETA.json +0 -50
  782. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scalar-Util-Numeric-0.40/install.json +0 -1
  783. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scope-Guard-0.21/MYMETA.json +0 -53
  784. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Scope-Guard-0.21/install.json +0 -1
  785. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-0.991/MYMETA.json +0 -595
  786. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-0.991/install.json +0 -1
  787. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-Progressive-0.001013/MYMETA.json +0 -55
  788. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Exporter-Progressive-0.001013/install.json +0 -1
  789. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Install-0.929/MYMETA.json +0 -572
  790. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Sub-Install-0.929/install.json +0 -1
  791. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Task-Weaken-1.06/MYMETA.json +0 -1092
  792. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Task-Weaken-1.06/install.json +0 -1
  793. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Test-Fatal-0.017/MYMETA.json +0 -598
  794. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Test-Fatal-0.017/install.json +0 -1
  795. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Try-Tiny-0.32/MYMETA.json +0 -1344
  796. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Try-Tiny-0.32/install.json +0 -1
  797. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Want-0.29/MYMETA.json +0 -40
  798. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/Want-0.29/install.json +0 -1
  799. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/YAML-PP-v0.39.0/MYMETA.json +0 -222
  800. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/YAML-PP-v0.39.0/install.json +0 -1
  801. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/aliased-0.34/MYMETA.json +0 -1035
  802. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/aliased-0.34/install.json +0 -1
  803. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/autobox-v3.0.2/MYMETA.json +0 -53
  804. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/.meta/autobox-v3.0.2/install.json +0 -1
  805. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/Load/XS.pm +0 -89
  806. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Attribute.pm +0 -1100
  807. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Class/Immutable/Trait.pm +0 -172
  808. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Class.pm +0 -2312
  809. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Deprecated.pm +0 -95
  810. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Instance.pm +0 -533
  811. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Accessor.pm +0 -404
  812. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Constructor.pm +0 -251
  813. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Generated.pm +0 -142
  814. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Inlined.pm +0 -191
  815. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Meta.pm +0 -169
  816. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm +0 -333
  817. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method.pm +0 -356
  818. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/MiniTrait.pm +0 -113
  819. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Mixin/AttributeCore.pm +0 -125
  820. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Mixin/HasAttributes.pm +0 -171
  821. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Mixin/HasMethods.pm +0 -304
  822. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Mixin/HasOverloads.pm +0 -243
  823. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Mixin.pm +0 -107
  824. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Module.pm +0 -209
  825. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Object.pm +0 -196
  826. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Overload.pm +0 -340
  827. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Package.pm +0 -460
  828. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP.pm +0 -1222
  829. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Clone.pm +0 -99
  830. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Data/UUID.pm +0 -158
  831. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Build.pm +0 -634
  832. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/API.pm +0 -293
  833. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Buffer.pm +0 -366
  834. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Bundle.pm +0 -795
  835. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Closure.pm +0 -199
  836. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Constant.pm +0 -246
  837. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/DL.pm +0 -231
  838. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Function.pm +0 -229
  839. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Internal.pm +0 -96
  840. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Lang/ASM.pm +0 -126
  841. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Lang/C.pm +0 -123
  842. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Lang/Win32.pm +0 -457
  843. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Lang.pm +0 -141
  844. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Legacy.pm +0 -140
  845. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Memory.pm +0 -268
  846. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Record/Meta.pm +0 -148
  847. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Record/TieArray.pm +0 -174
  848. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Record.pm +0 -575
  849. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/ShareConfig.pm +0 -122
  850. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Type/PointerSizeBuffer.pm +0 -162
  851. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Type/StringArray.pm +0 -272
  852. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Type/StringPointer.pm +0 -190
  853. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Type/WideString.pm +0 -529
  854. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/Type.pm +0 -1399
  855. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/TypeParser/Version0.pm +0 -285
  856. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/TypeParser/Version1.pm +0 -390
  857. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/TypeParser/Version2.pm +0 -115
  858. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus/TypeParser.pm +0 -183
  859. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Platypus.pm +0 -3302
  860. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Probe/Runner/Builder.pm +0 -538
  861. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Probe/Runner/Result.pm +0 -134
  862. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Probe/Runner.pm +0 -204
  863. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Probe.pm +0 -715
  864. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/Temp.pm +0 -147
  865. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/FFI/typemap +0 -46
  866. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/List/Util/XS.pm +0 -42
  867. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/List/Util.pm +0 -836
  868. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Conflicts.pm +0 -132
  869. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/BankAccount_MethodModifiersAndSubclassing.pod +0 -384
  870. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/BinaryTree_AttributeFeatures.pod +0 -397
  871. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/BinaryTree_BuilderAndLazyBuild.pod +0 -176
  872. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Company_Subtypes.pod +0 -615
  873. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/DateTime_ExtendingNonMooseParent.pod +0 -127
  874. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Document_AugmentAndInner.pod +0 -197
  875. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Genome_OverloadingSubtypesAndCoercion.pod +0 -318
  876. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/HTTP_SubtypesAndCoercion.pod +0 -345
  877. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Immutable.pod +0 -99
  878. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Person_BUILDARGSAndBUILD.pod +0 -180
  879. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Basics/Point_AttributesAndSubclassing.pod +0 -489
  880. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Extending/Debugging_BaseClassRole.pod +0 -153
  881. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Extending/ExtensionOverview.pod +0 -404
  882. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Extending/Mooseish_MooseSugar.pod +0 -160
  883. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Legacy/Debugging_BaseClassReplacement.pod +0 -172
  884. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Legacy/Labeled_AttributeMetaclass.pod +0 -337
  885. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Legacy/Table_ClassMetaclass.pod +0 -132
  886. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Meta/GlobRef_InstanceMetaclass.pod +0 -304
  887. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Meta/Labeled_AttributeTrait.pod +0 -325
  888. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Meta/PrivateOrPublic_MethodMetaclass.pod +0 -224
  889. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Meta/Table_MetaclassTrait.pod +0 -157
  890. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Meta/WhyMeta.pod +0 -117
  891. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Roles/ApplicationToInstance.pod +0 -191
  892. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Roles/Comparable_CodeReuse.pod +0 -379
  893. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Roles/Restartable_AdvancedComposition.pod +0 -230
  894. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Snack/Keywords.pod +0 -240
  895. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Snack/Types.pod +0 -130
  896. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook/Style.pod +0 -77
  897. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Cookbook.pod +0 -289
  898. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Deprecated.pm +0 -98
  899. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AccessorMustReadWrite.pm +0 -14
  900. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AddParameterizableTypeTakesParameterizableType.pm +0 -19
  901. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AddRoleTakesAMooseMetaRoleInstance.pm +0 -19
  902. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AddRoleToARoleTakesAMooseMetaRole.pm +0 -19
  903. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ApplyTakesABlessedInstance.pm +0 -19
  904. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttachToClassNeedsAClassMOPClassInstanceOrASubclass.pm +0 -19
  905. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeConflictInRoles.pm +0 -32
  906. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeConflictInSummation.pm +0 -28
  907. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeExtensionIsNotSupportedInRoles.pm +0 -19
  908. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeIsRequired.pm +0 -45
  909. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeMustBeAnClassMOPMixinAttributeCoreOrSubclass.pm +0 -19
  910. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeNamesDoNotMatch.pm +0 -25
  911. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeValueIsNotAnObject.pm +0 -28
  912. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AttributeValueIsNotDefined.pm +0 -22
  913. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/AutoDeRefNeedsArrayRefOrHashRef.pm +0 -14
  914. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BadOptionFormat.pm +0 -25
  915. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BothBuilderAndDefaultAreNotAllowed.pm +0 -19
  916. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BuilderDoesNotExist.pm +0 -14
  917. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BuilderMethodNotSupportedForAttribute.pm +0 -14
  918. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BuilderMethodNotSupportedForInlineAttribute.pm +0 -26
  919. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/BuilderMustBeAMethodName.pm +0 -19
  920. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CallingMethodOnAnImmutableInstance.pm +0 -19
  921. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CallingReadOnlyMethodOnAnImmutableInstance.pm +0 -19
  922. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CanExtendOnlyClasses.pm +0 -15
  923. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CanOnlyConsumeRole.pm +0 -18
  924. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CanOnlyWrapBlessedCode.pm +0 -25
  925. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CanReblessOnlyIntoASubclass.pm +0 -15
  926. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CanReblessOnlyIntoASuperclass.pm +0 -14
  927. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAddAdditionalTypeCoercionsToUnion.pm +0 -18
  928. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAddAsAnAttributeToARole.pm +0 -20
  929. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotApplyBaseClassRolesToRole.pm +0 -13
  930. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAssignValueToReadOnlyAccessor.pm +0 -20
  931. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAugmentIfLocalMethodPresent.pm +0 -13
  932. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAugmentNoSuperMethod.pm +0 -26
  933. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAutoDerefWithoutIsa.pm +0 -14
  934. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotAutoDereferenceTypeConstraint.pm +0 -14
  935. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCalculateNativeType.pm +0 -14
  936. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCallAnAbstractBaseMethod.pm +0 -19
  937. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCallAnAbstractMethod.pm +0 -12
  938. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCoerceAWeakRef.pm +0 -14
  939. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCoerceAttributeWhichHasNoCoercion.pm +0 -17
  940. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCreateHigherOrderTypeWithoutATypeParameter.pm +0 -13
  941. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCreateMethodAliasLocalMethodIsPresent.pm +0 -25
  942. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotCreateMethodAliasLocalMethodIsPresentInClass.pm +0 -19
  943. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotDelegateLocalMethodIsPresent.pm +0 -14
  944. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotDelegateWithoutIsa.pm +0 -13
  945. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotFindDelegateMetaclass.pm +0 -14
  946. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotFindType.pm +0 -19
  947. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotFindTypeGivenToMatchOnType.pm +0 -33
  948. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotFixMetaclassCompatibility.pm +0 -26
  949. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotGenerateInlineConstraint.pm +0 -30
  950. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotInitializeMooseMetaRoleComposite.pm +0 -30
  951. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotInlineTypeConstraintCheck.pm +0 -14
  952. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotLocatePackageInINC.pm +0 -41
  953. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotMakeMetaclassCompatible.pm +0 -23
  954. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotOverrideALocalMethod.pm +0 -20
  955. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotOverrideBodyOfMetaMethods.pm +0 -19
  956. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotOverrideLocalMethodIsPresent.pm +0 -13
  957. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotOverrideNoSuperMethod.pm +0 -26
  958. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotRegisterUnnamedTypeConstraint.pm +0 -12
  959. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CannotUseLazyBuildAndDefaultSimultaneously.pm +0 -14
  960. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CircularReferenceInAlso.pm +0 -31
  961. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ClassDoesNotHaveInitMeta.pm +0 -22
  962. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ClassDoesTheExcludedRole.pm +0 -22
  963. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ClassNamesDoNotMatch.pm +0 -25
  964. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CloneObjectExpectsAnInstanceOfMetaclass.pm +0 -20
  965. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CodeBlockMustBeACodeRef.pm +0 -13
  966. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CoercingWithoutCoercions.pm +0 -12
  967. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CoercionAlreadyExists.pm +0 -20
  968. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CoercionNeedsTypeConstraint.pm +0 -14
  969. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ConflictDetectedInCheckRoleExclusions.pm +0 -22
  970. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ConflictDetectedInCheckRoleExclusionsInToClass.pm +0 -16
  971. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ConstructClassInstanceTakesPackageName.pm +0 -12
  972. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotCreateMethod.pm +0 -32
  973. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotCreateWriter.pm +0 -24
  974. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotEvalConstructor.pm +0 -34
  975. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotEvalDestructor.pm +0 -34
  976. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotFindTypeConstraintToCoerceFrom.pm +0 -20
  977. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotGenerateInlineAttributeMethod.pm +0 -26
  978. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotLocateTypeConstraintForUnion.pm +0 -14
  979. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CouldNotParseType.pm +0 -30
  980. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateMOPClassTakesArrayRefOfAttributes.pm +0 -13
  981. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateMOPClassTakesArrayRefOfSuperclasses.pm +0 -13
  982. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateMOPClassTakesHashRefOfMethods.pm +0 -13
  983. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateTakesArrayRefOfRoles.pm +0 -13
  984. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateTakesHashRefOfAttributes.pm +0 -13
  985. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/CreateTakesHashRefOfMethods.pm +0 -13
  986. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/DefaultToMatchOnTypeMustBeCodeRef.pm +0 -33
  987. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/DelegationToAClassWhichIsNotLoaded.pm +0 -20
  988. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/DelegationToARoleWhichIsNotLoaded.pm +0 -20
  989. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/DelegationToATypeWhichIsNotAClass.pm +0 -14
  990. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/DoesRequiresRoleName.pm +0 -13
  991. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/EnumCalledWithAnArrayRefAndAdditionalArgs.pm +0 -24
  992. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/EnumValuesMustBeString.pm +0 -26
  993. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ExtendsMissingArgs.pm +0 -13
  994. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/HandlesMustBeAHashRef.pm +0 -20
  995. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/IllegalInheritedOptions.pm +0 -23
  996. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/IllegalMethodTypeToAddMethodModifier.pm +0 -31
  997. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/IncompatibleMetaclassOfSuperclass.pm +0 -27
  998. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InitMetaRequiresClass.pm +0 -13
  999. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InitializeTakesUnBlessedPackageName.pm +0 -18
  1000. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InstanceBlessedIntoWrongClass.pm +0 -14
  1001. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InstanceMustBeABlessedReference.pm +0 -20
  1002. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidArgPassedToMooseUtilMetaRole.pm +0 -41
  1003. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidArgumentToMethod.pm +0 -45
  1004. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidArgumentsToTraitAliases.pm +0 -32
  1005. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidBaseTypeGivenToCreateParameterizedTypeConstraint.pm +0 -14
  1006. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidHandleValue.pm +0 -20
  1007. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidHasProvidedInARole.pm +0 -19
  1008. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidNameForType.pm +0 -17
  1009. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidOverloadOperator.pm +0 -21
  1010. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidRoleApplication.pm +0 -19
  1011. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidTypeConstraint.pm +0 -24
  1012. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidTypeGivenToCreateParameterizedTypeConstraint.pm +0 -14
  1013. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/InvalidValueForIs.pm +0 -14
  1014. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/IsaDoesNotDoTheRole.pm +0 -14
  1015. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/IsaLacksDoesMethod.pm +0 -14
  1016. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/LazyAttributeNeedsADefault.pm +0 -14
  1017. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Legacy.pm +0 -8
  1018. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MOPAttributeNewNeedsAttributeName.pm +0 -19
  1019. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MatchActionMustBeACodeRef.pm +0 -28
  1020. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MessageParameterMustBeCodeRef.pm +0 -19
  1021. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassIsAClassNotASubclassOfGivenMetaclass.pm +0 -24
  1022. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassIsARoleNotASubclassOfGivenMetaclass.pm +0 -26
  1023. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassIsNotASubclassOfGivenMetaclass.pm +0 -23
  1024. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassMustBeASubclassOfMooseMetaClass.pm +0 -14
  1025. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassMustBeASubclassOfMooseMetaRole.pm +0 -14
  1026. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassMustBeDerivedFromClassMOPClass.pm +0 -19
  1027. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassNotLoaded.pm +0 -14
  1028. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MetaclassTypeIncompatible.pm +0 -39
  1029. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodExpectedAMetaclassObject.pm +0 -24
  1030. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodExpectsFewerArgs.pm +0 -27
  1031. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodExpectsMoreArgs.pm +0 -25
  1032. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodModifierNeedsMethodName.pm +0 -13
  1033. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodNameConflictInRoles.pm +0 -47
  1034. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodNameNotFoundInInheritanceHierarchy.pm +0 -20
  1035. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MethodNameNotGiven.pm +0 -13
  1036. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustDefineAMethodName.pm +0 -13
  1037. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustDefineAnAttributeName.pm +0 -13
  1038. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustDefineAnOverloadOperator.pm +0 -13
  1039. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustHaveAtLeastOneValueToEnumerate.pm +0 -19
  1040. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustPassAHashOfOptions.pm +0 -19
  1041. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustPassAMooseMetaRoleInstanceOrSubclass.pm +0 -24
  1042. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustPassAPackageNameOrAnExistingClassMOPPackageInstance.pm +0 -19
  1043. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustPassEvenNumberOfArguments.pm +0 -25
  1044. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustPassEvenNumberOfAttributeOptions.pm +0 -24
  1045. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustProvideANameForTheAttribute.pm +0 -19
  1046. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSpecifyAtleastOneMethod.pm +0 -13
  1047. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSpecifyAtleastOneRole.pm +0 -13
  1048. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSpecifyAtleastOneRoleToApplicant.pm +0 -19
  1049. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyAClassMOPAttributeInstance.pm +0 -19
  1050. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyADelegateToMethod.pm +0 -19
  1051. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyAMetaclass.pm +0 -20
  1052. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyAMooseMetaAttributeInstance.pm +0 -19
  1053. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyAnAccessorTypeToConstructWith.pm +0 -19
  1054. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyAnAttributeToConstructWith.pm +0 -19
  1055. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyArrayRefAsCurriedArguments.pm +0 -13
  1056. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/MustSupplyPackageNameAndName.pm +0 -20
  1057. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NeedsTypeConstraintUnionForTypeCoercionUnion.pm +0 -25
  1058. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NeitherAttributeNorAttributeNameIsGiven.pm +0 -12
  1059. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NeitherClassNorClassNameIsGiven.pm +0 -12
  1060. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NeitherRoleNorRoleNameIsGiven.pm +0 -12
  1061. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NeitherTypeNorTypeNameIsGiven.pm +0 -12
  1062. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoAttributeFoundInSuperClass.pm +0 -14
  1063. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoBodyToInitializeInAnAbstractBaseClass.pm +0 -19
  1064. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoCasesMatched.pm +0 -27
  1065. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoConstraintCheckForTypeConstraint.pm +0 -14
  1066. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoDestructorClassSpecified.pm +0 -13
  1067. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoImmutableTraitSpecifiedForClass.pm +0 -17
  1068. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/NoParentGivenToSubtype.pm +0 -18
  1069. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OnlyInstancesCanBeCloned.pm +0 -20
  1070. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OperatorIsRequired.pm +0 -19
  1071. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadConflictInSummation.pm +0 -62
  1072. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresAMetaClass.pm +0 -13
  1073. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresAMetaMethod.pm +0 -13
  1074. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresAMetaOverload.pm +0 -13
  1075. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresAMethodNameOrCoderef.pm +0 -13
  1076. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresAnOperator.pm +0 -13
  1077. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverloadRequiresNamesForCoderef.pm +0 -13
  1078. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverrideConflictInComposition.pm +0 -43
  1079. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/OverrideConflictInSummation.pm +0 -66
  1080. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/PackageDoesNotUseMooseExporter.pm +0 -28
  1081. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/PackageNameAndNameParamsNotGivenToWrap.pm +0 -25
  1082. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/PackagesAndModulesAreNotCachable.pm +0 -26
  1083. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ParameterIsNotSubtypeOfParent.pm +0 -26
  1084. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ReferencesAreNotAllowedAsDefault.pm +0 -27
  1085. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RequiredAttributeLacksInitialization.pm +0 -19
  1086. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RequiredAttributeNeedsADefault.pm +0 -14
  1087. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RequiredMethodsImportedByClass.pm +0 -46
  1088. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RequiredMethodsNotImplementedByClass.pm +0 -31
  1089. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/Attribute.pm +0 -12
  1090. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/AttributeName.pm +0 -12
  1091. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/Class.pm +0 -14
  1092. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/EitherAttributeOrAttributeName.pm +0 -49
  1093. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/Instance.pm +0 -12
  1094. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/InstanceClass.pm +0 -12
  1095. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/InvalidAttributeOptions.pm +0 -13
  1096. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/Method.pm +0 -12
  1097. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/ParamsHash.pm +0 -12
  1098. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/Role.pm +0 -16
  1099. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/RoleForCreate.pm +0 -13
  1100. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/RoleForCreateMOPClass.pm +0 -13
  1101. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/Role/TypeConstraint.pm +0 -14
  1102. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RoleDoesTheExcludedRole.pm +0 -28
  1103. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RoleExclusionConflict.pm +0 -27
  1104. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RoleNameRequired.pm +0 -13
  1105. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RoleNameRequiredForMooseMetaRole.pm +0 -13
  1106. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesDoNotSupportAugment.pm +0 -12
  1107. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesDoNotSupportExtends.pm +0 -12
  1108. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesDoNotSupportInner.pm +0 -12
  1109. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesDoNotSupportRegexReferencesForMethodModifiers.pm +0 -20
  1110. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesInCreateTakesAnArrayRef.pm +0 -14
  1111. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/RolesListMustBeInstancesOfMooseMetaRole.pm +0 -26
  1112. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/SingleParamsToNewMustBeHashRef.pm +0 -12
  1113. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/TriggerMustBeACodeRef.pm +0 -14
  1114. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/TypeConstraintCannotBeUsedForAParameterizableType.pm +0 -25
  1115. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/TypeConstraintIsAlreadyCreated.pm +0 -26
  1116. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/TypeParameterMustBeMooseMetaType.pm +0 -13
  1117. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UnableToCanonicalizeHandles.pm +0 -20
  1118. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UnableToCanonicalizeNonRolePackage.pm +0 -20
  1119. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UnableToRecognizeDelegateMetaclass.pm +0 -22
  1120. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UndefinedHashKeysPassedToMethod.pm +0 -25
  1121. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UnionCalledWithAnArrayRefAndAdditionalArgs.pm +0 -24
  1122. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/UnionTakesAtleastTwoTypeNames.pm +0 -12
  1123. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ValidationFailedForInlineTypeConstraint.pm +0 -49
  1124. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/ValidationFailedForTypeConstraint.pm +0 -33
  1125. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/WrapTakesACodeRefToBless.pm +0 -26
  1126. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception/WrongTypeConstraintGiven.pm +0 -21
  1127. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exception.pm +0 -211
  1128. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Exporter.pm +0 -1048
  1129. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Intro.pod +0 -77
  1130. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Attributes.pod +0 -709
  1131. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/BestPractices.pod +0 -292
  1132. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Classes.pod +0 -218
  1133. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Concepts.pod +0 -439
  1134. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Construction.pod +0 -228
  1135. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Contributing.pod +0 -545
  1136. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Delegation.pod +0 -313
  1137. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Delta.pod +0 -1275
  1138. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Exceptions/Manifest.pod +0 -4124
  1139. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Exceptions.pod +0 -239
  1140. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/FAQ.pod +0 -470
  1141. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/MOP.pod +0 -214
  1142. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/MethodModifiers.pod +0 -449
  1143. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/MooseX.pod +0 -326
  1144. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Resources.pod +0 -526
  1145. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Roles.pod +0 -557
  1146. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Support.pod +0 -204
  1147. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Types.pod +0 -501
  1148. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual/Unsweetened.pod +0 -386
  1149. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Manual.pod +0 -334
  1150. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Array.pm +0 -387
  1151. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Bool.pm +0 -146
  1152. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Code.pm +0 -129
  1153. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Counter.pm +0 -157
  1154. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Hash.pm +0 -227
  1155. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/Number.pm +0 -155
  1156. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait/String.pm +0 -187
  1157. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native/Trait.pm +0 -244
  1158. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute/Native.pm +0 -299
  1159. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Attribute.pm +0 -1810
  1160. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Class/Immutable/Trait.pm +0 -123
  1161. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Class.pm +0 -1014
  1162. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Instance.pm +0 -109
  1163. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/Writer.pm +0 -27
  1164. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/accessor.pm +0 -56
  1165. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/clear.pm +0 -28
  1166. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/count.pm +0 -22
  1167. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/delete.pm +0 -50
  1168. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/elements.pm +0 -22
  1169. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/first.pm +0 -42
  1170. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/first_index.pm +0 -51
  1171. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/get.pm +0 -31
  1172. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/grep.pm +0 -41
  1173. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/insert.pm +0 -58
  1174. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/is_empty.pm +0 -22
  1175. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/join.pm +0 -41
  1176. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/map.pm +0 -41
  1177. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/natatime.pm +0 -66
  1178. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/pop.pm +0 -47
  1179. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/push.pm +0 -36
  1180. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/reduce.pm +0 -42
  1181. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/set.pm +0 -64
  1182. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/shallow_clone.pm +0 -26
  1183. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/shift.pm +0 -47
  1184. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/shuffle.pm +0 -24
  1185. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/sort.pm +0 -44
  1186. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/sort_in_place.pm +0 -45
  1187. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/splice.pm +0 -72
  1188. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/uniq.pm +0 -24
  1189. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array/unshift.pm +0 -36
  1190. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Array.pm +0 -28
  1191. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Bool/not.pm +0 -20
  1192. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Bool/set.pm +0 -24
  1193. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Bool/toggle.pm +0 -29
  1194. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Bool/unset.pm +0 -24
  1195. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Code/execute.pm +0 -20
  1196. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Code/execute_method.pm +0 -20
  1197. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Collection.pm +0 -167
  1198. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Counter/Writer.pm +0 -24
  1199. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Counter/dec.pm +0 -30
  1200. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Counter/inc.pm +0 -30
  1201. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Counter/reset.pm +0 -36
  1202. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Counter/set.pm +0 -25
  1203. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/Writer.pm +0 -41
  1204. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/accessor.pm +0 -61
  1205. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/clear.pm +0 -37
  1206. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/count.pm +0 -22
  1207. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/defined.pm +0 -31
  1208. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/delete.pm +0 -46
  1209. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/elements.pm +0 -23
  1210. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/exists.pm +0 -31
  1211. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/get.pm +0 -35
  1212. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/is_empty.pm +0 -22
  1213. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/keys.pm +0 -22
  1214. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/kv.pm +0 -23
  1215. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/set.pm +0 -99
  1216. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/shallow_clone.pm +0 -26
  1217. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash/values.pm +0 -22
  1218. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Hash.pm +0 -28
  1219. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/abs.pm +0 -29
  1220. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/add.pm +0 -31
  1221. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/div.pm +0 -31
  1222. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/mod.pm +0 -31
  1223. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/mul.pm +0 -31
  1224. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/set.pm +0 -25
  1225. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Number/sub.pm +0 -31
  1226. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Reader.pm +0 -47
  1227. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/append.pm +0 -31
  1228. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/chomp.pm +0 -40
  1229. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/chop.pm +0 -40
  1230. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/clear.pm +0 -24
  1231. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/inc.pm +0 -33
  1232. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/length.pm +0 -22
  1233. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/match.pm +0 -42
  1234. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/prepend.pm +0 -31
  1235. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/replace.pm +0 -69
  1236. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/String/substr.pm +0 -123
  1237. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native/Writer.pm +0 -174
  1238. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor/Native.pm +0 -157
  1239. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Accessor.pm +0 -208
  1240. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Augmented.pm +0 -171
  1241. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Constructor.pm +0 -145
  1242. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Delegation.pm +0 -307
  1243. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Destructor.pm +0 -251
  1244. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Meta.pm +0 -112
  1245. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method/Overridden.pm +0 -160
  1246. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Method.pm +0 -100
  1247. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Mixin/AttributeCore.pm +0 -185
  1248. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Object/Trait.pm +0 -107
  1249. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Application/RoleSummation.pm +0 -440
  1250. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Application/ToClass.pm +0 -314
  1251. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Application/ToInstance.pm +0 -142
  1252. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Application/ToRole.pm +0 -283
  1253. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Application.pm +0 -225
  1254. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Attribute.pm +0 -259
  1255. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Composite.pm +0 -320
  1256. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Method/Conflicting.pm +0 -135
  1257. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Method/Required.pm +0 -127
  1258. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role/Method.pm +0 -101
  1259. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/Role.pm +0 -1059
  1260. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeCoercion/Union.pm +0 -141
  1261. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeCoercion.pm +0 -239
  1262. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Class.pm +0 -261
  1263. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/DuckType.pm +0 -217
  1264. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Enum.pm +0 -235
  1265. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Parameterizable.pm +0 -200
  1266. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Parameterized.pm +0 -188
  1267. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Registry.pm +0 -206
  1268. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Role.pm +0 -235
  1269. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint/Union.pm +0 -346
  1270. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Meta/TypeConstraint.pm +0 -607
  1271. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Object.pm +0 -271
  1272. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Role.pm +0 -377
  1273. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Spec/Role.pod +0 -397
  1274. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Unsweetened.pod +0 -77
  1275. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Util/MetaRole.pm +0 -329
  1276. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Util/TypeConstraints/Builtins.pm +0 -305
  1277. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Util/TypeConstraints.pm +0 -1443
  1278. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose/Util.pm +0 -725
  1279. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Moose.pm +0 -1268
  1280. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/PPI/XS.pm +0 -137
  1281. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Package/Stash/XS.pm +0 -110
  1282. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Params/Util/PP.pm +0 -276
  1283. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Params/Util.pm +0 -486
  1284. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Scalar/List/Utils.pm +0 -43
  1285. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Scalar/Util/Numeric.pm +0 -137
  1286. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Scalar/Util.pm +0 -390
  1287. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Sub/Util.pm +0 -153
  1288. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Test/Moose.pm +0 -228
  1289. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Want.pm +0 -742
  1290. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Attribute/Util/.packlist +0 -12
  1291. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Capture/Tiny/.packlist +0 -2
  1292. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/.packlist +0 -3
  1293. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/XS/.packlist +0 -3
  1294. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/XS/XS.so +0 -0
  1295. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Clone/.packlist +0 -4
  1296. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Clone/Clone.so +0 -0
  1297. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Clone/autosplit.ix +0 -3
  1298. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/Cmp/.packlist +0 -6
  1299. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/OptList/.packlist +0 -2
  1300. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/UUID/.packlist +0 -3
  1301. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/UUID/UUID.so +0 -0
  1302. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Devel/GlobalDestruction/.packlist +0 -2
  1303. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Devel/OverloadInfo/.packlist +0 -2
  1304. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Devel/StackTrace/.packlist +0 -4
  1305. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Eval/Closure/.packlist +0 -2
  1306. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/ExtUtils/Config/.packlist +0 -4
  1307. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/ExtUtils/Helpers/.packlist +0 -8
  1308. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/ExtUtils/InstallPaths/.packlist +0 -2
  1309. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/CheckLib/.packlist +0 -2
  1310. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/.packlist +0 -98
  1311. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Constant/Constant.txt +0 -1
  1312. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Memory/Memory.txt +0 -1
  1313. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Platypus.so +0 -0
  1314. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Record/Meta/Meta.txt +0 -1
  1315. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/File/Which/.packlist +0 -2
  1316. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/IPC/System/Simple/.packlist +0 -2
  1317. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/List/Util/.packlist +0 -11
  1318. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/List/Util/Util.so +0 -0
  1319. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/MRO/Compat/.packlist +0 -2
  1320. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Module/Implementation/.packlist +0 -2
  1321. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Module/Runtime/.packlist +0 -2
  1322. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Module/Runtime/Conflicts/.packlist +0 -2
  1323. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/.packlist +0 -574
  1324. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
  1325. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Nice/Try/.packlist +0 -2
  1326. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/.packlist +0 -186
  1327. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/XS/.packlist +0 -3
  1328. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/XS/XS.so +0 -0
  1329. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/DeprecationManager/.packlist +0 -2
  1330. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/.packlist +0 -6
  1331. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/XS/.packlist +0 -3
  1332. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/XS/XS.so +0 -0
  1333. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Params/Util/.packlist +0 -5
  1334. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Params/Util/Util.so +0 -0
  1335. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Path/Tiny/.packlist +0 -2
  1336. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Safe/Isa/.packlist +0 -2
  1337. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Scalar/Util/Numeric/.packlist +0 -3
  1338. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Scalar/Util/Numeric/Numeric.so +0 -0
  1339. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Scope/Guard/.packlist +0 -2
  1340. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Sub/Exporter/.packlist +0 -8
  1341. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Sub/Exporter/Progressive/.packlist +0 -2
  1342. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Sub/Install/.packlist +0 -2
  1343. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Task/Weaken/.packlist +0 -2
  1344. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Test/Fatal/.packlist +0 -2
  1345. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Try/Tiny/.packlist +0 -2
  1346. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/.packlist +0 -3
  1347. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
  1348. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/YAML/PP/.packlist +0 -55
  1349. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/aliased/.packlist +0 -2
  1350. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/autobox/.packlist +0 -5
  1351. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/autobox/autobox.so +0 -0
  1352. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/autobox/universal.pm +0 -13
  1353. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/autobox.pm +0 -404
  1354. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/autobox.pod +0 -709
  1355. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/metaclass.pm +0 -155
  1356. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/oose.pm +0 -137
  1357. package/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +0 -990
  1358. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/Exception.pm +0 -29
  1359. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/ExceptionSerializer.pm +0 -25
  1360. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/ExceptionThrower.pm +0 -40
  1361. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/SdkExceptionHelper.pm +0 -93
  1362. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/AbstractHandler.pm +0 -11
  1363. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/AbstractCommandHandler.pm +0 -48
  1364. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetItemHandler.pm +0 -38
  1365. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetRankHandler.pm +0 -29
  1366. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetSizeHandler.pm +0 -37
  1367. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ArraySetItemHandler.pm +0 -40
  1368. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/CastingHandler.pm +0 -22
  1369. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/CreateClassInstanceHandler.pm +0 -37
  1370. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/DestructReferenceHandler.pm +0 -39
  1371. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/GetInstanceFieldHandler.pm +0 -39
  1372. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/GetStaticFieldHandler.pm +0 -40
  1373. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/GetTypeHandler.pm +0 -40
  1374. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeGlobalFunctionHandler.pm +0 -63
  1375. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeInstanceMethodHandler.pm +0 -51
  1376. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeStaticMethodHandler.pm +0 -51
  1377. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/LoadLibraryHandler.pm +0 -42
  1378. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ResolveInstanceHandler.pm +0 -38
  1379. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/SetInstanceFieldHandler.pm +0 -40
  1380. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/SetStaticFieldHandler.pm +0 -42
  1381. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/CommandHandler/ValueHandler.pm +0 -29
  1382. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/HandlerDictionary.pm +0 -22
  1383. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/PerlHandler.pm +0 -174
  1384. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm +0 -43
  1385. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +0 -43
  1386. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +0 -203
  1387. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +0 -86
  1388. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +0 -82
  1389. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +0 -142
  1390. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Receiver/Receiver.pm +0 -38
  1391. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +0 -28
  1392. package/Binaries/Perl/Linux/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +0 -128
  1393. package/Binaries/Perl/Linux/X64/lib/Javonet/Javonet.pm +0 -80
  1394. package/Binaries/Perl/Linux/X64/lib/Javonet/JavonetPerlSdk.pm +0 -2
  1395. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +0 -101
  1396. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/PerlCommandType.pm +0 -56
  1397. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/RuntimeLib.pm +0 -25
  1398. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/RuntimeLogger.pm +0 -34
  1399. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/StringEncodingMode.pm +0 -20
  1400. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/Type.pm +0 -28
  1401. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractEnumInvocationContext.pm +0 -22
  1402. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInstanceContext.pm +0 -18
  1403. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInvocationContext.pm +0 -13
  1404. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractMethodInvocationContext.pm +0 -18
  1405. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractRuntimeContext.pm +0 -17
  1406. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractRuntimeFactory.pm +0 -24
  1407. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractTypeContext.pm +0 -15
  1408. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +0 -19
  1409. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -450
  1410. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -292
  1411. package/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +0 -104
  1412. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-events +0 -62
  1413. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-events.bat +0 -79
  1414. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-highlight +0 -54
  1415. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-highlight.bat +0 -71
  1416. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load +0 -155
  1417. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load-dump +0 -314
  1418. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load-dump.bat +0 -331
  1419. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load.bat +0 -172
  1420. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-parse-emit +0 -123
  1421. package/Binaries/Perl/Windows/X64/deps/bin/yamlpp-parse-emit.bat +0 -140
  1422. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/Abstract.pm +0 -74
  1423. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/Alias.pm +0 -75
  1424. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/Memoize.pm +0 -77
  1425. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/Method.pm +0 -151
  1426. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/SigHandler.pm +0 -61
  1427. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Attribute/Util.pm +0 -101
  1428. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Data/Cmp/Numeric.pm +0 -188
  1429. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Data/Cmp/StrOrNumeric.pm +0 -200
  1430. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Data/Cmp.pm +0 -278
  1431. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Attribute-Util-1.07/MYMETA.json +0 -43
  1432. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Attribute-Util-1.07/install.json +0 -1
  1433. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-Cmp-0.010/MYMETA.json +0 -591
  1434. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-Cmp-0.010/install.json +0 -1
  1435. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-UUID-1.227/MYMETA.json +0 -50
  1436. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Data-UUID-1.227/install.json +0 -1
  1437. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Nice-Try-v1.3.15/MYMETA.json +0 -68
  1438. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Nice-Try-v1.3.15/install.json +0 -1
  1439. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-1.281/MYMETA.json +0 -1115
  1440. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-1.281/install.json +0 -1
  1441. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-XS-0.910/MYMETA.json +0 -1045
  1442. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/PPI-XS-0.910/install.json +0 -1
  1443. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Safe-Isa-1.000010/MYMETA.json +0 -64
  1444. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Safe-Isa-1.000010/install.json +0 -1
  1445. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Scalar-Util-Numeric-0.40/MYMETA.json +0 -50
  1446. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Scalar-Util-Numeric-0.40/install.json +0 -1
  1447. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Test-Fatal-0.017/MYMETA.json +0 -598
  1448. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Test-Fatal-0.017/install.json +0 -1
  1449. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Want-0.29/MYMETA.json +0 -40
  1450. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/Want-0.29/install.json +0 -1
  1451. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/YAML-PP-v0.39.0/MYMETA.json +0 -222
  1452. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/YAML-PP-v0.39.0/install.json +0 -1
  1453. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/autobox-v3.0.2/MYMETA.json +0 -53
  1454. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/.meta/autobox-v3.0.2/install.json +0 -1
  1455. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/Data/UUID.pm +0 -158
  1456. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/PPI/XS.pm +0 -137
  1457. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/Scalar/Util/Numeric.pm +0 -137
  1458. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/Want.pm +0 -742
  1459. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Attribute/Util/.packlist +0 -6
  1460. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/Cmp/.packlist +0 -3
  1461. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/.packlist +0 -2
  1462. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  1463. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Nice/Try/.packlist +0 -1
  1464. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/.packlist +0 -95
  1465. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/.packlist +0 -2
  1466. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  1467. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Safe/Isa/.packlist +0 -1
  1468. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Scalar/Util/Numeric/.packlist +0 -2
  1469. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Scalar/Util/Numeric/Numeric.xs.dll +0 -0
  1470. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Test/Fatal/.packlist +0 -1
  1471. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/.packlist +0 -2
  1472. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  1473. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/YAML/PP/.packlist +0 -39
  1474. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/.packlist +0 -4
  1475. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  1476. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/autobox/universal.pm +0 -13
  1477. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/autobox.pm +0 -404
  1478. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/autobox.pod +0 -709
  1479. package/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +0 -264
  1480. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Nice/Try.pm +0 -3257
  1481. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Cache.pm +0 -301
  1482. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Document/File.pm +0 -136
  1483. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Document/Fragment.pm +0 -90
  1484. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Document/Normalized.pm +0 -315
  1485. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Document.pm +0 -1012
  1486. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Dumper.pm +0 -309
  1487. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Element.pm +0 -907
  1488. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Exception/ParserRejection.pm +0 -10
  1489. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Exception.pm +0 -108
  1490. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Find.pm +0 -391
  1491. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Lexer.pm +0 -1584
  1492. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Node.pm +0 -831
  1493. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Normal/Standard.pm +0 -139
  1494. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Normal.pm +0 -257
  1495. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Singletons.pm +0 -92
  1496. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Break.pm +0 -75
  1497. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Compound.pm +0 -205
  1498. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Data.pm +0 -81
  1499. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/End.pm +0 -79
  1500. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Expression.pm +0 -67
  1501. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Given.pm +0 -90
  1502. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Include/Perl6.pm +0 -87
  1503. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Include.pm +0 -365
  1504. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Null.pm +0 -75
  1505. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Package.pm +0 -145
  1506. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Scheduled.pm +0 -124
  1507. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Sub.pm +0 -222
  1508. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Unknown.pm +0 -68
  1509. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/UnmatchedBrace.pm +0 -80
  1510. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/Variable.pm +0 -195
  1511. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement/When.pm +0 -100
  1512. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Statement.pm +0 -344
  1513. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Block.pm +0 -82
  1514. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Condition.pm +0 -67
  1515. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Constructor.pm +0 -62
  1516. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/For.pm +0 -77
  1517. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Given.pm +0 -63
  1518. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/List.pm +0 -87
  1519. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Signature.pm +0 -61
  1520. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Subscript.pm +0 -68
  1521. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/Unknown.pm +0 -69
  1522. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure/When.pm +0 -63
  1523. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Structure.pm +0 -348
  1524. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/ArrayIndex.pm +0 -77
  1525. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Attribute.pm +0 -176
  1526. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/BOM.pm +0 -113
  1527. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Cast.pm +0 -87
  1528. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Comment.pm +0 -146
  1529. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/DashedWord.pm +0 -96
  1530. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Data.pm +0 -116
  1531. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/End.pm +0 -111
  1532. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/HereDoc.pm +0 -338
  1533. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Label.pm +0 -58
  1534. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Magic.pm +0 -200
  1535. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Binary.pm +0 -117
  1536. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Exp.pm +0 -146
  1537. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Float.pm +0 -140
  1538. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Hex.pm +0 -108
  1539. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Octal.pm +0 -115
  1540. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number/Version.pm +0 -164
  1541. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Number.pm +0 -166
  1542. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Operator.pm +0 -124
  1543. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Pod.pm +0 -159
  1544. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Prototype.pm +0 -100
  1545. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Quote/Double.pm +0 -138
  1546. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Quote/Interpolate.pm +0 -76
  1547. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Quote/Literal.pm +0 -81
  1548. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Quote/Single.pm +0 -93
  1549. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Quote.pm +0 -120
  1550. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike/Backtick.pm +0 -62
  1551. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike/Command.pm +0 -62
  1552. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike/Readline.pm +0 -71
  1553. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike/Regexp.pm +0 -126
  1554. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike/Words.pm +0 -88
  1555. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/QuoteLike.pm +0 -77
  1556. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Regexp/Match.pm +0 -76
  1557. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Regexp/Substitute.pm +0 -66
  1558. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Regexp/Transliterate.pm +0 -70
  1559. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Regexp.pm +0 -136
  1560. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Separator.pm +0 -64
  1561. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Structure.pm +0 -209
  1562. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Symbol.pm +0 -241
  1563. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Unknown.pm +0 -506
  1564. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Whitespace.pm +0 -454
  1565. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/Word.pm +0 -375
  1566. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Full.pm +0 -450
  1567. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Simple.pm +0 -67
  1568. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token/_QuoteEngine.pm +0 -240
  1569. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Token.pm +0 -245
  1570. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Tokenizer.pm +0 -1123
  1571. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Transform/UpdateCopyright.pm +0 -179
  1572. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Transform.pm +0 -240
  1573. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/Util.pm +0 -72
  1574. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI/XSAccessor.pm +0 -165
  1575. package/Binaries/Perl/Windows/X64/deps/lib/perl5/PPI.pm +0 -822
  1576. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Safe/Isa.pm +0 -213
  1577. package/Binaries/Perl/Windows/X64/deps/lib/perl5/Test/Fatal.pm +0 -477
  1578. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Common.pm +0 -273
  1579. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Constructor.pm +0 -435
  1580. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Dumper.pm +0 -283
  1581. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Emitter.pm +0 -1165
  1582. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Exception.pm +0 -79
  1583. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Grammar.pm +0 -2150
  1584. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Highlight.pm +0 -235
  1585. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Lexer.pm +0 -962
  1586. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Loader.pm +0 -103
  1587. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Parser.pm +0 -1469
  1588. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Perl.pm +0 -83
  1589. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Reader.pm +0 -78
  1590. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Render.pm +0 -155
  1591. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Representer.pm +0 -230
  1592. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Binary.pm +0 -102
  1593. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Catchall.pm +0 -76
  1594. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Core.pm +0 -155
  1595. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Failsafe.pm +0 -71
  1596. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Include.pm +0 -259
  1597. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/JSON.pm +0 -259
  1598. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Merge.pm +0 -109
  1599. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Perl.pm +0 -1004
  1600. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/Tie/IxHash.pm +0 -156
  1601. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema/YAML1_1.pm +0 -249
  1602. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Schema.pm +0 -447
  1603. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Type/MergeKey.pm +0 -40
  1604. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Writer/File.pm +0 -104
  1605. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP/Writer.pm +0 -89
  1606. package/Binaries/Perl/Windows/X64/deps/lib/perl5/YAML/PP.pm +0 -1547
  1607. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/Exception.pm +0 -29
  1608. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/ExceptionSerializer.pm +0 -25
  1609. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/ExceptionThrower.pm +0 -40
  1610. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/SdkExceptionHelper.pm +0 -93
  1611. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/AbstractHandler.pm +0 -11
  1612. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/AbstractCommandHandler.pm +0 -48
  1613. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetItemHandler.pm +0 -38
  1614. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetRankHandler.pm +0 -29
  1615. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetSizeHandler.pm +0 -37
  1616. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ArraySetItemHandler.pm +0 -40
  1617. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/CastingHandler.pm +0 -22
  1618. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/CreateClassInstanceHandler.pm +0 -37
  1619. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/DestructReferenceHandler.pm +0 -39
  1620. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/GetInstanceFieldHandler.pm +0 -39
  1621. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/GetStaticFieldHandler.pm +0 -40
  1622. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/GetTypeHandler.pm +0 -40
  1623. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeGlobalFunctionHandler.pm +0 -63
  1624. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeInstanceMethodHandler.pm +0 -51
  1625. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeStaticMethodHandler.pm +0 -51
  1626. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/LoadLibraryHandler.pm +0 -42
  1627. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ResolveInstanceHandler.pm +0 -38
  1628. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/SetInstanceFieldHandler.pm +0 -40
  1629. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/SetStaticFieldHandler.pm +0 -42
  1630. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/CommandHandler/ValueHandler.pm +0 -29
  1631. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/HandlerDictionary.pm +0 -22
  1632. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/PerlHandler.pm +0 -174
  1633. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/ReferencesCache.pm +0 -43
  1634. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +0 -43
  1635. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +0 -203
  1636. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +0 -86
  1637. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +0 -82
  1638. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +0 -142
  1639. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Receiver/Receiver.pm +0 -38
  1640. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +0 -28
  1641. package/Binaries/Perl/Windows/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +0 -128
  1642. package/Binaries/Perl/Windows/X64/lib/Javonet/Javonet.pm +0 -80
  1643. package/Binaries/Perl/Windows/X64/lib/Javonet/JavonetPerlSdk.pm +0 -2
  1644. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +0 -101
  1645. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/PerlCommandType.pm +0 -56
  1646. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/RuntimeLib.pm +0 -25
  1647. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/RuntimeLogger.pm +0 -34
  1648. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/StringEncodingMode.pm +0 -20
  1649. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/Type.pm +0 -28
  1650. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractEnumInvocationContext.pm +0 -22
  1651. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInstanceContext.pm +0 -18
  1652. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInvocationContext.pm +0 -13
  1653. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractMethodInvocationContext.pm +0 -18
  1654. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractRuntimeContext.pm +0 -17
  1655. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractRuntimeFactory.pm +0 -24
  1656. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractTypeContext.pm +0 -15
  1657. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +0 -19
  1658. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -450
  1659. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -292
  1660. package/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +0 -104
  1661. package/Binaries/Python/javonet/core/__init__.py +0 -0
  1662. package/Binaries/Python/javonet/core/callback/__init__.py +0 -0
  1663. package/Binaries/Python/javonet/core/callback/callbackFunc.py +0 -7
  1664. package/Binaries/Python/javonet/core/delegateCache/DelegatesCache.py +0 -39
  1665. package/Binaries/Python/javonet/core/delegateCache/__init__.py +0 -0
  1666. package/Binaries/Python/javonet/core/generator/__init__.py +0 -0
  1667. package/Binaries/Python/javonet/core/generator/handler/AbstractGeneretatorHandler.py +0 -8
  1668. package/Binaries/Python/javonet/core/generator/handler/CreateInstanceGeneratorHandler.py +0 -44
  1669. package/Binaries/Python/javonet/core/generator/handler/GeneratorHandler.py +0 -65
  1670. package/Binaries/Python/javonet/core/generator/handler/GetInstanceFieldGeneratorHandler.py +0 -36
  1671. package/Binaries/Python/javonet/core/generator/handler/GetStaticFieldGeneratorHandler.py +0 -39
  1672. package/Binaries/Python/javonet/core/generator/handler/GetTypeGeneratorHandler.py +0 -92
  1673. package/Binaries/Python/javonet/core/generator/handler/Handlers.py +0 -59
  1674. package/Binaries/Python/javonet/core/generator/handler/InvokeInstanceMethodGeneratorHandler.py +0 -53
  1675. package/Binaries/Python/javonet/core/generator/handler/InvokeStaticMethodGeneratorHandler.py +0 -54
  1676. package/Binaries/Python/javonet/core/generator/handler/__init__.py +0 -0
  1677. package/Binaries/Python/javonet/core/generator/handler/shared/SharedArgumentNameHandler.py +0 -12
  1678. package/Binaries/Python/javonet/core/generator/handler/shared/SharedClassInstanceHandler.py +0 -12
  1679. package/Binaries/Python/javonet/core/generator/handler/shared/SharedClassNameHandler.py +0 -31
  1680. package/Binaries/Python/javonet/core/generator/handler/shared/SharedMethodNameHandler.py +0 -30
  1681. package/Binaries/Python/javonet/core/generator/handler/shared/SharedModifierHandler.py +0 -21
  1682. package/Binaries/Python/javonet/core/generator/handler/shared/SharedReturnTypeHandler.py +0 -13
  1683. package/Binaries/Python/javonet/core/generator/handler/shared/SharedTypeHandler.py +0 -57
  1684. package/Binaries/Python/javonet/core/generator/handler/shared/__init__.py +0 -0
  1685. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedBodyHandler.py +0 -10
  1686. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.py +0 -21
  1687. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.py +0 -16
  1688. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.py +0 -22
  1689. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedGetTypeBodyHandler.py +0 -16
  1690. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.py +0 -47
  1691. package/Binaries/Python/javonet/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.py +0 -55
  1692. package/Binaries/Python/javonet/core/generator/handler/shared/body/__init__.py +0 -0
  1693. package/Binaries/Python/javonet/core/generator/internal/CommonGenerator.py +0 -23
  1694. package/Binaries/Python/javonet/core/generator/internal/PythonStringBuilder.py +0 -15
  1695. package/Binaries/Python/javonet/core/generator/internal/SharedHandlerType.py +0 -12
  1696. package/Binaries/Python/javonet/core/generator/internal/__init__.py +0 -0
  1697. package/Binaries/Python/javonet/core/handler/AbstractCommandHandler.py +0 -20
  1698. package/Binaries/Python/javonet/core/handler/AbstractHandler.py +0 -3
  1699. package/Binaries/Python/javonet/core/handler/ArrayGetItemHandler.py +0 -27
  1700. package/Binaries/Python/javonet/core/handler/ArrayGetRankHandler.py +0 -25
  1701. package/Binaries/Python/javonet/core/handler/ArrayGetSizeHandler.py +0 -24
  1702. package/Binaries/Python/javonet/core/handler/ArrayHandler.py +0 -13
  1703. package/Binaries/Python/javonet/core/handler/ArraySetItemHandler.py +0 -39
  1704. package/Binaries/Python/javonet/core/handler/CastingHandler.py +0 -6
  1705. package/Binaries/Python/javonet/core/handler/CreateClassInstanceHandler.py +0 -22
  1706. package/Binaries/Python/javonet/core/handler/DestructReferenceHandler.py +0 -13
  1707. package/Binaries/Python/javonet/core/handler/EnableNamespaceHandler.py +0 -28
  1708. package/Binaries/Python/javonet/core/handler/EnableTypeHandler.py +0 -28
  1709. package/Binaries/Python/javonet/core/handler/GetEnumItemHandler.py +0 -29
  1710. package/Binaries/Python/javonet/core/handler/GetEnumNameHandler.py +0 -22
  1711. package/Binaries/Python/javonet/core/handler/GetEnumValueHandler.py +0 -22
  1712. package/Binaries/Python/javonet/core/handler/GetInstanceFieldHandler.py +0 -27
  1713. package/Binaries/Python/javonet/core/handler/GetInstanceMethodAsDelegateHandler.py +0 -29
  1714. package/Binaries/Python/javonet/core/handler/GetStaticFieldHandler.py +0 -27
  1715. package/Binaries/Python/javonet/core/handler/GetStaticMethodAsDelegateHandler.py +0 -31
  1716. package/Binaries/Python/javonet/core/handler/GetTypeHandler.py +0 -85
  1717. package/Binaries/Python/javonet/core/handler/Handler.py +0 -100
  1718. package/Binaries/Python/javonet/core/handler/HandlerDictionary.py +0 -8
  1719. package/Binaries/Python/javonet/core/handler/InvokeDelegateHandler.py +0 -27
  1720. package/Binaries/Python/javonet/core/handler/InvokeGlobalFunctionHandler.py +0 -46
  1721. package/Binaries/Python/javonet/core/handler/InvokeInstanceMethodHandler.py +0 -31
  1722. package/Binaries/Python/javonet/core/handler/InvokeStaticMethodHandler.py +0 -33
  1723. package/Binaries/Python/javonet/core/handler/LoadLibraryHandler.py +0 -31
  1724. package/Binaries/Python/javonet/core/handler/PassDelegateHandler.py +0 -21
  1725. package/Binaries/Python/javonet/core/handler/ResolveInstanceHandler.py +0 -19
  1726. package/Binaries/Python/javonet/core/handler/SetInstanceFieldHandler.py +0 -29
  1727. package/Binaries/Python/javonet/core/handler/SetStaticFieldHandler.py +0 -29
  1728. package/Binaries/Python/javonet/core/handler/ValueHandler.py +0 -6
  1729. package/Binaries/Python/javonet/core/handler/__init__.py +0 -0
  1730. package/Binaries/Python/javonet/core/interpreter/Interpreter.py +0 -55
  1731. package/Binaries/Python/javonet/core/interpreter/__init__.py +0 -0
  1732. package/Binaries/Python/javonet/core/namespaceCache/NamespaceCache.py +0 -44
  1733. package/Binaries/Python/javonet/core/namespaceCache/__init__.py +0 -0
  1734. package/Binaries/Python/javonet/core/protocol/CommandDeserializer.py +0 -161
  1735. package/Binaries/Python/javonet/core/protocol/CommandSerializer.py +0 -29
  1736. package/Binaries/Python/javonet/core/protocol/TypeDeserializer.py +0 -64
  1737. package/Binaries/Python/javonet/core/protocol/TypeSerializer.py +0 -96
  1738. package/Binaries/Python/javonet/core/protocol/__init__.py +0 -0
  1739. package/Binaries/Python/javonet/core/receiver/Receiver.py +0 -42
  1740. package/Binaries/Python/javonet/core/receiver/__init__.py +0 -0
  1741. package/Binaries/Python/javonet/core/referenceCache/ReferencesCache.py +0 -39
  1742. package/Binaries/Python/javonet/core/referenceCache/__init__.py +0 -0
  1743. package/Binaries/Python/javonet/core/transmitter/Transmitter.py +0 -20
  1744. package/Binaries/Python/javonet/core/transmitter/TransmitterWrapper.py +0 -112
  1745. package/Binaries/Python/javonet/core/transmitter/__init__.py +0 -0
  1746. package/Binaries/Python/javonet/core/typeCache/TypeCache.py +0 -44
  1747. package/Binaries/Python/javonet/core/typeCache/__init__.py +0 -0
  1748. package/Binaries/Python/javonet/core/webSocketClient/WebSocketClient.py +0 -32
  1749. package/Binaries/Python/javonet/utils/Command.py +0 -90
  1750. package/Binaries/Python/javonet/utils/CommandType.py +0 -46
  1751. package/Binaries/Python/javonet/utils/ConnectionType.py +0 -7
  1752. package/Binaries/Python/javonet/utils/ExceptionType.py +0 -55
  1753. package/Binaries/Python/javonet/utils/RuntimeLogger.py +0 -30
  1754. package/Binaries/Python/javonet/utils/RuntimeName.py +0 -16
  1755. package/Binaries/Python/javonet/utils/RuntimeNameHandler.py +0 -26
  1756. package/Binaries/Python/javonet/utils/StringEncodingMode.py +0 -8
  1757. package/Binaries/Python/javonet/utils/Type.py +0 -16
  1758. package/Binaries/Python/javonet/utils/UtilsConst.py +0 -42
  1759. package/Binaries/Python/javonet/utils/__init__.py +0 -0
  1760. package/Binaries/Python/javonet/utils/connectionData/IConnectionData.py +0 -18
  1761. package/Binaries/Python/javonet/utils/connectionData/InMemoryConnectionData.py +0 -23
  1762. package/Binaries/Python/javonet/utils/connectionData/TcpConnectionData.py +0 -67
  1763. package/Binaries/Python/javonet/utils/connectionData/WsConnectionData.py +0 -30
  1764. package/Binaries/Python/javonet/utils/connectionData/__init__.py +0 -0
  1765. package/Binaries/Python/javonet/utils/exception/ExceptionSerializer.py +0 -60
  1766. package/Binaries/Python/javonet/utils/exception/ExceptionThrower.py +0 -81
  1767. package/Binaries/Python/javonet/utils/exception/JavonetException.py +0 -10
  1768. package/Binaries/Python/javonet/utils/exception/__init__.py +0 -0
  1769. package/Binaries/Python/javonet/utils/messageHelper/MessageHelper.py +0 -86
  1770. package/Binaries/Python/javonet/utils/messageHelper/__init__.py +0 -0
  1771. package/Binaries/Ruby/Linux/X64/core/handler/abstract_command_handler.rb +0 -24
  1772. package/Binaries/Ruby/Linux/X64/core/handler/abstract_handler.rb +0 -5
  1773. package/Binaries/Ruby/Linux/X64/core/handler/array_get_item_handler.rb +0 -47
  1774. package/Binaries/Ruby/Linux/X64/core/handler/array_get_rank_handler.rb +0 -23
  1775. package/Binaries/Ruby/Linux/X64/core/handler/array_get_size_handler.rb +0 -37
  1776. package/Binaries/Ruby/Linux/X64/core/handler/array_handler.rb +0 -12
  1777. package/Binaries/Ruby/Linux/X64/core/handler/array_set_item_handler.rb +0 -47
  1778. package/Binaries/Ruby/Linux/X64/core/handler/casting_handler.rb +0 -11
  1779. package/Binaries/Ruby/Linux/X64/core/handler/create_class_instance_handler.rb +0 -34
  1780. package/Binaries/Ruby/Linux/X64/core/handler/destruct_reference_handler.rb +0 -21
  1781. package/Binaries/Ruby/Linux/X64/core/handler/enable_namespace_handler.rb +0 -31
  1782. package/Binaries/Ruby/Linux/X64/core/handler/enable_type_handler.rb +0 -32
  1783. package/Binaries/Ruby/Linux/X64/core/handler/get_instance_field_handler.rb +0 -34
  1784. package/Binaries/Ruby/Linux/X64/core/handler/get_static_field_handler.rb +0 -34
  1785. package/Binaries/Ruby/Linux/X64/core/handler/get_type_handler.rb +0 -70
  1786. package/Binaries/Ruby/Linux/X64/core/handler/handler.rb +0 -111
  1787. package/Binaries/Ruby/Linux/X64/core/handler/handler_dictionary.rb +0 -8
  1788. package/Binaries/Ruby/Linux/X64/core/handler/invoke_global_function_handler.rb +0 -45
  1789. package/Binaries/Ruby/Linux/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  1790. package/Binaries/Ruby/Linux/X64/core/handler/invoke_static_method_handler.rb +0 -38
  1791. package/Binaries/Ruby/Linux/X64/core/handler/load_library_handler.rb +0 -33
  1792. package/Binaries/Ruby/Linux/X64/core/handler/resolve_instance_handler.rb +0 -24
  1793. package/Binaries/Ruby/Linux/X64/core/handler/set_instance_field_handler.rb +0 -35
  1794. package/Binaries/Ruby/Linux/X64/core/handler/set_static_field_handler.rb +0 -31
  1795. package/Binaries/Ruby/Linux/X64/core/handler/value_handler.rb +0 -7
  1796. package/Binaries/Ruby/Linux/X64/core/interpreter/interpreter.rb +0 -25
  1797. package/Binaries/Ruby/Linux/X64/core/namespace_cache/namespace_cache.rb +0 -40
  1798. package/Binaries/Ruby/Linux/X64/core/protocol/command_deserializer.rb +0 -178
  1799. package/Binaries/Ruby/Linux/X64/core/protocol/command_serializer.rb +0 -30
  1800. package/Binaries/Ruby/Linux/X64/core/protocol/type_deserializer.rb +0 -65
  1801. package/Binaries/Ruby/Linux/X64/core/protocol/type_serializer.rb +0 -98
  1802. package/Binaries/Ruby/Linux/X64/core/receiver/receiver.rb +0 -22
  1803. package/Binaries/Ruby/Linux/X64/core/reference_cache/references_cache.rb +0 -33
  1804. package/Binaries/Ruby/Linux/X64/core/transmitter/transmitter.rb +0 -58
  1805. package/Binaries/Ruby/Linux/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  1806. package/Binaries/Ruby/Linux/X64/core/type_cache/type_cache.rb +0 -40
  1807. package/Binaries/Ruby/Linux/X64/external_lib/random/formatter.rb +0 -373
  1808. package/Binaries/Ruby/Linux/X64/external_lib/securerandom.rb +0 -96
  1809. package/Binaries/Ruby/Linux/X64/external_lib/singleton.rb +0 -172
  1810. package/Binaries/Ruby/Linux/X64/utils/command.rb +0 -93
  1811. package/Binaries/Ruby/Linux/X64/utils/command_type.rb +0 -135
  1812. package/Binaries/Ruby/Linux/X64/utils/connection_type.rb +0 -4
  1813. package/Binaries/Ruby/Linux/X64/utils/exceptions/exception_serializer.rb +0 -93
  1814. package/Binaries/Ruby/Linux/X64/utils/exceptions/exception_thrower.rb +0 -65
  1815. package/Binaries/Ruby/Linux/X64/utils/exceptions/exception_type.rb +0 -10
  1816. package/Binaries/Ruby/Linux/X64/utils/runtime_logger.rb +0 -30
  1817. package/Binaries/Ruby/Linux/X64/utils/runtime_name.rb +0 -11
  1818. package/Binaries/Ruby/Linux/X64/utils/runtime_name_handler.rb +0 -34
  1819. package/Binaries/Ruby/Linux/X64/utils/string_encoding_mode.rb +0 -6
  1820. package/Binaries/Ruby/Linux/X64/utils/tcp_connection_data.rb +0 -37
  1821. package/Binaries/Ruby/Linux/X64/utils/type.rb +0 -14
  1822. package/Binaries/Ruby/MacOs/X64/core/handler/abstract_command_handler.rb +0 -24
  1823. package/Binaries/Ruby/MacOs/X64/core/handler/abstract_handler.rb +0 -5
  1824. package/Binaries/Ruby/MacOs/X64/core/handler/array_get_item_handler.rb +0 -47
  1825. package/Binaries/Ruby/MacOs/X64/core/handler/array_get_rank_handler.rb +0 -23
  1826. package/Binaries/Ruby/MacOs/X64/core/handler/array_get_size_handler.rb +0 -37
  1827. package/Binaries/Ruby/MacOs/X64/core/handler/array_handler.rb +0 -12
  1828. package/Binaries/Ruby/MacOs/X64/core/handler/array_set_item_handler.rb +0 -47
  1829. package/Binaries/Ruby/MacOs/X64/core/handler/casting_handler.rb +0 -11
  1830. package/Binaries/Ruby/MacOs/X64/core/handler/create_class_instance_handler.rb +0 -34
  1831. package/Binaries/Ruby/MacOs/X64/core/handler/destruct_reference_handler.rb +0 -21
  1832. package/Binaries/Ruby/MacOs/X64/core/handler/enable_namespace_handler.rb +0 -31
  1833. package/Binaries/Ruby/MacOs/X64/core/handler/enable_type_handler.rb +0 -32
  1834. package/Binaries/Ruby/MacOs/X64/core/handler/get_instance_field_handler.rb +0 -34
  1835. package/Binaries/Ruby/MacOs/X64/core/handler/get_static_field_handler.rb +0 -34
  1836. package/Binaries/Ruby/MacOs/X64/core/handler/get_type_handler.rb +0 -70
  1837. package/Binaries/Ruby/MacOs/X64/core/handler/handler.rb +0 -111
  1838. package/Binaries/Ruby/MacOs/X64/core/handler/handler_dictionary.rb +0 -8
  1839. package/Binaries/Ruby/MacOs/X64/core/handler/invoke_global_function_handler.rb +0 -45
  1840. package/Binaries/Ruby/MacOs/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  1841. package/Binaries/Ruby/MacOs/X64/core/handler/invoke_static_method_handler.rb +0 -38
  1842. package/Binaries/Ruby/MacOs/X64/core/handler/load_library_handler.rb +0 -33
  1843. package/Binaries/Ruby/MacOs/X64/core/handler/resolve_instance_handler.rb +0 -24
  1844. package/Binaries/Ruby/MacOs/X64/core/handler/set_instance_field_handler.rb +0 -35
  1845. package/Binaries/Ruby/MacOs/X64/core/handler/set_static_field_handler.rb +0 -31
  1846. package/Binaries/Ruby/MacOs/X64/core/handler/value_handler.rb +0 -7
  1847. package/Binaries/Ruby/MacOs/X64/core/interpreter/interpreter.rb +0 -25
  1848. package/Binaries/Ruby/MacOs/X64/core/namespace_cache/namespace_cache.rb +0 -40
  1849. package/Binaries/Ruby/MacOs/X64/core/protocol/command_deserializer.rb +0 -178
  1850. package/Binaries/Ruby/MacOs/X64/core/protocol/command_serializer.rb +0 -30
  1851. package/Binaries/Ruby/MacOs/X64/core/protocol/type_deserializer.rb +0 -65
  1852. package/Binaries/Ruby/MacOs/X64/core/protocol/type_serializer.rb +0 -98
  1853. package/Binaries/Ruby/MacOs/X64/core/receiver/receiver.rb +0 -22
  1854. package/Binaries/Ruby/MacOs/X64/core/reference_cache/references_cache.rb +0 -33
  1855. package/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter.rb +0 -58
  1856. package/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  1857. package/Binaries/Ruby/MacOs/X64/core/type_cache/type_cache.rb +0 -40
  1858. package/Binaries/Ruby/MacOs/X64/external_lib/random/formatter.rb +0 -373
  1859. package/Binaries/Ruby/MacOs/X64/external_lib/securerandom.rb +0 -96
  1860. package/Binaries/Ruby/MacOs/X64/external_lib/singleton.rb +0 -172
  1861. package/Binaries/Ruby/MacOs/X64/utils/command.rb +0 -93
  1862. package/Binaries/Ruby/MacOs/X64/utils/command_type.rb +0 -135
  1863. package/Binaries/Ruby/MacOs/X64/utils/connection_type.rb +0 -4
  1864. package/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_serializer.rb +0 -93
  1865. package/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_thrower.rb +0 -65
  1866. package/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_type.rb +0 -10
  1867. package/Binaries/Ruby/MacOs/X64/utils/runtime_logger.rb +0 -30
  1868. package/Binaries/Ruby/MacOs/X64/utils/runtime_name.rb +0 -11
  1869. package/Binaries/Ruby/MacOs/X64/utils/runtime_name_handler.rb +0 -34
  1870. package/Binaries/Ruby/MacOs/X64/utils/string_encoding_mode.rb +0 -6
  1871. package/Binaries/Ruby/MacOs/X64/utils/tcp_connection_data.rb +0 -37
  1872. package/Binaries/Ruby/MacOs/X64/utils/type.rb +0 -14
  1873. package/Binaries/Ruby/Windows/X64/core/handler/abstract_command_handler.rb +0 -24
  1874. package/Binaries/Ruby/Windows/X64/core/handler/abstract_handler.rb +0 -5
  1875. package/Binaries/Ruby/Windows/X64/core/handler/array_get_item_handler.rb +0 -47
  1876. package/Binaries/Ruby/Windows/X64/core/handler/array_get_rank_handler.rb +0 -23
  1877. package/Binaries/Ruby/Windows/X64/core/handler/array_get_size_handler.rb +0 -37
  1878. package/Binaries/Ruby/Windows/X64/core/handler/array_handler.rb +0 -12
  1879. package/Binaries/Ruby/Windows/X64/core/handler/array_set_item_handler.rb +0 -47
  1880. package/Binaries/Ruby/Windows/X64/core/handler/casting_handler.rb +0 -11
  1881. package/Binaries/Ruby/Windows/X64/core/handler/create_class_instance_handler.rb +0 -34
  1882. package/Binaries/Ruby/Windows/X64/core/handler/destruct_reference_handler.rb +0 -21
  1883. package/Binaries/Ruby/Windows/X64/core/handler/enable_namespace_handler.rb +0 -31
  1884. package/Binaries/Ruby/Windows/X64/core/handler/enable_type_handler.rb +0 -32
  1885. package/Binaries/Ruby/Windows/X64/core/handler/get_instance_field_handler.rb +0 -34
  1886. package/Binaries/Ruby/Windows/X64/core/handler/get_static_field_handler.rb +0 -34
  1887. package/Binaries/Ruby/Windows/X64/core/handler/get_type_handler.rb +0 -70
  1888. package/Binaries/Ruby/Windows/X64/core/handler/handler.rb +0 -111
  1889. package/Binaries/Ruby/Windows/X64/core/handler/handler_dictionary.rb +0 -8
  1890. package/Binaries/Ruby/Windows/X64/core/handler/invoke_global_function_handler.rb +0 -45
  1891. package/Binaries/Ruby/Windows/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  1892. package/Binaries/Ruby/Windows/X64/core/handler/invoke_static_method_handler.rb +0 -38
  1893. package/Binaries/Ruby/Windows/X64/core/handler/load_library_handler.rb +0 -33
  1894. package/Binaries/Ruby/Windows/X64/core/handler/resolve_instance_handler.rb +0 -24
  1895. package/Binaries/Ruby/Windows/X64/core/handler/set_instance_field_handler.rb +0 -35
  1896. package/Binaries/Ruby/Windows/X64/core/handler/set_static_field_handler.rb +0 -31
  1897. package/Binaries/Ruby/Windows/X64/core/handler/value_handler.rb +0 -7
  1898. package/Binaries/Ruby/Windows/X64/core/interpreter/interpreter.rb +0 -25
  1899. package/Binaries/Ruby/Windows/X64/core/namespace_cache/namespace_cache.rb +0 -40
  1900. package/Binaries/Ruby/Windows/X64/core/protocol/command_deserializer.rb +0 -178
  1901. package/Binaries/Ruby/Windows/X64/core/protocol/command_serializer.rb +0 -30
  1902. package/Binaries/Ruby/Windows/X64/core/protocol/type_deserializer.rb +0 -65
  1903. package/Binaries/Ruby/Windows/X64/core/protocol/type_serializer.rb +0 -98
  1904. package/Binaries/Ruby/Windows/X64/core/receiver/receiver.rb +0 -22
  1905. package/Binaries/Ruby/Windows/X64/core/reference_cache/references_cache.rb +0 -33
  1906. package/Binaries/Ruby/Windows/X64/core/transmitter/transmitter.rb +0 -58
  1907. package/Binaries/Ruby/Windows/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  1908. package/Binaries/Ruby/Windows/X64/core/type_cache/type_cache.rb +0 -40
  1909. package/Binaries/Ruby/Windows/X64/external_lib/random/formatter.rb +0 -373
  1910. package/Binaries/Ruby/Windows/X64/external_lib/securerandom.rb +0 -96
  1911. package/Binaries/Ruby/Windows/X64/external_lib/singleton.rb +0 -172
  1912. package/Binaries/Ruby/Windows/X64/utils/command.rb +0 -93
  1913. package/Binaries/Ruby/Windows/X64/utils/command_type.rb +0 -135
  1914. package/Binaries/Ruby/Windows/X64/utils/connection_type.rb +0 -4
  1915. package/Binaries/Ruby/Windows/X64/utils/exceptions/exception_serializer.rb +0 -93
  1916. package/Binaries/Ruby/Windows/X64/utils/exceptions/exception_thrower.rb +0 -65
  1917. package/Binaries/Ruby/Windows/X64/utils/exceptions/exception_type.rb +0 -10
  1918. package/Binaries/Ruby/Windows/X64/utils/runtime_logger.rb +0 -30
  1919. package/Binaries/Ruby/Windows/X64/utils/runtime_name.rb +0 -11
  1920. package/Binaries/Ruby/Windows/X64/utils/runtime_name_handler.rb +0 -34
  1921. package/Binaries/Ruby/Windows/X64/utils/string_encoding_mode.rb +0 -6
  1922. package/Binaries/Ruby/Windows/X64/utils/tcp_connection_data.rb +0 -37
  1923. package/Binaries/Ruby/Windows/X64/utils/type.rb +0 -14
  1924. package/Binaries/version.txt +0 -1
  1925. package/addon/JavonetNodejsRuntimeAddon.cpp +0 -299
  1926. package/addon/JavonetNodejsRuntimeAddon.h +0 -70
  1927. package/binding.gyp +0 -8
  1928. package/dist/Javonet.d.ts +0 -4821
  1929. package/dist/index.js +0 -66
  1930. package/dist/lib/core/delegatesCache/DelegatesCache.js +0 -35
  1931. package/dist/lib/core/handler/AbstractHandler.js +0 -41
  1932. package/dist/lib/core/handler/ArrayGetItemHandler.js +0 -38
  1933. package/dist/lib/core/handler/ArrayGetRankHandler.js +0 -28
  1934. package/dist/lib/core/handler/ArrayGetSizeHandler.js +0 -29
  1935. package/dist/lib/core/handler/ArrayHandler.js +0 -18
  1936. package/dist/lib/core/handler/ArraySetItemHandler.js +0 -43
  1937. package/dist/lib/core/handler/CastingHandler.js +0 -10
  1938. package/dist/lib/core/handler/ConvertTypeHandler.js +0 -38
  1939. package/dist/lib/core/handler/CreateClassInstanceHandler.js +0 -36
  1940. package/dist/lib/core/handler/DestructReferenceHandler.js +0 -19
  1941. package/dist/lib/core/handler/EnableNamespaceHandler.js +0 -34
  1942. package/dist/lib/core/handler/EnableTypeHandler.js +0 -35
  1943. package/dist/lib/core/handler/GetGlobalStaticFieldHandler.js +0 -37
  1944. package/dist/lib/core/handler/GetInstanceFieldHandler.js +0 -35
  1945. package/dist/lib/core/handler/GetInstanceMethodAsDelegateHandler.js +0 -73
  1946. package/dist/lib/core/handler/GetStaticFieldHandler.js +0 -36
  1947. package/dist/lib/core/handler/GetStaticMethodAsDelegateHandler.js +0 -74
  1948. package/dist/lib/core/handler/GetTypeHandler.js +0 -63
  1949. package/dist/lib/core/handler/Handler.js +0 -98
  1950. package/dist/lib/core/handler/InvokeDelegateHandler.js +0 -36
  1951. package/dist/lib/core/handler/InvokeGlobalFunctionHandler.js +0 -39
  1952. package/dist/lib/core/handler/InvokeInstanceMethodHandler.js +0 -38
  1953. package/dist/lib/core/handler/InvokeStaticMethodHandler.js +0 -38
  1954. package/dist/lib/core/handler/LoadLibraryHandler.js +0 -48
  1955. package/dist/lib/core/handler/PassDelegateHandler.js +0 -157
  1956. package/dist/lib/core/handler/ResolveReferenceHandler.js +0 -13
  1957. package/dist/lib/core/handler/SetGlobalStaticFieldHandler.js +0 -38
  1958. package/dist/lib/core/handler/SetInstanceFieldHandler.js +0 -35
  1959. package/dist/lib/core/handler/SetStaticFieldHandler.js +0 -33
  1960. package/dist/lib/core/handler/ValueHandler.js +0 -13
  1961. package/dist/lib/core/interpreter/Interpreter.js +0 -142
  1962. package/dist/lib/core/namespaceCache/NamespaceCache.js +0 -39
  1963. package/dist/lib/core/protocol/CommandDeserializer.js +0 -181
  1964. package/dist/lib/core/protocol/CommandSerializer.js +0 -50
  1965. package/dist/lib/core/protocol/TypeDeserializer.js +0 -83
  1966. package/dist/lib/core/protocol/TypeSerializer.js +0 -143
  1967. package/dist/lib/core/receiver/Receiver.js +0 -32
  1968. package/dist/lib/core/receiver/ReceiverNative.js +0 -13
  1969. package/dist/lib/core/referenceCache/ReferencesCache.js +0 -30
  1970. package/dist/lib/core/transmitter/Transmitter.js +0 -21
  1971. package/dist/lib/core/transmitter/TransmitterWebsocket.js +0 -33
  1972. package/dist/lib/core/transmitter/TransmitterWrapper.js +0 -47
  1973. package/dist/lib/core/typeCache/TypeCache.js +0 -39
  1974. package/dist/lib/core/webSocketClient/WebSocketClient.js +0 -136
  1975. package/dist/lib/declarations.d.ts +0 -64
  1976. package/dist/lib/sdk/ConfigRuntimeFactory.js +0 -145
  1977. package/dist/lib/sdk/InvocationContext.js +0 -485
  1978. package/dist/lib/sdk/Javonet.js +0 -105
  1979. package/dist/lib/sdk/RuntimeContext.js +0 -300
  1980. package/dist/lib/sdk/RuntimeFactory.js +0 -78
  1981. package/dist/lib/sdk/tools/JsonFileResolver.js +0 -101
  1982. package/dist/lib/sdk/tools/SdkExceptionHelper.js +0 -79
  1983. package/dist/lib/utils/Command.js +0 -69
  1984. package/dist/lib/utils/CommandType.js +0 -47
  1985. package/dist/lib/utils/ConnectionType.js +0 -8
  1986. package/dist/lib/utils/CustomError.js +0 -8
  1987. package/dist/lib/utils/ExceptionType.js +0 -13
  1988. package/dist/lib/utils/RuntimeLogger.js +0 -30
  1989. package/dist/lib/utils/RuntimeName.js +0 -14
  1990. package/dist/lib/utils/RuntimeNameHandler.js +0 -34
  1991. package/dist/lib/utils/StringEncodingMode.js +0 -9
  1992. package/dist/lib/utils/Type.js +0 -17
  1993. package/dist/lib/utils/TypesConverter.js +0 -91
  1994. package/dist/lib/utils/connectionData/IConnectionData.js +0 -15
  1995. package/dist/lib/utils/connectionData/InMemoryConnectionData.js +0 -35
  1996. package/dist/lib/utils/connectionData/TcpConnectionData.js +0 -77
  1997. package/dist/lib/utils/connectionData/WsConnectionData.js +0 -50
  1998. package/dist/lib/utils/exception/ExceptionSerializer.js +0 -64
  1999. package/dist/lib/utils/exception/ExceptionThrower.js +0 -95
  2000. package/dist/lib/utils/guid/generateGuid.js +0 -9
  2001. package/dist/lib/utils/uuid/REGEX.js +0 -2
  2002. package/dist/lib/utils/uuid/rng.js +0 -12
  2003. package/dist/lib/utils/uuid/stringify.js +0 -51
  2004. package/dist/lib/utils/uuid/v4.js +0 -27
  2005. package/dist/lib/utils/uuid/validate.js +0 -6
  2006. package/lib/sdk/tools/JsonFileResolver.js +0 -101
  2007. package/lib/sdk/tools/SdkExceptionHelper.js +0 -79
  2008. package/lib/utils/TypesConverter.js +0 -91
  2009. package/lib/utils/connectionData/TcpConnectionData.js +0 -77
  2010. package/lib/utils/uuid/REGEX.js +0 -2
  2011. package/lib/utils/uuid/rng.js +0 -12
  2012. package/lib/utils/uuid/stringify.js +0 -51
  2013. package/lib/utils/uuid/v4.js +0 -27
  2014. package/lib/utils/uuid/validate.js +0 -6
@@ -1,3257 +0,0 @@
1
- ##----------------------------------------------------------------------------
2
- ## A real Try Catch Block Implementation Using Perl Filter - ~/lib/Nice/Try.pm
3
- ## Version v1.3.15
4
- ## Copyright(c) 2024 DEGUEST Pte. Ltd.
5
- ## Author: Jacques Deguest <jack@deguest.jp>
6
- ## Created 2020/05/17
7
- ## Modified 2024/11/07
8
- ## All rights reserved
9
- ##
10
- ## This program is free software; you can redistribute it and/or modify it
11
- ## under the same terms as Perl itself.
12
- ##----------------------------------------------------------------------------
13
- package Nice::Try;
14
- BEGIN
15
- {
16
- require 5.16.0;
17
- use strict;
18
- use warnings;
19
- use warnings::register;
20
- use vars qw(
21
- $CATCH $DIED $EXCEPTION $FINALLY $HAS_CATCH @RETVAL $SENTINEL $TRY $WANTARRAY
22
- $VERSION $ERROR
23
- );
24
- use PPI 1.277;
25
- use Filter::Util::Call;
26
- use Scalar::Util ();
27
- use List::Util ();
28
- use Want ();
29
- our $VERSION = 'v1.3.15';
30
- our $ERROR;
31
- our( $CATCH, $DIED, $EXCEPTION, $FINALLY, $HAS_CATCH, @RETVAL, $SENTINEL, $TRY, $WANTARRAY );
32
- }
33
-
34
- use strict;
35
- use warnings;
36
-
37
- # Taken from Try::Harder version 0.005
38
- our $SENTINEL = bless( {} => __PACKAGE__ . '::SENTINEL' );
39
-
40
- sub import
41
- {
42
- my( $this, @arguments ) = @_ ;
43
- my $class = CORE::caller();
44
- my $hash = { @arguments };
45
- $hash->{debug} = 0 if( !CORE::exists( $hash->{debug} ) );
46
- $hash->{no_filter} = 0 if( !CORE::exists( $hash->{no_filter} ) );
47
- $hash->{debug_code} = 0 if( !CORE::exists( $hash->{debug_code} ) );
48
- $hash->{debug_dump} = 0 if( !CORE::exists( $hash->{debug_dump} ) );
49
- $hash->{dont_want} = 0 if( !CORE::exists( $hash->{dont_want} ) );
50
- # We use the $class to process the __DATA__ or __END__ token section
51
- $hash->{class} = $class;
52
- # We check if we are running under tie and if so we cannot use Want features,
53
- # because they would trigger a segmentation fault.
54
- $hash->{is_tied} = 0;
55
- if( $class->can( 'TIESCALAR' ) || $class->can( 'TIEHASH' ) || $class->can( 'TIEARRAY' ) )
56
- {
57
- $hash->{is_tied} = 1;
58
- }
59
- require overload;
60
- $hash->{is_overloaded} = overload::Overloaded( $class ) ? 1 : 0;
61
- $hash->{no_context} = 0;
62
- # 2021-05-17 (Jacques): the following was a bad idea as it was indiscriminate and
63
- # would also affect use of caller outside of try-catch blocks
64
- # *{"${class}::caller"} = \&{"Nice::Try::caller"};
65
- filter_add( bless( $hash => ( ref( $this ) || $this ) ) );
66
- }
67
-
68
- sub unimport
69
- {
70
- filter_del();
71
- }
72
-
73
- sub caller($;$)
74
- {
75
- my $where = shift( @_ );
76
- my $n = shift( @_ );
77
- # Offsetting our internal call frames
78
- my $map =
79
- {
80
- try => 3,
81
- catch => 3,
82
- finally => 5,
83
- };
84
- my @info = defined( $n ) ? CORE::caller( int( $n ) + $map->{ $where } ) : CORE::caller( 1 + $map->{ $where } );
85
- return( @info );
86
- }
87
-
88
- sub caller_try { return( &Nice::Try::caller( try => @_ ) ); }
89
-
90
- sub caller_catch { return( &Nice::Try::caller( catch => @_ ) ); }
91
-
92
- sub caller_finally { return( &Nice::Try::caller( finally => @_ ) ); }
93
-
94
- sub filter
95
- {
96
- my( $self ) = @_ ;
97
- my( $status, $last_line );
98
- my $line = 0;
99
- my $code = '';
100
- if( $self->{no_filter} )
101
- {
102
- filter_del();
103
- $status = 1;
104
- $self->_message( 3, "Skiping filtering." ) if( $self->{debug} >= 3 );
105
- return( $status );
106
- }
107
- while( $status = filter_read() )
108
- {
109
- # Error
110
- if( $status < 0 )
111
- {
112
- $self->_message( 3, "An error occurred in fiilter, aborting." ) if( $self->{debug} >= 3 );
113
- return( $status );
114
- }
115
- $line++;
116
- $code .= $_;
117
- $_ = '';
118
- }
119
- return( $line ) if( !$line );
120
- unless( $status < 0 )
121
- {
122
- # 2021-06-05 (Jacques): fixes the issue No. 3 <https://gitlab.com/jackdeguest/Nice-Try/issues/3>
123
- # Make sure there is at least a space at the beginning
124
- $code = ' ' . $code;
125
- if( index( $code, 'try' ) != -1 )
126
- {
127
- $self->_message( 4, "Processing $line lines of code." ) if( $self->{debug} >= 4 );
128
- $self->_message( 4, "Processing code:\n${code}" ) if( $self->{debug} >= 5 );
129
- my $doc = PPI::Document->new( \$code, readonly => 1 ) || die( "Unable to parse: ", PPI::Document->errstr, "\n$code\n" );
130
- # Remove pod
131
- # $doc->prune('PPI::Token::Pod');
132
- $self->_browse( $doc ) if( $self->{debug_dump} );
133
- # It is easy for us to do a simple check as to whether there is potentially a __DATA__ or a __END__ token,
134
- # so we avoid wasting resources and time checking it using PPI::Element::find()
135
- if( $doc = $self->_parse( $doc,
136
- {
137
- has_data => ( ( CORE::index( $code, '__DATA__' ) != -1 || CORE::index( $code, '__END__' ) != -1 ) ? 1 : 0 ),
138
- }) )
139
- {
140
- $_ = $doc->serialize;
141
- # $doc->save( "./dev/debug-parsed.pl" );
142
- # $status = 1;
143
- }
144
- # Rollback
145
- else
146
- {
147
- $_ = $code;
148
- # $status = -1;
149
- # filter_del();
150
- }
151
- }
152
- else
153
- {
154
- $self->_message( 4, "There does not seem to be any try block in this code, so skipping." ) if( $self->{debug} >= 4 );
155
- $_ = $code;
156
- }
157
-
158
- if( CORE::length( $last_line ) )
159
- {
160
- $_ .= $last_line;
161
- }
162
- }
163
- unless( $status <= 0 )
164
- {
165
- while( $status = filter_read() )
166
- {
167
- $self->_message( 4, "Reading more line: $_" ) if( $self->{debug} >= 4 );
168
- return( $status ) if( $status < 0 );
169
- $line++;
170
- }
171
- }
172
- # $self->_message( 4, "Resulting code:\n${_}" ) if( $self->{debug} >= 5 );
173
- if( $self->{debug_file} )
174
- {
175
- if( open( my $fh, ">$self->{debug_file}" ) )
176
- {
177
- binmode( $fh, ':utf8' );
178
- print( $fh $_ );
179
- close( $fh );
180
- }
181
- }
182
- return( $line );
183
- }
184
-
185
- sub implement
186
- {
187
- my $self = shift( @_ );
188
- my $code = shift( @_ );
189
- return( $code ) if( !CORE::defined( $code ) || !CORE::length( $code ) );
190
- unless( ref( $self ) )
191
- {
192
- my $opts = ( !@_ || !defined( $_[0] ) )
193
- ? {}
194
- : ref( $_[0] ) eq 'HASH'
195
- ? shift( @_ )
196
- : !( @_ % 2 )
197
- ? { @_ }
198
- : {};
199
- for( qw( debug no_context no_filter debug_code debug_dump debug_file dont_want is_tied is_overloaded ) )
200
- {
201
- $opts->{ $_ } //= 0;
202
- }
203
- $self = bless( $opts => $self );
204
- }
205
- # 2021-06-05 (Jacques): fixes the issue No. 3 <https://gitlab.com/jackdeguest/Nice-Try/issues/3>
206
- # Make sure there is at least a space at the beginning
207
- $code = ' ' . $code;
208
- $self->_message( 4, "Processing ", CORE::length( $code ), " bytes of code." ) if( $self->{debug} >= 4 );
209
- my $doc = PPI::Document->new( \$code, readonly => 1 ) || die( "Unable to parse: ", PPI::Document->errstr, "\n$code\n" );
210
- $self->_browse( $doc ) if( $self->{debug_dump} );
211
- if( $doc = $self->_parse( $doc ) )
212
- {
213
- $code = $doc->serialize;
214
- }
215
- return( $code );
216
- }
217
-
218
- sub _browse
219
- {
220
- my $self = shift( @_ );
221
- my $elem = shift( @_ );
222
- my $level = shift( @_ ) || 0;
223
- if( $self->{debug} >= 4 )
224
- {
225
- $self->_message( 4, "Checking code: ", $self->_serialize( $elem ) ) if( $self->{debug} >= 4 );
226
- $self->_messagef( 4, "PPI element of class %s has children property '%s'.", $elem->class, $elem->{children} ) if( $self->{debug} >= 4 );
227
- }
228
- return if( !$elem->children );
229
- foreach my $e ( $elem->elements )
230
- {
231
- printf( STDERR "%sElement: [%d] class %s, value %s\n", ( '.' x $level ), ( $e->line_number // 'undef' ), ( $e->class // 'undef' ), ( $e->content // 'undef' ) );
232
- if( $e->can('children') && $e->children )
233
- {
234
- $self->_browse( $e, $level + 1 );
235
- }
236
- }
237
- }
238
-
239
- sub _error
240
- {
241
- my $self = shift( @_ );
242
- if( @_ )
243
- {
244
- my $txt = join( '', map( ref( $_ ) eq 'CODE' ? $_->() : $_, @_ ) );
245
- $txt =~ s/[\015\012]+$//g;
246
- $ERROR = $txt;
247
- CORE::warn( "$txt\n" ) if( warnings::enabled );
248
- return;
249
- }
250
- return( $ERROR );
251
- }
252
-
253
- sub _message
254
- {
255
- my $self = shift( @_ );
256
- my $level = $_[0] =~ /^\d+$/ ? shift( @_ ) : 0;
257
- return if( $self->{debug} < $level );
258
- my @data = @_;
259
- my $stackFrame = 0;
260
- my( $pkg, $file, $line, @otherInfo ) = CORE::caller( $stackFrame );
261
- my $sub = ( CORE::caller( $stackFrame + 1 ) )[3];
262
- my $sub2 = substr( $sub, rindex( $sub, '::' ) + 2 );
263
- my $txt = "${pkg}::${sub2}( $self ) [$line]: " . join( '', map( ref( $_ ) eq 'CODE' ? $_->() : $_, @data ) );
264
- $txt =~ s/\n$//gs;
265
- $txt = '## ' . join( "\n## ", split( /\n/, $txt ) );
266
- CORE::print( STDERR $txt, "\n" );
267
- }
268
-
269
- sub _messagef
270
- {
271
- my $self = shift( @_ );
272
- my $level = $_[0] =~ /^\d+$/ ? shift( @_ ) : 0;
273
- return if( $self->{debug} < $level );
274
- my @data = @_;
275
- my $stackFrame = 0;
276
- my $fmt = shift( @data );
277
- my( $pkg, $file, $line, @otherInfo ) = CORE::caller( $stackFrame );
278
- my $sub = ( CORE::caller( $stackFrame + 1 ) )[3];
279
- my $sub2 = substr( $sub, rindex( $sub, '::' ) + 2 );
280
- for( @data )
281
- {
282
- next if( ref( $_ ) );
283
- s/\b\%/\x{025}/g;
284
- }
285
- my $txt = "${pkg}::${sub2}( $self ) [$line]: " . sprintf( $fmt, map( ref( $_ ) eq 'CODE' ? $_->() : $_, @data ) );
286
- $txt =~ s/\n$//gs;
287
- $txt = '## ' . join( "\n## ", split( /\n/, $txt ) );
288
- CORE::print( STDERR $txt, "\n" );
289
- }
290
-
291
- sub _parse
292
- {
293
- my $self = shift( @_ );
294
- my $elem = shift( @_ );
295
- my $opts = shift( @_ );
296
- no warnings 'uninitialized';
297
- if( !Scalar::Util::blessed( $elem ) || !$elem->isa( 'PPI::Node' ) )
298
- {
299
- return( $self->_error( "Element provided to parse is not a PPI::Node object" ) );
300
- }
301
-
302
- my $check_consecutive_blocks;
303
- $check_consecutive_blocks = sub
304
- {
305
- my $top_elem = shift( @_ );
306
- my $level = shift( @_ );
307
- my $ref = $top_elem->find(sub
308
- {
309
- my( $top, $this ) = @_;
310
- return( $this->class eq 'PPI::Statement' && substr( $this->content, 0, 3 ) eq 'try' ? 1 : 0 );
311
- });
312
- return( $self->_error( "Failed to find any try-catch clause: $@" ) ) if( !defined( $ref ) );
313
- $self->_messagef( 4, "[blocks check level ${level}] Found %d match(es) for try statement", scalar( @$ref ) ) if( $ref && ref( $ref ) && $self->{debug} >= 4 );
314
- return if( !$ref || !scalar( @$ref ) );
315
- # We will store the additional blocks here, and we will dig deeper into them recursively.
316
- my $has_additional_blocks = 0;
317
-
318
- # NOTE: Checking for consecutive try-catch block statements
319
- # 2020-09-13: PPI will return 2 or more consecutive try-catch block as 1 statement
320
- # It does not tell them apart, so we need to post process the result to effectively search within for possible for other try-catch blocks and update the @$ref array consequently
321
- # Array to contain the new version of the $ref array.
322
- my $alt_ref = [];
323
- $self->_message( 3, "[blocks check level ${level}] Checking for consecutive try-catch blocks in ", scalar( @$ref ), " results found by PPI" ) if( $self->{debug} >= 3 );
324
- foreach my $this ( @$ref )
325
- {
326
- $self->_message( 3, "[blocks check level ${level}] Getting children from object '", overload::StrVal( $this ), "'" ) if( $self->{debug} >= 3 );
327
- $self->_message( 3, "[blocks check level ${level}] Checking if following code has children" ) if( $self->{debug} >= 3 );
328
- # my( @block_children ) = ( exists( $this->{children} ) && ref( $this->{children} // '' ) eq 'ARRAY' ) ? $this->children : ();
329
- # Stringifying forces PPI to set the object children somehow
330
- my $ct = "$this";
331
- my( @block_children ) = $this->children;
332
- next if( !scalar( @block_children ) );
333
- my $tmp_ref = [];
334
- ## to contain all the nodes to move
335
- my $tmp_nodes = [];
336
- my $prev_sib = $block_children[0];
337
- push( @$tmp_nodes, $prev_sib );
338
- my $sib;
339
- while( $sib = $prev_sib->next_sibling )
340
- {
341
- # We found a try-catch block. Move the buffer to $alt_ref
342
- if( $sib->class eq 'PPI::Token::Word' && $sib->content eq 'try' )
343
- {
344
- # Look ahead for a block...
345
- my $next = $sib->snext_sibling;
346
- if( $next && $next->class eq 'PPI::Structure::Block' )
347
- {
348
- $has_additional_blocks++;
349
- $self->_messagef( 3, "[blocks check level ${level}] Found consecutive try-block at line %d.", $sib->line_number ) if( $self->{debug} >= 3 );
350
- # Push the previous statement $st to the stack $alt_ref
351
- $self->_messagef( 3, "[blocks check level ${level}] Saving previous %d nodes collected.", scalar( @$tmp_nodes ) ) if( $self->{debug} >= 3 );
352
- push( @$tmp_ref, $tmp_nodes );
353
- $tmp_nodes = [];
354
- }
355
- }
356
- push( @$tmp_nodes, $sib );
357
- $prev_sib = $sib;
358
- }
359
- $self->_messagef( 3, "[blocks check level ${level}] Saving last %d nodes collected.", scalar( @$tmp_nodes ) ) if( $self->{debug} >= 3 );
360
- push( @$tmp_ref, $tmp_nodes );
361
- $self->_messagef( 3, "[blocks check level ${level}] Found %d try-catch block(s) in initial PPI result.", scalar( @$tmp_ref ) ) if( $self->{debug} >= 3 );
362
- # If we did find consecutive try-catch blocks, we add each of them after the nominal one and remove the nominal one after. The nominal one should be empty by then
363
- if( scalar( @$tmp_ref ) > 1 )
364
- {
365
- my $last_obj = $this;
366
- my $spaces = [];
367
- foreach my $arr ( @$tmp_ref )
368
- {
369
- $self->_message( 3, "[blocks check level ${level}] Adding statement block with ", scalar( @$arr ), " children after one at line ", $last_obj->line_number, ": '", substr( $last_obj, 0, 255 ), "'" ) if( $self->{debug} >= 3 );
370
- # 2021-06-05 (Jacques): Fixing issue No. 2: <https://gitlab.com/jackdeguest/Nice-Try/issues/2>
371
- # Find the last block that belongs to us
372
- $self->_message( 4, "[blocks check level ${level}] Checking first level objects collected." ) if( $self->{debug} >= 4 );
373
- my $last_control = '';
374
- my $last_block;
375
- my $last = {};
376
- foreach my $o ( @$arr )
377
- {
378
- if( $o->class eq 'PPI::Structure::Block' && $last_control )
379
- {
380
- $last->{block} = $o;
381
- $last->{control} = $last_control;
382
- $last_control = '';
383
- }
384
- elsif( $o->class eq 'PPI::Token::Word' )
385
- {
386
- my $ct = $o->content;
387
- if( $ct eq 'try' || $ct eq 'catch' || $ct eq 'finally' )
388
- {
389
- $last_control = $o;
390
- }
391
- }
392
- }
393
-
394
- # Get the trailing insignificant elements at the end of the statement and move them out of the statement
395
- my $insignificants = [];
396
- while( scalar( @$arr ) > 0 )
397
- {
398
- my $o = $arr->[-1];
399
- # 2021-06-05 (Jacques): We don't just look for the last block, because
400
- # that was making a bad assumption that the last trailing block would be our
401
- # try-catch block.
402
- # Following issue No. 2 reported with a trailing anonymous subroutine,
403
- # We remove everything up until our known last block that belongs to us.
404
- last if( $o->class eq 'PPI::Structure::Block' && Scalar::Util::refaddr( $o ) eq Scalar::Util::refaddr( $last->{block} ) );
405
- unshift( @$insignificants, pop( @$arr )->remove );
406
- }
407
- $self->_messagef( 3, "[blocks check level ${level}] %d insignificant objects found.", scalar( @$insignificants ) ) if( $self->{debug} >= 3 );
408
-
409
- my $new_code = join( '', map( "$_", @$arr ) );
410
- $self->_message( 3, "[blocks check level ${level}] Parsing new code to extract statement:\n${new_code}" ) if( $self->{debug} >= 3 );
411
- # 2021-06-05 (Jacques): It is unfortunately difficult to simply add a new PPI::Statement object
412
- # Instead, we have PPI parse our new code and we grab what we need.
413
- my $new_block = PPI::Document->new( \$new_code, readonly => 1 );
414
- # my $st = $new_block->{children}->[0]->remove;
415
- my $st;
416
- for( my $i = 0; $i < scalar( @{$new_block->{children}} ); $i++ )
417
- {
418
- if( Scalar::Util::blessed( $new_block->{children}->[$i] ) &&
419
- $new_block->{children}->[$i]->isa( 'PPI::Statement' ) )
420
- {
421
- $st = $new_block->{children}->[$i]->remove;
422
- last;
423
- }
424
- }
425
-
426
- foreach my $o ( @$arr )
427
- {
428
- # We remove the object from its parent, now that it has become useless
429
- my $old = $o->remove || die( "Unable to remove element '$o'\n" );
430
- }
431
- my $err = '';
432
- $self->_messagef( 3, "[blocks check level ${level}] Adding the statement object after last object '%s' of class '%s' with parent with class '%s'.", Scalar::Util::refaddr( $last_obj ), ( defined( $last_obj ) ? $last_obj->class : 'undefined class' ), ( defined( $last_obj ) ? $last_obj->parent->class : 'undefined parent class' ) ) if( $self->{debug} >= 3 );
433
- # my $rc = $last_obj->insert_after( $st );
434
- my $rc;
435
- if( $last_obj->class eq 'PPI::Token::Whitespace' )
436
- {
437
- $rc = $last_obj->__insert_after( $st );
438
- }
439
- elsif( $last_obj->class eq 'PPI::Token::Comment' )
440
- {
441
- # $rc = $last_obj->parent->__insert_after_child( $last_obj, $st );
442
- $rc = $last_obj->__insert_after( $st );
443
- }
444
- else
445
- {
446
- $rc = $last_obj->insert_after( $st );
447
- }
448
-
449
- if( !defined( $rc ) )
450
- {
451
- $err = sprintf( 'Object to be added after last try-block statement must be a PPI::Element. Class provided is \"%s\".', $st->class );
452
- }
453
- elsif( !$rc )
454
- {
455
- my $requires;
456
- if( $last_obj->isa( 'PPI::Structure' ) ||
457
- $last_obj->isa( 'PPI::Token' ) )
458
- {
459
- $requires = 'PPI::Structure or PPI::Token';
460
- }
461
- elsif( $last_obj->isa( 'PPI::Statement' ) )
462
- {
463
- $requires = 'PPI::Statement or PPI::Token';
464
- }
465
- $err = sprintf( "Object of class \"%s\" could not be added after object with address '%s' and of class '%s' with parent '%s' with class '%s': '$last_obj'. The object of class '%s' must be a ${requires} object.", $st->class, Scalar::Util::refaddr( $last_obj ), $last_obj->class, Scalar::Util::refaddr( $last_obj->parent ), $last_obj->parent->class, $st->class );
466
- }
467
- else
468
- {
469
- $last_obj = $st;
470
- if( scalar( @$insignificants ) )
471
- {
472
- $self->_messagef( 4, "[blocks check level ${level}] Adding %d trailing insignificant objects after last element of class '%s'", scalar( @$insignificants ), $last_obj->class ) if( $self->{debug} >= 4 );
473
- foreach my $o ( @$insignificants )
474
- {
475
- $self->_messagef( 4, "[blocks check level ${level}] Adding trailing insignificant object of class '%s' after last element of class '%s'", $o->class, $last_obj->class ) if( $self->{debug} >= 4 );
476
- # printf( STDERR "Inserting object '%s' (%s) of type '%s' after object '%s' (%s) of type %s who has parent '%s' of type '%s'\n", overload::StrVal( $o ), Scalar::Util::refaddr( $o ), ref( $o ), overload::StrVal( $last_obj), Scalar::Util::refaddr( $last_obj ), ref( $last_obj ), overload::StrVal( $last_obj->parent ), ref( $last_obj->parent ) );
477
- CORE::eval
478
- {
479
- $rc = $last_obj->insert_after( $o ) ||
480
- do
481
- {
482
- warn( "Failed to insert object of class '", $o->class, "' before last object of class '", $st->class, "'\n" ) if( $self->{debug} );
483
- };
484
- };
485
- if( $@ )
486
- {
487
- if( ref( $o ) )
488
- {
489
- warn( "Failed to insert object of class '", $o->class, "' before last object of class '", $st->class, "': $@\n" ) if( $self->{debug} );
490
- }
491
- else
492
- {
493
- warn( "Was expecting an object to insert before last object of class '", $st->class, "', but instead got '$o': $@\n" ) if( $self->{debug} );
494
- }
495
- }
496
- elsif( !defined( $rc ) )
497
- {
498
- warn( sprintf( 'Object to be added after last try-block statement must be a PPI::Element. Class provided is \"%s\".', $o->class ) ) if( $self->{debug} );
499
- }
500
- elsif( !$rc )
501
- {
502
- warn( sprintf( "Object of class \"%s\" could not be added after object of class '%s': '$last_obj'.", $o->class, $last_obj->class ) ) if( $self->{debug} );
503
- }
504
- # printf( STDERR "Object inserted '%s' (%s) of class '%s' now has parent '%s' (%s) of class '%s'\n", overload::StrVal( $o ), Scalar::Util::refaddr( $o ), ref( $o ), overload::StrVal( $o->parent ), Scalar::Util::refaddr( $o->parent ), ref( $o->parent ) );
505
- $o->parent( $last_obj->parent ) if( !$o->parent );
506
- $last_obj = $o;
507
- }
508
- }
509
- }
510
- die( $err ) if( length( $err ) );
511
- push( @$alt_ref, $st );
512
- }
513
- my $parent = $this->parent;
514
- # Completely destroy it; it is now replaced by our updated code
515
- $this->delete;
516
- }
517
- else
518
- {
519
- push( @$alt_ref, $this );
520
- }
521
- }
522
- $self->_messagef( 3, "[blocks check level ${level}] Results found increased from %d to %d results.", scalar( @$ref ), scalar( @$alt_ref ) ) if( $self->{debug} >= 3 );
523
-
524
- if( $has_additional_blocks )
525
- {
526
- $self->_message( 3, "[blocks check level ${level}] Consecutive block search now found ", scalar( @$alt_ref ), " try blocks." ) if( $self->{debug} >= 3 );
527
- my $more = [];
528
- foreach my $el ( @$alt_ref )
529
- {
530
- push( @$more, $el );
531
- my $rv = $check_consecutive_blocks->( $el, ( $level + 1 ) );
532
- if( ref( $rv ) && scalar( @$rv ) )
533
- {
534
- push( @$more, @$rv );
535
- }
536
- }
537
- return( $more );
538
- }
539
- else
540
- {
541
- return( $ref );
542
- }
543
- };
544
- my $ref = $check_consecutive_blocks->( $elem => 0 );
545
- return if( !$ref || !scalar( @$ref ) );
546
-
547
- $self->_messagef( 3, "Implementing try-catch for %d try-catch blocks.", scalar( @$ref ) ) if( $self->{debug} >= 3 );
548
- # NOTE: processing implementation of our try-catch
549
- foreach my $this ( @$ref )
550
- {
551
- $self->_browse( $this ) if( $self->{debug} >= 5 );
552
- my $element_before_try = $this->previous_sibling;
553
- my $try_block_ref = [];
554
- # Contains the finally block reference
555
- my $fin_block_ref = [];
556
- my $nodes_to_replace = [];
557
- my $catch_def = [];
558
- # Replacement data
559
- my $repl = [];
560
- my $catch_repl = [];
561
-
562
- # There is a weird bug in PPI that I have searched but could not find
563
- # If I don't attempt to stringify, I may end up with a PPI::Statement object that has no children as an array reference
564
- my $ct = "$this";
565
- my( @block_children ) = $this->children;
566
- next if( !scalar( @block_children ) );
567
- my $prev_sib = $block_children[0];
568
- push( @$nodes_to_replace, $prev_sib );
569
- my( $inside_catch, $inside_finally );
570
- my $temp = {};
571
- # Buffer of nodes found in between blocks
572
- my $buff = [];
573
- # Temporary new line counter between try-catch block so we can reproduce it and ensure proper reporting of error line
574
- my $nl_counter = 0;
575
- my $sib;
576
- while( $sib = $prev_sib->next_sibling )
577
- {
578
- if( !scalar( @$try_block_ref ) )
579
- {
580
- if( $sib->class eq 'PPI::Structure::Block' &&
581
- substr( "$sib", 0, 1 ) eq "\{" &&
582
- substr( "$sib", -1, 1 ) eq "\}" )
583
- {
584
- $temp->{block} = $sib;
585
- push( @$try_block_ref, $temp );
586
- $temp = {};
587
- if( scalar( @$buff ) )
588
- {
589
- push( @$nodes_to_replace, @$buff );
590
- $buff = [];
591
- }
592
- push( @$nodes_to_replace, $sib );
593
- }
594
- elsif( $sib->class eq 'PPI::Token::Whitespace' && $sib->content =~ /[\015\012]+/ )
595
- {
596
- $temp->{open_curly_nl}++;
597
- push( @$buff, $sib );
598
- }
599
- # We skip anything else until we find that try block
600
- else
601
- {
602
- push( @$buff, $sib );
603
- $prev_sib = $sib;
604
- next;
605
- }
606
- }
607
- elsif( $sib->class eq 'PPI::Token::Word' && $sib->content eq 'catch' )
608
- {
609
- $inside_catch++;
610
- if( scalar( @$buff ) )
611
- {
612
- push( @$nodes_to_replace, @$buff );
613
- $buff = [];
614
- }
615
- push( @$nodes_to_replace, $sib );
616
- }
617
- elsif( $inside_catch )
618
- {
619
- # This is the catch list as in catch( $e ) or catch( Exception $e )
620
- if( $sib->class eq 'PPI::Structure::List' )
621
- {
622
- $temp->{var} = $sib;
623
- push( @$nodes_to_replace, $sib );
624
- }
625
- elsif( $sib->class eq 'PPI::Structure::Block' )
626
- {
627
- $temp->{block} = $sib;
628
- if( scalar( @$catch_def ) )
629
- {
630
- $catch_def->[-1]->{close_curly_nl} = $nl_counter;
631
- }
632
- else
633
- {
634
- $try_block_ref->[-1]->{close_curly_nl} = $nl_counter;
635
- }
636
- $nl_counter = 0;
637
- push( @$catch_def, $temp );
638
- $temp = {};
639
- $inside_catch = 0;
640
- push( @$nodes_to_replace, $sib );
641
- }
642
- elsif( $sib->class eq 'PPI::Token::Whitespace' && $sib->content =~ /[\015\012]+/ )
643
- {
644
- $temp->{open_curly_nl}++;
645
- push( @$nodes_to_replace, $sib );
646
- }
647
- else
648
- {
649
- push( @$nodes_to_replace, $sib );
650
- }
651
- }
652
- elsif( $sib->class eq 'PPI::Token::Word' && $sib->content eq 'finally' )
653
- {
654
- $inside_finally++;
655
- if( scalar( @$buff ) )
656
- {
657
- push( @$nodes_to_replace, @$buff );
658
- $buff = [];
659
- }
660
- push( @$nodes_to_replace, $sib );
661
- }
662
- elsif( $inside_finally )
663
- {
664
- # We could ignore it, but it is best to let the developer know in case he/she counts on it somehow
665
- if( $sib->class eq 'PPI::Structure::List' )
666
- {
667
- die( sprintf( "the finally block does not accept any list parameters at line %d\n", $sib->line_number ) );
668
- }
669
- elsif( $sib->class eq 'PPI::Structure::Block' )
670
- {
671
- $temp->{block} = $sib;
672
- if( scalar( @$fin_block_ref ) )
673
- {
674
- die( sprintf( "There can only be one finally block at line %d\n", $sib->line_number ) );
675
- }
676
- elsif( scalar( @$catch_def ) )
677
- {
678
- $catch_def->[-1]->{close_curly_nl} = $nl_counter;
679
- }
680
- else
681
- {
682
- $try_block_ref->[-1]->{close_curly_nl} = $nl_counter;
683
- }
684
- $nl_counter = 0;
685
- push( @$fin_block_ref, $temp );
686
- $temp = {};
687
- $inside_finally = 0;
688
- push( @$nodes_to_replace, $sib );
689
- }
690
- elsif( $sib->class eq 'PPI::Token::Whitespace' && $sib->content =~ /[\015\012]+/ )
691
- {
692
- $temp->{open_curly_nl}++;
693
- push( @$nodes_to_replace, $sib );
694
- }
695
- else
696
- {
697
- push( @$nodes_to_replace, $sib );
698
- }
699
- }
700
- # Check for new lines after closing blocks. The ones before, we can account for them in each section above
701
- # We could have } catch {
702
- # or
703
- # }
704
- # catch {
705
- # etc.
706
- # This could also be new lines following the last catch block
707
- elsif( $sib->class eq 'PPI::Token::Whitespace' && $sib->content =~ /[\015\012]+/ )
708
- {
709
- $nl_counter++;
710
- push( @$buff, $sib );
711
- }
712
- else
713
- {
714
- push( @$buff, $sib );
715
- }
716
- $prev_sib = $sib;
717
- }
718
-
719
- my $has_catch_clause = scalar( @$catch_def ) > 0 ? 1 : 0;
720
-
721
- # NOTE: processing finally block
722
- # Prepare the finally block, if any, and add it below at the appropriate place
723
- my $fin_block = '';
724
- if( scalar( @$fin_block_ref ) )
725
- {
726
- my $fin_def = $fin_block_ref->[0];
727
- $self->_process_sub_token( $fin_def->{block} );
728
- $self->_process_caller( finally => $fin_def->{block} );
729
- ## my $finally_block = $fin_def->{block}->content;
730
- my $finally_block = $self->_serialize( $fin_def->{block} );
731
- $finally_block =~ s/^\{[[:blank:]]*|[[:blank:]]*\}$//gs;
732
- $fin_block = <<EOT;
733
- CORE::local \$Nice::Try::FINALLY = Nice\::Try\::ScopeGuard->_new(sub __FINALLY_OPEN_NL__{ __BLOCK_PLACEHOLDER__ __FINALLY__CLOSE_NL__}, [\@_], \$Nice::Try::CATCH_DIED);
734
- EOT
735
- $fin_block =~ s/\n/ /gs unless( $self->{debug_code} );
736
- $fin_block =~ s/__BLOCK_PLACEHOLDER__/$finally_block/gs;
737
- if( $fin_def->{open_curly_nl} )
738
- {
739
- $fin_block =~ s/__FINALLY_OPEN_NL__/"\n" x $fin_def->{open_curly_nl}/gex;
740
- }
741
- else
742
- {
743
- $fin_block =~ s/__FINALLY_OPEN_NL__//gs;
744
- }
745
- if( $fin_def->{close_curly_nl} )
746
- {
747
- $fin_block =~ s/__FINALLY__CLOSE_NL__/"\n" x $fin_def->{close_curly_nl}/gex;
748
- }
749
- else
750
- {
751
- $fin_block =~ s/__FINALLY__CLOSE_NL__//gs;
752
- }
753
- }
754
-
755
- # NOTE: processing try blocks
756
- # Found any try block at all?
757
- if( scalar( @$try_block_ref ) )
758
- {
759
- my $try_def = $try_block_ref->[0];
760
-
761
- # Checking for embedded try-catch
762
- if( my $emb = $self->_parse( $try_def->{block} ) )
763
- {
764
- $try_def->{block} = $emb;
765
- }
766
-
767
- $self->_process_loop_breaks( $try_def->{block} );
768
- # NOTE: process, in try block, __SUB__ which reference current sub since perl v5.16
769
- $self->_process_sub_token( $try_def->{block} );
770
- $self->_process_caller( try => $try_def->{block} );
771
-
772
- # my $try_block = $try_def->{block}->content;
773
- my $try_block = $self->_serialize( $try_def->{block} );
774
- $try_block =~ s/^\{[[:blank:]]*|[[:blank:]]*\}$//gs;
775
-
776
- my $try_sub = <<EOT;
777
- CORE::local \$Nice::Try::THREADED;
778
- if( \$INC{'threads.pm'} && !CORE::exists( \$INC{'forks.pm'} ) )
779
- {
780
- \$Nice::Try::THREADED = threads->tid;
781
- }
782
- CORE::local \$Nice::Try::WANT;
783
- CORE::local ( \$Nice::Try::EXCEPTION, \$Nice::Try::DIED, \$Nice::Try::CATCH_DIED, \@Nice::Try::RETVAL, \@Nice::Try::VOID, \$Nice::Try::RETURN );
784
- CORE::local \$Nice::Try::WANTARRAY = CORE::wantarray;
785
- CORE::local \$Nice::Try::RETURN = sub
786
- {
787
- \$Nice::Try::NEED_TO_RETURN++;
788
- return( wantarray() ? \@_ : \$_[0] );
789
- };
790
- EOT
791
- if( !$self->{is_tied} && !$self->{dont_want} && !$self->{is_overloaded} )
792
- {
793
- $try_sub .= <<EOT;
794
- CORE::local \$Nice::Try::NOOP = sub
795
- {
796
- my \$ref = CORE::shift( \@_ );
797
- CORE::return(sub{ CORE::return( \$ref ) });
798
- };
799
- if( CORE::defined( \$Nice::Try::WANTARRAY ) && !\$Nice::Try::THREADED && !( !CORE::length( [CORE::caller]->[1] ) && [CORE::caller(1)]->[3] eq '(eval)' ) )
800
- {
801
- CORE::eval "\\\$Nice::Try::WANT = Want::want( 'LIST' )
802
- ? 'LIST'
803
- : Want::want( 'HASH' )
804
- ? 'HASH'
805
- : Want::want( 'ARRAY' )
806
- ? 'ARRAY'
807
- : Want::want( 'OBJECT' )
808
- ? 'OBJECT'
809
- : Want::want( 'CODE' )
810
- ? 'CODE'
811
- : Want::want( 'REFSCALAR' )
812
- ? 'REFSCALAR'
813
- : Want::want( 'BOOL' )
814
- ? 'BOOLEAN'
815
- : Want::want( 'GLOB' )
816
- ? 'GLOB'
817
- : Want::want( 'SCALAR' )
818
- ? 'SCALAR'
819
- : Want::want( 'VOID' )
820
- ? 'VOID'
821
- : '';";
822
- undef( \$Nice::Try::WANT ) if( \$\@ );
823
- }
824
- EOT
825
- }
826
- $try_sub .= <<EOT;
827
- CORE::local \$Nice::Try::TRY = CORE::sub
828
- {
829
- \@Nice::Try::LAST_VAL = CORE::do __TRY_OPEN_NL__{ __BLOCK_PLACEHOLDER__ };__TRY__CLOSE_NL__
830
- CORE::return( \@Nice::Try::LAST_VAL ) if( !CORE::defined( \$Nice::Try::WANTARRAY ) && CORE::scalar( \@Nice::Try::LAST_VAL ) );
831
- \$Nice::Try::VOID[0] = \$Nice::Try::SENTINEL;
832
- if( CORE::defined( \$Nice::Try::WANT ) && CORE::length( \$Nice::Try::WANT ) )
833
- {
834
- if( \$Nice::Try::WANT eq 'OBJECT' )
835
- {
836
- CORE::return( Nice::Try::ObjectContext->new( sub{ \$Nice::Try::VOID[0] } )->callback() );
837
- }
838
- elsif( \$Nice::Try::WANT eq 'CODE' )
839
- {
840
- CORE::return( sub{ \$Nice::Try::VOID[0] } );
841
- }
842
- elsif( \$Nice::Try::WANT eq 'HASH' )
843
- {
844
- CORE::return( { dummy => \$Nice::Try::VOID[0] } );
845
- }
846
- elsif( \$Nice::Try::WANT eq 'ARRAY' )
847
- {
848
- CORE::return( [ \$Nice::Try::VOID[0] ] );
849
- }
850
- elsif( \$Nice::Try::WANT eq 'REFSCALAR' )
851
- {
852
- CORE::return( \\\$Nice::Try::VOID[0] );
853
- }
854
- elsif( \$Nice::Try::WANT eq 'GLOB' )
855
- {
856
- CORE::return( \*{ \$Nice::Try::VOID[0] } );
857
- }
858
- elsif( \$Nice::Try::WANT eq 'LIST' )
859
- {
860
- CORE::return( \$Nice::Try::VOID[0] );
861
- }
862
- elsif( \$Nice::Try::WANT eq 'BOOLEAN' )
863
- {
864
- CORE::return( \$Nice::Try::VOID[0] );
865
- }
866
- elsif( \$Nice::Try::WANT eq 'VOID' )
867
- {
868
- CORE::return( \$Nice::Try::VOID[0] );
869
- }
870
- elsif( \$Nice::Try::WANT eq 'SCALAR' )
871
- {
872
- CORE::return( \$Nice::Try::VOID[0] );
873
- }
874
- }
875
- else
876
- {
877
- if( \$Nice::Try::WANTARRAY )
878
- {
879
- CORE::return( \$Nice::Try::VOID[0] );
880
- }
881
- elsif( defined( \$Nice::Try::WANTARRAY ) )
882
- {
883
- CORE::return( \$Nice::Try::VOID[0] );
884
- }
885
- else
886
- {
887
- CORE::return( \$Nice::Try::VOID[0] );
888
- }
889
- }
890
- };
891
- __FINALLY_BLOCK__ CORE::local \$Nice::Try::HAS_CATCH = $has_catch_clause;
892
- EOT
893
- $try_sub .= <<EOT;
894
- {
895
- CORE::local \$\@;
896
- CORE::eval
897
- {
898
- EOT
899
- if( $] >= 5.036000 )
900
- {
901
- $try_sub .= <<EOT;
902
- no warnings 'experimental::args_array_with_signatures';
903
- EOT
904
- }
905
-
906
- $try_sub .= <<EOT;
907
- if( CORE::defined( \$Nice::Try::WANT ) && CORE::length( \$Nice::Try::WANT ) )
908
- {
909
- if( \$Nice::Try::WANT eq 'OBJECT' )
910
- {
911
- \$Nice::Try::RETVAL[0] = Nice::Try::ObjectContext->new( &\$Nice::Try::TRY )->callback();
912
- }
913
- elsif( \$Nice::Try::WANT eq 'CODE' )
914
- {
915
- \$Nice::Try::RETVAL[0] = \$Nice::Try::NOOP->( &\$Nice::Try::TRY )->();
916
- }
917
- elsif( \$Nice::Try::WANT eq 'HASH' )
918
- {
919
- \@Nice::Try::RETVAL = \%{ &\$Nice::Try::TRY };
920
- }
921
- elsif( \$Nice::Try::WANT eq 'ARRAY' )
922
- {
923
- \@Nice::Try::RETVAL = \@{ &\$Nice::Try::TRY };
924
- }
925
- elsif( \$Nice::Try::WANT eq 'REFSCALAR' )
926
- {
927
- \$Nice::Try::RETVAL[0] = \${&\$Nice::Try::TRY};
928
- }
929
- elsif( \$Nice::Try::WANT eq 'GLOB' )
930
- {
931
- \$Nice::Try::RETVAL[0] = \*{ &\$Nice::Try::TRY };
932
- }
933
- elsif( \$Nice::Try::WANT eq 'LIST' )
934
- {
935
- \@Nice::Try::RETVAL = &\$Nice::Try::TRY;
936
- }
937
- elsif( \$Nice::Try::WANT eq 'BOOLEAN' )
938
- {
939
- \$Nice::Try::RETVAL[0] = &\$Nice::Try::TRY ? 1 : 0;
940
- \$Nice::Try::RETVAL[0] = \$Nice::Try::VOID[0] if( scalar( \@Nice::Try::VOID ) );
941
- }
942
- elsif( \$Nice::Try::WANT eq 'VOID' )
943
- {
944
- \@Nice::Try::VOID = &\$Nice::Try::TRY;
945
- }
946
- elsif( \$Nice::Try::WANT eq 'SCALAR' )
947
- {
948
- \$Nice::Try::RETVAL[0] = &\$Nice::Try::TRY;
949
- }
950
- }
951
- else
952
- {
953
- if( \$Nice::Try::WANTARRAY )
954
- {
955
- \@Nice::Try::RETVAL = &\$Nice::Try::TRY;
956
- }
957
- elsif( defined( \$Nice::Try::WANTARRAY ) )
958
- {
959
- \$Nice::Try::RETVAL[0] = &\$Nice::Try::TRY;
960
- }
961
- else
962
- {
963
- &\$Nice::Try::TRY;
964
- \$Nice::Try::RETVAL[0] = \$Nice::Try::LAST_VAL if( CORE::defined( \$Nice::Try::LAST_VAL ) );
965
- }
966
- }
967
- };
968
- \$Nice::Try::DIED = CORE::length( \$\@ ) ? 1 : 0;
969
- \$\@ =~ s/[\\015\\012]+\$//g unless( Scalar::Util::blessed( \$\@ ) );
970
- \$Nice::Try::EXCEPTION = \$\@;
971
- };
972
-
973
- EOT
974
- $try_sub =~ s/\n/ /gs unless( $self->{debug_code} );
975
- $try_sub =~ s/__BLOCK_PLACEHOLDER__/$try_block/gs;
976
- if( $try_def->{open_curly_nl} )
977
- {
978
- $try_sub =~ s/__TRY_OPEN_NL__/"\n" x $try_def->{open_curly_nl}/gex;
979
- }
980
- else
981
- {
982
- $try_sub =~ s/__TRY_OPEN_NL__//gs;
983
- }
984
- if( $try_def->{close_curly_nl} )
985
- {
986
- $try_sub =~ s/__TRY__CLOSE_NL__/"\n" x $try_def->{close_curly_nl}/gex;
987
- }
988
- else
989
- {
990
- $try_sub =~ s/__TRY__CLOSE_NL__//gs;
991
- }
992
-
993
- # Add the final block if there is no catch block, otherwise the final block comes at the end below
994
- if( !$has_catch_clause )
995
- {
996
- $try_sub =~ s/__FINALLY_BLOCK__/$fin_block/gs;
997
- }
998
- # If it should not be here, remove the placeholder
999
- else
1000
- {
1001
- $try_sub =~ s/__FINALLY_BLOCK__//gs;
1002
- }
1003
- push( @$repl, $try_sub );
1004
- }
1005
- else
1006
- {
1007
- next;
1008
- }
1009
-
1010
- # NOTE: processing catch block
1011
- my $if_start = <<EOT;
1012
- if( \$Nice::Try::DIED )
1013
- {
1014
- if( \$Nice::Try::HAS_CATCH )
1015
- {
1016
- EOT
1017
- if( $] >= 5.036000 )
1018
- {
1019
- $if_start .= <<EOT;
1020
- no warnings 'experimental::args_array_with_signatures';
1021
- EOT
1022
- }
1023
- $if_start =~ s/\n/ /gs unless( $self->{debug_code} );
1024
- push( @$catch_repl, $if_start );
1025
- if( scalar( @$catch_def ) )
1026
- {
1027
- my $total_catch = scalar( @$catch_def );
1028
- # To count how many times we have else's – obviously we should not have more than 1
1029
- my $else = 0;
1030
- for( my $i = 0; $i < $total_catch; $i++ )
1031
- {
1032
- my $cdef = $catch_def->[$i];
1033
- # Checking for embedded try-catch
1034
- if( my $emb = $self->_parse( $cdef->{block} ) )
1035
- {
1036
- $cdef->{block} = $emb;
1037
- }
1038
- # NOTE: process, in catch block, __SUB__ which reference current sub since perl v5.16
1039
- $self->_process_sub_token( $cdef->{block} );
1040
-
1041
- if( $cdef->{var} )
1042
- {
1043
- $cdef->{var}->prune( 'PPI::Token::Comment' );
1044
- $cdef->{var}->prune( 'PPI::Token::Pod' );
1045
- $self->_messagef( 3, "Catch assignment is: '%s'", $cdef->{var}->content ) if( $self->{debug} >= 3 );
1046
- # my $str = $cdef->{var}->content;
1047
- my $str = $self->_serialize( $cdef->{var} );
1048
- $str =~ s/^\([[:blank:]\h\v]*|[[:blank:]]*\)$//g;
1049
- # My::Exception $e
1050
- if( $str =~ /^(\S+)[[:blank:]\h\v]+(\$\S+)$/ )
1051
- {
1052
- @$cdef{qw( class var )} = ( $1, $2 );
1053
- }
1054
- elsif( $str =~ /^(\S+)[[:blank:]\h\v]+(\$\S+)[[:blank:]\h\v]+where[[:blank:]\h\v]+\{(.*?)\}$/ )
1055
- {
1056
- @$cdef{qw( class var where )} = ( $1, $2, $3 );
1057
- }
1058
- elsif( $str =~ /^(\$\S+)[[:blank:]\h\v]+where[[:blank:]\h\v]+\{(.*?)\}$/ )
1059
- {
1060
- @$cdef{qw( var where )} = ( $1, $2 );
1061
- }
1062
- elsif( $str =~ /^(\$\S+)[[:blank:]\h\v]+isa[[:blank:]\h\v]+(\S+)(?:[[:blank:]\h\v]+where[[:blank:]\h\v]+\{(.*?)\})?$/ )
1063
- {
1064
- @$cdef{qw( var class where )} = ( $1, $2, $3 );
1065
- }
1066
- elsif( $str =~ /^(?<var>\$\S+)[[:blank:]\h\v]+isa[[:blank:]\h\v]*\([[:blank:]\h\v]*(?<quote>["'])?(?<class>[^[:blank:]\h\v\'\"\)]+)\k{quote}[[:blank:]\h\v]*\)(?:[[:blank:]\h\v]+where[[:blank:]\h\v]+\{(?<where>.*?)\})?$/ )
1067
- {
1068
- @$cdef{qw( var class where )} = ( $+{var}, $+{class}, $+{where} );
1069
- }
1070
- else
1071
- {
1072
- $cdef->{var} = $str;
1073
- }
1074
- }
1075
- else
1076
- {
1077
- # $self->_message( 3, "No Catch assignment found" ) if( $self->{debug} >= 3 );
1078
- }
1079
-
1080
- if( $cdef->{block} )
1081
- {
1082
- # $self->_messagef( 3, "Catch block is:\n%s", $cdef->{block}->content ) if( $self->{debug} >= 3 );
1083
- }
1084
- else
1085
- {
1086
- # $self->_message( 3, "No catch block found!" ) if( $self->{debug} >= 3 );
1087
- next;
1088
- }
1089
- my $cond;
1090
- if( $i == 0 )
1091
- {
1092
- $cond = 'if';
1093
- }
1094
- elsif( $i == ( $total_catch - 1 ) )
1095
- {
1096
- $cond = $total_catch == 1
1097
- ? 'if'
1098
- : $cdef->{class}
1099
- ? 'elsif'
1100
- : 'else';
1101
- }
1102
- else
1103
- {
1104
- $cond = 'elsif';
1105
- }
1106
- # my $block = $cdef->{block}->content;
1107
- $self->_process_loop_breaks( $cdef->{block} );
1108
- $self->_process_sub_token( $cdef->{block} );
1109
- $self->_process_caller( catch => $cdef->{block} );
1110
- my $block = $self->_serialize( $cdef->{block} );
1111
- $block =~ s/^\{[[:blank:]]*|[[:blank:]]*\}$//gs;
1112
- my $catch_section = '';
1113
- my $catch_code = <<EOT;
1114
- CORE::local \$Nice::Try::CATCH = CORE::sub
1115
- {
1116
- \@Nice::Try::LAST_VAL = CORE::do __CATCH_OPEN_NL__{ __BLOCK_PLACEHOLDER__ }; __CATCH__CLOSE_NL__
1117
- CORE::return( \@Nice::Try::LAST_VAL ) if( !CORE::defined( \$Nice::Try::WANTARRAY ) && CORE::scalar( \@Nice::Try::LAST_VAL ) );
1118
- CORE::return \$Nice::Try::SENTINEL;
1119
- };
1120
-
1121
- eval
1122
- {
1123
- local \$\@ = \$Nice::Try::EXCEPTION;
1124
- if( CORE::defined( \$Nice::Try::WANT ) && CORE::length( \$Nice::Try::WANT ) )
1125
- {
1126
- if( \$Nice::Try::WANT eq 'OBJECT' )
1127
- {
1128
- \$Nice::Try::RETVAL[0] = Nice::Try::ObjectContext->new( \&\$Nice::Try::CATCH )->callback();
1129
- }
1130
- elsif( \$Nice::Try::WANT eq 'CODE' )
1131
- {
1132
- \$Nice::Try::RETVAL[0] = \$Nice::Try::NOOP->( \&\$Nice::Try::CATCH )->();
1133
- }
1134
- elsif( \$Nice::Try::WANT eq 'HASH' )
1135
- {
1136
- \@Nice::Try::RETVAL = \%{ \&\$Nice::Try::CATCH };
1137
- }
1138
- elsif( \$Nice::Try::WANT eq 'ARRAY' )
1139
- {
1140
- \@Nice::Try::RETVAL = \@{ \&\$Nice::Try::CATCH };
1141
- }
1142
- elsif( \$Nice::Try::WANT eq 'REFSCALAR' )
1143
- {
1144
- \$Nice::Try::RETVAL[0] = \${\&\$Nice::Try::CATCH};
1145
- }
1146
- elsif( \$Nice::Try::WANT eq 'GLOB' )
1147
- {
1148
- \$Nice::Try::RETVAL[0] = \*{ \&\$Nice::Try::CATCH };
1149
- }
1150
- elsif( \$Nice::Try::WANT eq 'LIST' )
1151
- {
1152
- \@Nice::Try::RETVAL = \&\$Nice::Try::CATCH;
1153
- }
1154
- elsif( \$Nice::Try::WANT eq 'BOOLEAN' )
1155
- {
1156
- my \$this = \&\$Nice::Try::CATCH ? 1 : 0;
1157
- \$Nice::Try::RETVAL[0] = \$Nice::Try::VOID[0] if( scalar( \@Nice::Try::VOID ) );
1158
- }
1159
- elsif( \$Nice::Try::WANT eq 'VOID' )
1160
- {
1161
- \@Nice::Try::VOID = \&\$Nice::Try::CATCH;
1162
- }
1163
- elsif( \$Nice::Try::WANT eq 'SCALAR' )
1164
- {
1165
- \$Nice::Try::RETVAL[0] = \&\$Nice::Try::CATCH;
1166
- }
1167
- }
1168
- else
1169
- {
1170
- if( \$Nice::Try::WANTARRAY )
1171
- {
1172
- \@Nice::Try::RETVAL = \&\$Nice::Try::CATCH;
1173
- }
1174
- elsif( defined( \$Nice::Try::WANTARRAY ) )
1175
- {
1176
- \$Nice::Try::RETVAL[0] = \&\$Nice::Try::CATCH;
1177
- }
1178
- else
1179
- {
1180
- \&\$Nice::Try::CATCH;
1181
- }
1182
- }
1183
- };
1184
- \$Nice::Try::CATCH_DIED = \$\@ if( \$\@ );
1185
- EOT
1186
- if( $cdef->{var} )
1187
- {
1188
- my $ex_var = $cdef->{var};
1189
- if( $cdef->{class} && $cdef->{where} )
1190
- {
1191
- my $ex_class = $cdef->{class};
1192
- my $eval = "q{CORE::local \$_ = \$Nice::Try::EXCEPTION; my $ex_var = \$Nice::Try::EXCEPTION; CORE::local \$\@ = \$Nice::Try::EXCEPTION; $cdef->{where}}";
1193
- $catch_section = <<EOT;
1194
- ${cond}( Scalar::Util::blessed( \$Nice::Try::EXCEPTION ) && \$Nice::Try::EXCEPTION->isa( '$ex_class' ) && CORE::eval( $eval ) )
1195
- {
1196
- CORE::local \$\@ = \$Nice::Try::EXCEPTION;
1197
- my $ex_var = \$Nice::Try::EXCEPTION;
1198
- $catch_code
1199
- }
1200
- EOT
1201
- }
1202
- elsif( $cdef->{class} )
1203
- {
1204
- my $ex_class = $cdef->{class};
1205
- # Tilmann Haeberle (TH) 2021-03-25: Fix: properly test for exception class inheritance via ->isa
1206
- $catch_section = <<EOT;
1207
- ${cond}( Scalar::Util::blessed( \$Nice::Try::EXCEPTION ) && \$Nice::Try::EXCEPTION->isa( '$ex_class' ) )
1208
- {
1209
- CORE::local \$\@ = \$Nice::Try::EXCEPTION;
1210
- my $ex_var = \$Nice::Try::EXCEPTION;
1211
- $catch_code
1212
- }
1213
- EOT
1214
- }
1215
- elsif( $cdef->{where} )
1216
- {
1217
- my $eval = "q{CORE::local \$_ = \$Nice::Try::EXCEPTION; my $ex_var = \$Nice::Try::EXCEPTION; CORE::local \$\@ = \$Nice::Try::EXCEPTION; $cdef->{where}}";
1218
- $catch_section = <<EOT;
1219
- ${cond}( CORE::eval( $eval ) )
1220
- {
1221
- CORE::local \$\@ = \$Nice::Try::EXCEPTION;
1222
- my $ex_var = \$Nice::Try::EXCEPTION;
1223
- $catch_code
1224
- }
1225
- EOT
1226
- }
1227
- # No class, just variable assignment like $e or something
1228
- else
1229
- {
1230
- if( ++$else > 1 )
1231
- {
1232
- # CORE::warn( "Cannot have more than one falllback catch clause for block: ", $cdef->{block}->content, "\n" ) if( warnings::enabled );
1233
- CORE::warn( "Cannot have more than one falllback catch clause for block: ", $self->_serialize( $cdef->{block} ), "\n" ) if( warnings::enabled );
1234
- # Skip, not die. Not fatal, just ignored
1235
- next;
1236
- }
1237
- $cond = "${cond}( 1 )" if( $cond eq 'if' || $cond eq 'elsif' );
1238
- $catch_section = <<EOT;
1239
- ${cond}
1240
- {
1241
- CORE::local \$\@ = \$Nice::Try::EXCEPTION;
1242
- my $ex_var = \$Nice::Try::EXCEPTION;
1243
- $catch_code
1244
- }
1245
- EOT
1246
- }
1247
- }
1248
- # No variable assignment like $e
1249
- else
1250
- {
1251
- $cond = "${cond}( 1 )" if( $cond eq 'if' || $cond eq 'elsif' );
1252
- $catch_section = <<EOT;
1253
- ${cond}
1254
- {
1255
- CORE::local \$\@ = \$Nice::Try::EXCEPTION;
1256
- $catch_code
1257
- }
1258
- EOT
1259
- }
1260
- $catch_section =~ s/\n/ /gs unless( $self->{debug_code} );
1261
- $catch_section =~ s/__BLOCK_PLACEHOLDER__/$block/gs;
1262
- if( $cdef->{open_curly_nl} )
1263
- {
1264
- $catch_section =~ s/__CATCH_OPEN_NL__/"\n" x $cdef->{open_curly_nl}/gex;
1265
- }
1266
- else
1267
- {
1268
- $catch_section =~ s/__CATCH_OPEN_NL__//gs;
1269
- }
1270
- if( $cdef->{close_curly_nl} )
1271
- {
1272
- $catch_section =~ s/__CATCH__CLOSE_NL__/"\n" x $cdef->{close_curly_nl}/gex;
1273
- }
1274
- else
1275
- {
1276
- $catch_section =~ s/__CATCH__CLOSE_NL__//gs;
1277
- }
1278
- push( @$catch_repl, $catch_section );
1279
- }
1280
- # End catch loop
1281
- # Tilmann Haeberle (TH) 2021-03-25: Fix: put an else at the end to avoid 'fall_through' issue unless an else exists already
1282
- my $if_end;
1283
- if( $else )
1284
- {
1285
- $if_end = <<EOT;
1286
- }
1287
- EOT
1288
- }
1289
- else
1290
- {
1291
- $if_end = <<EOT;
1292
- else
1293
- {
1294
- die( \$Nice::Try::EXCEPTION );
1295
- }
1296
- }
1297
- EOT
1298
- }
1299
- $if_end =~ s/\n/ /g unless( $self->{debug_code} );
1300
- push( @$catch_repl, $if_end );
1301
- }
1302
- # No catch clause
1303
- else
1304
- {
1305
- # If the try-catch block is called inside an eval, propagate the exception
1306
- # Otherwise, we just make the $@ available
1307
- my $catch_else = <<EOT;
1308
- }
1309
- else
1310
- {
1311
- if( CORE::defined( (CORE::caller(0))[3] ) && (CORE::caller(0))[3] eq '(eval)' )
1312
- {
1313
- CORE::die( \$Nice::Try::EXCEPTION );
1314
- }
1315
- else
1316
- {
1317
- \$\@ = \$Nice::Try::EXCEPTION;
1318
- }
1319
- }
1320
- EOT
1321
- $catch_else =~ s/\n/ /g unless( $self->{debug_code} );
1322
- push( @$catch_repl, $catch_else );
1323
- }
1324
-
1325
- # Add
1326
- my $catch_res = scalar( @$catch_repl ) ? join( '', @$catch_repl ) : '';
1327
- push( @$repl, $catch_res ) if( $catch_res );
1328
- # Closing the If DIED condition
1329
- push( @$repl, "\};" );
1330
-
1331
- # If there is a catch clause, we put the final block here, if any
1332
- if( $has_catch_clause && CORE::length( $fin_block ) )
1333
- {
1334
- push( @$repl, $fin_block );
1335
- }
1336
-
1337
- # After the finally block has been registered, we will die if catch had a fatal error
1338
- my $catch_dies = <<EOT;
1339
- if( defined( \$Nice::Try::CATCH_DIED ) )
1340
- {
1341
- die( \$Nice::Try::CATCH_DIED );
1342
- }
1343
- EOT
1344
- $catch_dies =~ s/\n/ /gs unless( $self->{debug_code} );
1345
- push( @$repl, $catch_dies );
1346
-
1347
- my $last_return_block = <<EOT;
1348
- if( ( CORE::defined( \$Nice::Try::WANTARRAY ) || ( defined( \$Nice::Try::BREAK ) && \$Nice::Try::BREAK eq 'return' ) ) and
1349
- (
1350
- !Scalar::Util::blessed( \$Nice::Try::RETVAL[0] ) or
1351
- ( Scalar::Util::blessed( \$Nice::Try::RETVAL[0] ) && !\$Nice::Try::RETVAL[0]->isa( 'Nice::Try::SENTINEL' ) )
1352
- ) )
1353
- {
1354
- \$Nice::Try::NEED_TO_RETURN++ if( defined( \$Nice::Try::BREAK ) && \$Nice::Try::BREAK eq 'return' );
1355
- no warnings 'void';
1356
- EOT
1357
- if( CORE::scalar( CORE::keys( %warnings:: ) ) &&
1358
- CORE::exists( $warnings::Bits{args_array_with_signatures} ) )
1359
- {
1360
- $last_return_block .= <<EOT;
1361
- no warnings 'experimental::args_array_with_signatures';
1362
- EOT
1363
- }
1364
- $last_return_block .= <<EOT;
1365
- if( !CORE::defined( \$Nice::Try::BREAK ) || \$Nice::Try::BREAK eq 'return' )
1366
- {
1367
- if( CORE::defined( \$Nice::Try::WANT ) && CORE::length( \$Nice::Try::WANT ) )
1368
- {
1369
- if( \$Nice::Try::WANT eq 'LIST' )
1370
- {
1371
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \@Nice::Try::RETVAL ) : \@Nice::Try::RETVAL;
1372
- }
1373
- elsif( \$Nice::Try::WANT eq 'VOID' )
1374
- {
1375
- if( CORE::defined( \$Nice::Try::RETVAL[0] ) && \$Nice::Try::RETVAL[0] eq '__NEXT__' )
1376
- {
1377
- \$Nice::Try::BREAK = 'next';
1378
- }
1379
- elsif( CORE::defined( \$Nice::Try::RETVAL[0] ) && \$Nice::Try::RETVAL[0] eq '__LAST__' )
1380
- {
1381
- \$Nice::Try::BREAK = 'last';
1382
- }
1383
- elsif( CORE::defined( \$Nice::Try::RETVAL[0] ) && \$Nice::Try::RETVAL[0] eq '__REDO__' )
1384
- {
1385
- \$Nice::Try::BREAK = 'redo';
1386
- }
1387
- elsif( defined( \$Nice::Try::BREAK ) && \$Nice::Try::BREAK eq 'return' )
1388
- {
1389
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1390
- }
1391
- }
1392
- elsif( \$Nice::Try::WANT eq 'OBJECT' )
1393
- {
1394
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1395
- }
1396
- elsif( \$Nice::Try::WANT eq 'REFSCALAR' )
1397
- {
1398
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \\\$Nice::Try::RETVAL[0] ) : \\\$Nice::Try::RETVAL[0];
1399
- }
1400
- elsif( \$Nice::Try::WANT eq 'SCALAR' )
1401
- {
1402
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1403
- }
1404
- elsif( \$Nice::Try::WANT eq 'BOOLEAN' )
1405
- {
1406
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1407
- }
1408
- elsif( \$Nice::Try::WANT eq 'CODE' )
1409
- {
1410
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1411
- }
1412
- elsif( \$Nice::Try::WANT eq 'HASH' )
1413
- {
1414
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( { \@Nice::Try::RETVAL } ) : { \@Nice::Try::RETVAL };
1415
- }
1416
- elsif( \$Nice::Try::WANT eq 'ARRAY' )
1417
- {
1418
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \\\@Nice::Try::RETVAL ) : \\\@Nice::Try::RETVAL;
1419
- }
1420
- elsif( \$Nice::Try::WANT eq 'GLOB' )
1421
- {
1422
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::RETVAL[0] ) : \$Nice::Try::RETVAL[0];
1423
- }
1424
- }
1425
- else
1426
- {
1427
- \$Nice::Try::NEED_TO_RETURN ? CORE::return( \$Nice::Try::WANTARRAY ? \@Nice::Try::RETVAL : \$Nice::Try::RETVAL[0] ) : \$Nice::Try::WANTARRAY ? \@Nice::Try::RETVAL : \$Nice::Try::RETVAL[0];
1428
- }
1429
- }
1430
- }
1431
- elsif( scalar( \@Nice::Try::VOID ) && ( !Scalar::Util::blessed( \$Nice::Try::VOID[0] ) || ( Scalar::Util::blessed( \$Nice::Try::VOID[0] ) && !\$Nice::Try::VOID[0]->isa( 'Nice::Try::SENTINEL' ) ) ) )
1432
- {
1433
- no warnings 'void';
1434
- scalar( \@Nice::Try::VOID ) > 1 ? \@Nice::Try::VOID : \$Nice::Try::VOID[0];
1435
- }
1436
- EOT
1437
- $last_return_block =~ s/\n/ /gs unless( $self->{debug_code} );
1438
- push( @$repl, $last_return_block );
1439
- my $try_catch_code = join( '', @$repl );
1440
- # my $token = PPI::Token->new( "; \{ $try_catch_code \}" ) || die( "Unable to create token" );
1441
- # NOTE: 2021-05-11 (Jacques): Need to remove blocks so that next or last statements can be effective.
1442
- my $envelop = <<EOT;
1443
- ; CORE::local( \$Nice::Try::BREAK, \@Nice::Try::LAST_VAL ); local \$Nice::Try::NEED_TO_RETURN = 0 unless( defined( \$Nice::Try::NEED_TO_RETURN ) );
1444
- \{
1445
- __TRY_CATCH_CODE__
1446
- \}
1447
- if( CORE::defined( \$Nice::Try::BREAK ) )
1448
- {
1449
- if( \$Nice::Try::BREAK eq 'next' )
1450
- {
1451
- CORE::next;
1452
- }
1453
- elsif( \$Nice::Try::BREAK eq 'last' )
1454
- {
1455
- CORE::last;
1456
- }
1457
- elsif( \$Nice::Try::BREAK eq 'redo' )
1458
- {
1459
- CORE::redo;
1460
- }
1461
- }
1462
- no warnings 'void';
1463
- CORE::scalar( \@Nice::Try::LAST_VAL ) > 1 ? \@Nice::Try::LAST_VAL : \$Nice::Try::LAST_VAL[0];
1464
- EOT
1465
- $envelop =~ s/\n/ /gs unless( $self->{debug_code} );
1466
- $envelop =~ s/__TRY_CATCH_CODE__/$try_catch_code/;
1467
- my $token = PPI::Token->new( $envelop ) || die( "Unable to create token" );
1468
- $token->set_class( 'Structure' );
1469
- my $struct = PPI::Structure->new( $token ) || die( "Unable to create PPI::Structure element" );
1470
- my $orig_try_catch_block = join( '', @$nodes_to_replace );
1471
- my $rc;
1472
- if( !( $rc = $element_before_try->insert_after( $token ) ) )
1473
- {
1474
- $self->_error( "Failed to add replacement code of class '", $token->class, "' after '$element_before_try'" );
1475
- next;
1476
- }
1477
- $self->_message( 3, "Return code is defined? ", defined( $rc ) ? "yes" : "no" ) if( $self->{debug} >= 3 );
1478
-
1479
- for( my $k = 0; $k < scalar( @$nodes_to_replace ); $k++ )
1480
- {
1481
- my $e = $nodes_to_replace->[$k];
1482
- $e->delete || warn( "Could not remove node No $k: '$e'\n" );
1483
- }
1484
- }
1485
- # End foreach catch found
1486
-
1487
- # NOTE: Do we have a __DATA__ or __END__ token ?
1488
- if( $opts->{has_data} )
1489
- {
1490
- my $ref = $elem->find(sub
1491
- {
1492
- my( $top, $this ) = @_;
1493
- return( ( $this->class eq 'PPI::Statement::Data' || $this->class eq 'PPI::Statement::End' ) ? 1 : 0 );
1494
- });
1495
- warn( "Warning only: Failed to find any __DATA__ or __END__ token." ) if( !defined( $ref ) && warnings::enabled() );
1496
- my $class = $self->{class};
1497
- my $name = 'DATA';
1498
- $self->_message( 4, "Found ", scalar( @$ref ), " DATA tokens." );
1499
- # There must be only one: either __DATA__ or __END__, so we process it, and exit the loop.
1500
- foreach my $this ( @$ref )
1501
- {
1502
- $self->_message( 4, "DATA or END token found." );
1503
- $self->_browse( $this ) if( $self->{debug} >= 5 );
1504
- my $tokens = $this->find(sub
1505
- {
1506
- my( $top, $this ) = @_;
1507
- # PPI::Token::End
1508
- return( ( $this->class eq 'PPI::Token::Data' || $this->class eq 'PPI::Token::End' ) ? 1 : 0 );
1509
- });
1510
- next if( !$tokens || ( defined( $tokens ) && ref( $tokens ) && !scalar( @$tokens ) ) );
1511
- my $token = $tokens->[0];
1512
- my $token_name_ref = $this->find( 'PPI::Token::Separator' );
1513
- my $token_name;
1514
- if( $token_name_ref && ref( $token_name_ref ) eq 'ARRAY' && scalar( @$token_name_ref ) )
1515
- {
1516
- $token_name = $token_name_ref->[0]->content;
1517
- }
1518
- else
1519
- {
1520
- warn( "Could not find the __END__ or __DATA__ separator." ) if( warnings::enabled() );
1521
- last;
1522
- }
1523
-
1524
- # my $io = $token->handle;
1525
- my $raw_data_str = $token->content;
1526
- $self->_message( 5, "Found DATA to be:\n${raw_data_str}" );
1527
-
1528
- # Create a new string that holds only non-POD data
1529
- my $filtered_data_str = '';
1530
-
1531
- if( $raw_data_str =~ /\S+/ )
1532
- {
1533
- # Parse the data as a PPI document to filter POD content
1534
- $self->_message( 5, "Parsing the DATA, and check for POD to skip." );
1535
- # Force it to be __END__ so PPI can handle properly the POD data
1536
- # FYI, PPI only handles POD data when the token is __END__, and not when it is __DATA__
1537
- if( $token_name eq '__DATA__' )
1538
- {
1539
- my $data_str = "__END__\n" . $raw_data_str;
1540
- require PPI::Tokenizer;
1541
- my $tokenizer = PPI::Tokenizer->new( \$data_str );
1542
- my $tokens = $tokenizer->all_tokens;
1543
- foreach my $token ( @$tokens )
1544
- {
1545
- $filtered_data_str .= "${token}" if( $token->class eq 'PPI::Token::End' );
1546
- }
1547
- }
1548
- else
1549
- {
1550
- $filtered_data_str = $raw_data_str;
1551
- }
1552
- }
1553
-
1554
- # Now $filtered_data_str holds only the non-POD data content
1555
- $self->_message( 5, "Creating BEGIN block to set DATA with value:\n${filtered_data_str}" );
1556
-
1557
- # Define the BEGIN block code with the filtered data
1558
- my $begin_block_code = <<"END_CODE";
1559
- CHECK
1560
- {
1561
- my \$nice_try_data_block_str = <<'END_OF_DATA';
1562
- ${filtered_data_str}
1563
- END_OF_DATA
1564
-
1565
- require Symbol;
1566
- my \$fh = Symbol::geniosym();
1567
- open( \$fh, '<:scalar', \\\$nice_try_data_block_str ) || die( \$! );
1568
- no strict 'refs';
1569
- no warnings 'redefine';
1570
- *{ __PACKAGE__ . '::DATA' } = \$fh;
1571
- };
1572
-
1573
- END_CODE
1574
- $self->_message( 5, "BEGIN block is:\n${begin_block_code}" );
1575
- my $begin_block = PPI::Token->new( $begin_block_code ) || die( "Unable to create token" );
1576
- $self->_message( 5, "Inserting BEGIN element object '", overload::StrVal( $begin_block ), "', before '", overload::StrVal( $this ), "'" );
1577
- my $rv = $this->__insert_before( $begin_block );
1578
- if( !defined( $rv ) )
1579
- {
1580
- warn( "BEGIN block object (", overload::StrVal( $begin_block ), ") to be inserted before the DATA token is not a valid object." ) if( warnings::enabled() );
1581
- last;
1582
- }
1583
- elsif( !$rv )
1584
- {
1585
- warn( "Somehow, the BEGIN block object (", overload::StrVal( $begin_block ), ") could not be inserted before the DATA token." ) if( warnings::enabled() );
1586
- last;
1587
- }
1588
- # $self->_message( 5, "BEGIN block object (", overload::StrVal( $begin_block ), ") was successfully inserted." );
1589
- # We end here, because there can be only one __DATA__ or __END__ token
1590
- last;
1591
- }
1592
- }
1593
-
1594
- # $self->_message( 5, "Code now is: $elem" );
1595
- return( $elem );
1596
- }
1597
-
1598
- # .Element: [11] class PPI::Token::Word, value caller
1599
- # .Element: [11] class PPI::Structure::List, value (1)
1600
- #
1601
- # ..Element: [12] class PPI::Token::Word, value caller
1602
- # ..Element: [12] class PPI::Token::Structure, value ;
1603
-
1604
- sub _process_caller
1605
- {
1606
- my $self = shift( @_ );
1607
- my $where = shift( @_ );
1608
- my $elem = shift( @_ ) || return( '' );
1609
- no warnings 'uninitialized';
1610
- return( $elem ) if( !$elem->children );
1611
- foreach my $e ( $elem->elements )
1612
- {
1613
- my $content = $e->content // '';
1614
- my $class = $e->class;
1615
- if( $class eq 'PPI::Token::Word' && $content =~ /^(?:CORE\::)?(?:GLOBAL\::)?caller$/ )
1616
- {
1617
- $e->set_content( 'Nice::Try::caller_' . $where );
1618
- }
1619
-
1620
- if( $e->can('elements') && $e->elements )
1621
- {
1622
- $self->_process_caller( $where => $e );
1623
- }
1624
- }
1625
- return( $elem );
1626
- }
1627
-
1628
- sub _process_loop_breaks
1629
- {
1630
- my $self = shift( @_ );
1631
- my $elem = shift( @_ ) || return( '' );
1632
- no warnings 'uninitialized';
1633
- return( $elem ) if( !$elem->children );
1634
- my $ct = "$elem";
1635
- # There is nothing to do
1636
- if( index( $ct, 'last' ) == -1 &&
1637
- index( $ct, 'next' ) == -1 &&
1638
- index( $ct, 'redo' ) == -1 &&
1639
- index( $ct, 'goto' ) == -1 &&
1640
- index( $ct, 'return' ) == -1 )
1641
- {
1642
- $self->_message( 4, "There is nothing to be done. Key words last, next, redo or goto are not found." ) if( $self->{debug} >= 4 );
1643
- return( '' );
1644
- }
1645
- $self->_message( 5, "Checking loop breaks in ", scalar( $elem->elements ), " elements for '$elem'" ) if( $self->{debug} >= 5 );
1646
- foreach my $e ( $elem->elements )
1647
- {
1648
- my $content = $e->content // '';
1649
- $self->_messagef( 6, "Checking element: [%d] class %s with %d children and value '%s'\n", $e->line_number, $e->class, ( $e->can('elements') ? scalar( $e->elements ) : 0 ), $content ) if( $self->{debug} >= 6 );
1650
- my $class = $e->class;
1651
- # We found a for, foreach or while loops and we skip, because if there are any break words (next, last, redo) inside, it is not our problem.
1652
- if( $class eq 'PPI::Structure::For' ||
1653
- ( $class eq 'PPI::Statement::Compound' &&
1654
- CORE::defined( $e->first_element->content ) &&
1655
- $e->first_element->content =~ /^(for|foreach|while)$/ ) )
1656
- {
1657
- next;
1658
- }
1659
- elsif( $class eq 'PPI::Token::Word' && $content =~ /^(?:CORE\::)?(?:GLOBAL\::)?(next|last|redo)$/ )
1660
- {
1661
- $self->_message( 5, "Found loop keyword '$content'." ) if( $self->{debug} >= 5 );
1662
- # $e->set_content( qq{CORE::return( '__} . uc( $1 ) . qq{__' )} );
1663
- # $e->set_content( q{$Nice::Try::BREAK='__} . uc( $1 ) . qq{__' ); return;} );
1664
- my $break_code = q{$Nice::Try::BREAK='} . $1 . qq{', return;};
1665
- my $break_doc = PPI::Document->new( \$break_code, readonly => 1 );
1666
- my $new_elem = $break_doc->first_element;
1667
- $new_elem->remove;
1668
- $self->_message( 5, "New element is object '", sub{ overload::StrVal( $new_elem ) }, "' -> $new_elem" ) if( $self->{debug} >= 5 );
1669
- # Not yet implemented as of 2021-05-11 dixit PPI, so we use a hack to make it available anyhow
1670
- $e->replace( $new_elem );
1671
- $self->_message( 5, "Loop keyword now replaced with '$e'." ) if( $self->{debug} >= 5 );
1672
- }
1673
- elsif( $class eq 'PPI::Statement::Break' )
1674
- {
1675
- my $words = $e->find( 'PPI::Token::Word' );
1676
- $self->_messagef( 5, "Found %d word elements inside break element.", scalar( @$words ) ) if( $self->{debug} >= 5 );
1677
- my $word1 = ( scalar( @$words ) ? $words->[0]->content // '' : '' );
1678
- my $word2 = ( scalar( @$words ) > 1 ? $words->[1]->content // '' : '' );
1679
- $self->_message( 5, "Word 1 -> ", $word1 ) if( $self->{debug} >= 5 );
1680
- $self->_message( 5, "Word 2 -> ", $word2 ) if( $self->{debug} >= 5 && scalar( @$words ) > 1 );
1681
- # If we found a break word without a label, i.e. next, last, redo,
1682
- # we replace it with a special return statement
1683
- if( (
1684
- scalar( @$words ) == 1 ||
1685
- ( scalar( @$words ) > 1 && $word2 =~ /^(for|foreach|given|if|unless|until|while)$/ ) ||
1686
- $word1 eq 'return'
1687
- ) &&
1688
- (
1689
- $word1 eq 'next' ||
1690
- $word1 eq 'last' ||
1691
- $word1 eq 'redo' ||
1692
- $word1 eq 'return'
1693
- ) )
1694
- {
1695
- # We add our special return value. Notice that we use 'return' and not
1696
- # 'CORE::return'. See below why.
1697
- # my $break_code = qq{return( '__} . uc( $word1 ) . qq{__' )};
1698
- my $break_code = q{$Nice::Try::BREAK='} . $word1 . ( $word1 eq 'return' ? "', $e" : qq{', return} );
1699
- # e.g. next if( $i == 2 );
1700
- # next and if are both treated as 'word' by PPI
1701
- if( scalar( @$words ) > 1 )
1702
- {
1703
- ( my $ct = $e->content ) =~ s/^(next|last|redo)//;
1704
- $break_code .= $ct;
1705
- }
1706
- else
1707
- {
1708
- $break_code .= ';'
1709
- }
1710
- $self->_message( 5, "Replacing this node with: $break_code" ) if( $self->{debug} >= 5 );
1711
-
1712
- my $break_doc = PPI::Document->new( \$break_code, readonly => 1 );
1713
- my $new_elem = $break_doc->first_element;
1714
- $new_elem->remove;
1715
- $self->_message( 5, "New element is object '", sub{ overload::StrVal( $new_elem ) }, "' -> $new_elem" ) if( $self->{debug} >= 5 );
1716
- # Not yet implemented as of 2021-05-11 dixit PPI, so we use a hack to make it available anyhow
1717
- $self->_message( 5, "Updated element now is '$e' for class '", $e->class, "' and parent class '", $e->parent->class, "'." ) if( $self->{debug} >= 5 );
1718
- $e->replace( $new_elem );
1719
- # 2021-05-12 (Jacques): I have to do this workaround, because weirdly enough
1720
- # PPI (at least with PPI::Node version 1.270) will refuse to add our element
1721
- # if the 'return' word is 'CORE::return' so, we add it without and change it after
1722
- # $new_elem->first_element->set_content( 'CORE::return' );
1723
- }
1724
- next;
1725
- }
1726
- elsif( $class eq 'PPI::Token::Word' &&
1727
- ( $e->content // '' ) eq 'return' &&
1728
- $e->sprevious_sibling &&
1729
- # Should be enough
1730
- $e->sprevious_sibling->class eq 'PPI::Token::Operator' )
1731
- # $e->sprevious_sibling->class eq 'PPI::Token::Operator' &&
1732
- # ( $e->sprevious_sibling->content // '' ) =~ /^$/ )
1733
- {
1734
- my $break_code;
1735
- my @to_remove;
1736
- # return( # something );
1737
- if( $e->snext_sibling &&
1738
- $e->snext_sibling->class eq 'PPI::Structure::List' )
1739
- {
1740
- my $list = $e->snext_sibling;
1741
- push( @to_remove, $list );
1742
- $break_code = "return( \$Nice::Try::RETURN->${list} )";
1743
- }
1744
- # return( "" ) or return( '' )
1745
- elsif( $e->snext_sibling &&
1746
- $e->snext_sibling->isa( 'PPI::Token::Quote' ) )
1747
- {
1748
- my $list = $e->snext_sibling;
1749
- push( @to_remove, $list );
1750
- $break_code = "return( \$Nice::Try::RETURN->(${list}) );";
1751
- }
1752
- # return;
1753
- elsif( $e->snext_sibling &&
1754
- $e->snext_sibling->class eq 'PPI::Token::Structure' &&
1755
- $e->snext_sibling->content eq ';' )
1756
- {
1757
- $break_code = "return( \$Nice::Try::RETURN->() );";
1758
- }
1759
- else
1760
- {
1761
- my $list = '';
1762
- my $next_elem;
1763
- my $prev_elem = $e;
1764
- while( $next_elem = $prev_elem->snext_sibling )
1765
- {
1766
- last if( $next_elem->content eq ';' );
1767
- $list .= $next_elem->content;
1768
- push( @to_remove, $next_elem );
1769
- $prev_elem = $next_elem;
1770
- }
1771
- $break_code = "return( \$Nice::Try::RETURN->(${list}) );";
1772
- }
1773
- my $break_doc = PPI::Document->new( \$break_code, readonly => 1 );
1774
- my $new_elem = $break_doc->first_element;
1775
- $new_elem->remove;
1776
- $self->_message( 5, "New element is object '", sub{ overload::StrVal( $new_elem ) }, "' -> $new_elem" ) if( $self->{debug} >= 5 );
1777
- # Not yet implemented as of 2021-05-11 dixit PPI, so we use a hack to make it available anyhow
1778
- $e->replace( $new_elem );
1779
- $_->remove for( @to_remove );
1780
- }
1781
-
1782
- if( $e->can('elements') && $e->elements )
1783
- {
1784
- $self->_process_loop_breaks( $e );
1785
- }
1786
- }
1787
- return( $elem );
1788
- }
1789
-
1790
- sub _process_sub_token
1791
- {
1792
- my $self = shift( @_ );
1793
- my $elem = shift( @_ ) || return( '' );
1794
- # token __SUB__ is only available since perl v5.16
1795
- return( '' ) unless( $] >= 5.016000 );
1796
- if( index( "$elem", '__SUB__' ) == -1 )
1797
- {
1798
- $self->_message( 5, "No __SUB__ token found in ", scalar( $elem->elements ), " elements for '$elem'" ) if( $self->{debug} >= 5 );
1799
- return( '' );
1800
- }
1801
- no warnings 'uninitialized';
1802
- return( $elem ) if( !$elem->children );
1803
- $self->_message( 5, "Checking __SUB__ token in ", scalar( $elem->elements ), " elements for '$elem'" ) if( $self->{debug} >= 5 );
1804
- # Look for parent, and if we can find a sub, or an anonymous sub
1805
- # my $sub = sub{} -> PPI::Token::Word 'sub', PPI::Structure::Block '{'
1806
- # sub mysub {} -> PPI::Statement::Sub -> PPI::Token::Word 'sub', PPI::Token::Word 'mysub', PPI::Structure::Block '{'
1807
- my $find_closest_sub;
1808
- $find_closest_sub = sub
1809
- {
1810
- my $e = shift( @_ );
1811
- return if( !defined( $e ) );
1812
- my $parent = $e->parent;
1813
- return if( !$parent );
1814
- # Keep going up until we find a block
1815
- while( $parent )
1816
- {
1817
- $self->_message( 5, "Checking parent element of class ", $parent->class, " and value $parent" ) if( $self->{debug} >= 5 );
1818
- if( $parent->class eq 'PPI::Structure::Block' )
1819
- {
1820
- my $sub_name;
1821
- my $prev = $parent->sprevious_sibling;
1822
- while( $prev )
1823
- {
1824
- if( $prev->content eq 'sub' )
1825
- {
1826
- return({ element => $parent, name => $sub_name });
1827
- }
1828
-
1829
- if( $prev->class eq 'PPI::Token::Word' )
1830
- {
1831
- if( CORE::defined( $sub_name ) )
1832
- {
1833
- warn( "Found some redefinition of a subroutine's name at line ", $prev->line_number, " for subroutine '${sub_name}'\n" ) if( warnings::enabled() );
1834
- }
1835
- $sub_name = $prev->content;
1836
- }
1837
- $prev = $prev->sprevious_sibling;
1838
- }
1839
- }
1840
- $parent = $parent->parent;
1841
- }
1842
- return;
1843
- };
1844
- my $def = $find_closest_sub->( $elem );
1845
- if( $def )
1846
- {
1847
- my $block = $def->{element};
1848
- $self->_message( 5, "Found a sub block at line ", $block->line_number, " of class ", $block->class, " with name '", ( $def->{name} // 'anonymous' ), "'" ) if( $self->{debug} >= 5 );
1849
- my $sub_token_code = <<'PERL';
1850
- CORE::local $Nice::Try::SUB_TOKEN;
1851
- {
1852
- use feature 'current_sub';
1853
- no warnings 'experimental';
1854
- $Nice::Try::SUB_TOKEN = __SUB__;
1855
- }
1856
- PERL
1857
- $sub_token_code =~ s/\n//gs;
1858
- # $sub_token_code .= $block;
1859
- my $sub_token_doc = PPI::Document->new( \$sub_token_code, readonly => 1 );
1860
- my @new_elems = $sub_token_doc->elements;
1861
- # my $new_elem = $sub_token_doc;
1862
- # $new_elem->remove;
1863
- $_->remove for( @new_elems );
1864
- $self->_message( 5, "New elements is object '", sub{ join( ', ', map( overload::StrVal( $_ ), @new_elems ) ) }, "' -> $_" ) if( $self->{debug} >= 5 );
1865
- # $block->replace( $new_elem );
1866
- # Not yet implemented as of 2021-05-11 dixit PPI, so we use a hack to make it available anyhow
1867
- my $rv;
1868
- my @children = $block->children;
1869
- if( scalar( @children ) )
1870
- {
1871
- my $last = $children[0];
1872
- for( reverse( @new_elems ) )
1873
- {
1874
- $rv = $last->__insert_before( $_ );
1875
- $self->_message( 5, "Element successfully inserted? ", ( defined( $rv ) ? ( $rv ? 'yes' : 'no' ) : 'no. element provided was not an PPI::Element.' ) ) if( $self->{debug} >= 5 );
1876
- $last = $_;
1877
- }
1878
- }
1879
- else
1880
- {
1881
- for( @new_elems )
1882
- {
1883
- $rv = $block->add_element( $_ );
1884
- $self->_message( 5, "Element successfully inserted? ", ( defined( $rv ) ? ( ref( $rv ) eq 'PPI::Element' ? 'ok' : 'returned value is not an PPI::Element (' . ref( $rv ) . ')' ) : 'no' ) ) if( $self->{debug} >= 5 );
1885
- }
1886
- }
1887
- $self->_message( 5, "Updated block now is '$block' for class '", $block->class, "'." ) if( $self->{debug} >= 5 );
1888
- }
1889
- else
1890
- {
1891
- $self->_message( 5, "No subroutine found! This is a try-catch block outside of a subroutine." ) if( $self->{debug} >= 5 );
1892
- }
1893
-
1894
- my $crawl;
1895
- $crawl = sub
1896
- {
1897
- my $this = shift( @_ );
1898
- foreach my $e ( $this->elements )
1899
- {
1900
- $self->_message( 5, "Checking element ", overload::StrVal( $e ), " of class ", $e->class, " for token __SUB__" ) if( $self->{debug} >= 5 );
1901
- if( $e->content eq '__SUB__' )
1902
- {
1903
- $self->_message( 5, "Found token __SUB__" ) if( $self->{debug} >= 5 );
1904
- my $new_ct = '$Nice::Try::SUB_TOKEN';
1905
- my $new_ct_doc = PPI::Document->new( \$new_ct, readonly => 1 );
1906
- my $new_token = $new_ct_doc->first_element;
1907
- $new_token->remove;
1908
- $e->replace( $new_token );
1909
- }
1910
- elsif( $e->can( 'elements' ) &&
1911
- scalar( $e->elements ) &&
1912
- index( "$e", '__SUB__' ) != -1 )
1913
- {
1914
- $crawl->( $e );
1915
- }
1916
- }
1917
- };
1918
- $crawl->( $elem );
1919
- $self->_message( 5, "After processing __SUB__ tokens, try-catch block is now:\n$elem" ) if( $self->{debug} >= 5 );
1920
- return( $elem );
1921
- }
1922
-
1923
- # Taken from PPI::Document
1924
- sub _serialize
1925
- {
1926
- my $self = shift( @_ );
1927
- my $ppi = shift( @_ ) || return( '' );
1928
- no warnings 'uninitialized';
1929
- my @tokens = $ppi->tokens;
1930
-
1931
- # The here-doc content buffer
1932
- my $heredoc = '';
1933
-
1934
- # Start the main loop
1935
- my $output = '';
1936
- foreach my $i ( 0 .. $#tokens ) {
1937
- my $Token = $tokens[$i];
1938
-
1939
- # Handle normal tokens
1940
- unless ( $Token->isa('PPI::Token::HereDoc') ) {
1941
- my $content = $Token->content;
1942
-
1943
- # Handle the trivial cases
1944
- unless ( $heredoc ne '' and $content =~ /\n/ ) {
1945
- $output .= $content;
1946
- next;
1947
- }
1948
-
1949
- # We have pending here-doc content that needs to be
1950
- # inserted just after the first newline in the content.
1951
- if ( $content eq "\n" ) {
1952
- # Shortcut the most common case for speed
1953
- $output .= $content . $heredoc;
1954
- } else {
1955
- # Slower and more general version
1956
- $content =~ s/\n/\n$heredoc/;
1957
- $output .= $content;
1958
- }
1959
-
1960
- $heredoc = '';
1961
- next;
1962
- }
1963
-
1964
- # This token is a HereDoc.
1965
- # First, add the token content as normal, which in this
1966
- # case will definitely not contain a newline.
1967
- $output .= $Token->content;
1968
-
1969
- # Now add all of the here-doc content to the heredoc buffer.
1970
- foreach my $line ( $Token->heredoc ) {
1971
- $heredoc .= $line;
1972
- }
1973
-
1974
- if ( $Token->{_damaged} ) {
1975
- # Special Case:
1976
- # There are a couple of warning/bug situations
1977
- # that can occur when a HereDoc content was read in
1978
- # from the end of a file that we silently allow.
1979
- #
1980
- # When writing back out to the file we have to
1981
- # auto-repair these problems if we aren't going back
1982
- # on to the end of the file.
1983
-
1984
- # When calculating $last_line, ignore the final token if
1985
- # and only if it has a single newline at the end.
1986
- my $last_index = $#tokens;
1987
- if ( $tokens[$last_index]->{content} =~ /^[^\n]*\n$/ ) {
1988
- $last_index--;
1989
- }
1990
-
1991
- # This is a two part test.
1992
- # First, are we on the last line of the
1993
- # content part of the file
1994
- my $last_line = List::Util::none {
1995
- $tokens[$_] and $tokens[$_]->{content} =~ /\n/
1996
- } (($i + 1) .. $last_index);
1997
- if ( ! defined $last_line ) {
1998
- # Handles the null list case
1999
- $last_line = 1;
2000
- }
2001
-
2002
- # Secondly, are their any more here-docs after us,
2003
- # (with content or a terminator)
2004
- my $any_after = List::Util::any {
2005
- $tokens[$_]->isa('PPI::Token::HereDoc')
2006
- and (
2007
- scalar(@{$tokens[$_]->{_heredoc}})
2008
- or
2009
- defined $tokens[$_]->{_terminator_line}
2010
- )
2011
- } (($i + 1) .. $#tokens);
2012
- if ( ! defined $any_after ) {
2013
- # Handles the null list case
2014
- $any_after = '';
2015
- }
2016
-
2017
- # We don't need to repair the last here-doc on the
2018
- # last line. But we do need to repair anything else.
2019
- unless ( $last_line and ! $any_after ) {
2020
- # Add a terminating string if it didn't have one
2021
- unless ( defined $Token->{_terminator_line} ) {
2022
- $Token->{_terminator_line} = $Token->{_terminator};
2023
- }
2024
-
2025
- # Add a trailing newline to the terminating
2026
- # string if it didn't have one.
2027
- unless ( $Token->{_terminator_line} =~ /\n$/ ) {
2028
- $Token->{_terminator_line} .= "\n";
2029
- }
2030
- }
2031
- }
2032
-
2033
- # Now add the termination line to the heredoc buffer
2034
- if ( defined $Token->{_terminator_line} ) {
2035
- $heredoc .= $Token->{_terminator_line};
2036
- }
2037
- }
2038
-
2039
- # End of tokens
2040
-
2041
- if ( $heredoc ne '' ) {
2042
- # If the file doesn't end in a newline, we need to add one
2043
- # so that the here-doc content starts on the next line.
2044
- unless ( $output =~ /\n$/ ) {
2045
- $output .= "\n";
2046
- }
2047
-
2048
- # Now we add the remaining here-doc content
2049
- # to the end of the file.
2050
- $output .= $heredoc;
2051
- }
2052
-
2053
- $output;
2054
- }
2055
-
2056
-
2057
- {
2058
- # NOTE: Nice::Try::ScopeGuard class
2059
- package # hide from PAUSE
2060
- Nice::Try::ScopeGuard;
2061
-
2062
- # older versions of perl have an issue with $@ during global destruction
2063
- use constant UNSTABLE_DOLLARAT => ("$]" < '5.013002') ? 1 : 0;
2064
-
2065
- sub _new
2066
- {
2067
- my $this = shift( @_ );
2068
- return( bless( [ @_ ] => ( ref( $this ) || $this ) ) );
2069
- }
2070
-
2071
- sub DESTROY
2072
- {
2073
- my( $code, $args, $catch_err ) = @{ $_[0] };
2074
- # save the current exception to make it available in the finally sub,
2075
- # and to restore it after the eval
2076
- my $err = defined( $catch_err ) ? $catch_err : $@;
2077
- local $@ if( UNSTABLE_DOLLARAT );
2078
- $@ = $catch_err if( defined( $catch_err ) );
2079
- CORE::eval
2080
- {
2081
- $@ = $err;
2082
- $code->( @$args );
2083
- 1;
2084
- }
2085
- or do
2086
- {
2087
- CORE::warn
2088
- "Execution of finally() block $code resulted in an exception, which "
2089
- . '*CAN NOT BE PROPAGATED* due to fundamental limitations of Perl. '
2090
- . 'Your program will continue as if this event never took place. '
2091
- . "Original exception text follows:\n\n"
2092
- . (defined $@ ? $@ : '$@ left undefined...')
2093
- . "\n"
2094
- ;
2095
- };
2096
- # maybe unnecessary?
2097
- $@ = $err;
2098
- }
2099
- }
2100
-
2101
- {
2102
- # NOTE: Nice::Try::ObjectContext
2103
- package
2104
- Nice::Try::ObjectContext;
2105
-
2106
- sub new
2107
- {
2108
- my $that = shift( @_ );
2109
- return( bless( { val => [@_] } => ( ref( $that ) || $that ) ) );
2110
- }
2111
-
2112
- sub callback
2113
- {
2114
- my $self = shift( @_ );
2115
- return( $self->{val}->[0] );
2116
- }
2117
- }
2118
-
2119
- {
2120
- # NOTE: PPI::Element
2121
- package
2122
- PPI::Element;
2123
-
2124
- no warnings 'redefine';
2125
- sub replace {
2126
- my $self = ref $_[0] ? shift : return undef;
2127
- # If our object and the other are not of the same class, PPI refuses to replace
2128
- # to avoid damages to perl code
2129
- # my $other = _INSTANCE(shift, ref $self) or return undef;
2130
- my $other = shift;
2131
- # die "The ->replace method has not yet been implemented";
2132
- $self->parent->__replace_child( $self, $other );
2133
- 1;
2134
- }
2135
- }
2136
-
2137
- 1;
2138
-
2139
- # NOTE POD
2140
- __END__
2141
-
2142
- =encoding utf-8
2143
-
2144
- =head1 NAME
2145
-
2146
- Nice::Try - A real Try Catch Block Implementation Using Perl Filter
2147
-
2148
- =head1 SYNOPSIS
2149
-
2150
- use Nice::Try;
2151
-
2152
- print( "Hello, I want to try\n" );
2153
- # Try out {
2154
- print( "this piece of code\n" );
2155
- try
2156
- {
2157
- # Not so sure }
2158
- print( "I am trying!\n" );
2159
- die( "Bye cruel world..." );
2160
- # Never going to reach this
2161
- return( 1 );
2162
- }
2163
- # Some comment
2164
- catch( Exception $e ) {
2165
- return( "Caught an exception $e" );
2166
- }
2167
- # More comment with space too
2168
-
2169
- catch( $e ) {
2170
- print( "Got an error: $e\n" );
2171
- }
2172
- finally
2173
- {
2174
- print( "Cleaning up\n" );
2175
- }
2176
- print( "Ok, then\n" );
2177
-
2178
- When run, this would produce, as one would expect:
2179
-
2180
- Hello, I want to try
2181
- this piece of code
2182
- I am trying!
2183
- Got an error: Bye cruel world... at ./some/script.pl line 18.
2184
- Cleaning up
2185
- Ok, then
2186
-
2187
- Also since version 1.0.0, L<Nice::Try> is B<extended> context aware:
2188
-
2189
- use Want; # an awesome module which extends wantarray
2190
- sub info
2191
- {
2192
- my $self = shift( @_ );
2193
- try
2194
- {
2195
- # Do something
2196
- if( want('OBJECT') )
2197
- {
2198
- return( $self );
2199
- }
2200
- elsif( want('CODE') )
2201
- {
2202
- # dummy code ref for example
2203
- return( sub{ return( $name ); } );
2204
- }
2205
- elsif( want('LIST') )
2206
- {
2207
- return( @some_data );
2208
- }
2209
- elsif( want('ARRAY') )
2210
- {
2211
- return( \@some_data );
2212
- }
2213
- elsif( want('HASH') )
2214
- {
2215
- return({ name => $name, location => $city });
2216
- }
2217
- elsif( want('REFSCALAR') )
2218
- {
2219
- return( \$name );
2220
- }
2221
- elsif( want('SCALAR' ) )
2222
- {
2223
- return( $name ); # regular string
2224
- }
2225
- elsif( want('VOID') )
2226
- {
2227
- return;
2228
- }
2229
- }
2230
- catch( $e )
2231
- {
2232
- $Logger->( "Caught exception: $e" );
2233
- }
2234
- }
2235
-
2236
- # regular string context
2237
- my $name = $o->info;
2238
- # code context
2239
- my $name = $o->info->();
2240
- # list context like wantarray
2241
- my @data = $o->info;
2242
- # hash context
2243
- my $name = $o->info->{name};
2244
- # array context
2245
- my $name = $o->info->[2];
2246
- # object context
2247
- my $name = $o->info->another_method;
2248
- # scalar reference context
2249
- my $name = ${$o->info};
2250
-
2251
- And you also have granular power in the catch block to filter which exception to handle. See more on this in L</"EXCEPTION CLASS">
2252
-
2253
- try
2254
- {
2255
- die( Exception->new( "Arghhh" => 401 ) );
2256
- }
2257
- # can also write this as:
2258
- # catch( Exception $oopsie where { $_->message =~ /Arghhh/ && $_->code == 500 } )
2259
- catch( $oopsie isa Exception where { $_->message =~ /Arghhh/ && $_->code == 500 } )
2260
- {
2261
- # Do something to deal with some server error
2262
- }
2263
- catch( $oopsie isa Exception where { $_->message =~ /Arghhh/ && $_->code == 401 } )
2264
- {
2265
- # should reach here.
2266
- }
2267
- catch( $oh_well isa("Exception") ) # or you can also write catch( Exception $oh_well )
2268
- {
2269
- # Default using another way to filter by Exception
2270
- }
2271
- catch( $oopsie where { /Oh no/ } )
2272
- {
2273
- # Do something based on the value of a simple error; not an exception class
2274
- }
2275
- # Default
2276
- catch( $default )
2277
- {
2278
- print( "Unknown error: $default\n" );
2279
- }
2280
-
2281
- =head1 VERSION
2282
-
2283
- v1.3.15
2284
-
2285
- =head1 DESCRIPTION
2286
-
2287
- L<Nice::Try> is a lightweight implementation of Try-Catch exception trapping block using L<perl filter|perlfilter>. It behaves like you would expect.
2288
-
2289
- Here is a list of its distinctive features:
2290
-
2291
- =over 4
2292
-
2293
- =item * No routine to import like C<Nice::Try qw( try catch )>. Just add C<use Nice::Try> in your script
2294
-
2295
- =item * Properly report the right line number for the original error message
2296
-
2297
- =item * Allows embedded try-catch block within try-catch block, such as:
2298
-
2299
- use Nice::Try;
2300
-
2301
- print( "Wow, something went awry: ", &gotcha, "\n" );
2302
-
2303
- sub gotcha
2304
- {
2305
- print( "Hello, I want to try\n" );
2306
- # Try out {
2307
- CORE::say( 'this piece' );
2308
- try
2309
- {
2310
- # Not so sure }
2311
- print( "I am trying!\n" );
2312
- try
2313
- {
2314
- die( "Bye cruel world..." );
2315
- return( 1 );
2316
- }
2317
- catch( $err )
2318
- {
2319
- die( "Dying again with embedded error: '$err'" );
2320
- }
2321
- }
2322
- catch( Exception $e ) {
2323
- return( "Caught an exception \$e" );
2324
- }
2325
- catch( $e ) {
2326
- try
2327
- {
2328
- print( "Got an error: $e\n" );
2329
- print( "Trying something else.\n" );
2330
- die( "No really, dying out... with error: $e\n" );
2331
- }
2332
- catch( $err2 )
2333
- {
2334
- return( "Returning from catch L2 with error '$err2'" );
2335
- }
2336
- }
2337
- CORE::say( "Ok, then" );
2338
- }
2339
-
2340
- =item * No need for semicolon on the last closing brace
2341
-
2342
- =item * It does not rely on perl regular expression, but instead uses L<PPI> (short for "Perl Parsing Interface").
2343
-
2344
- =item * Variable assignment in the catch block works. For example:
2345
-
2346
- try
2347
- {
2348
- # Something or
2349
- die( "Oops\n" );
2350
- }
2351
- catch( $funky_variable_name )
2352
- {
2353
- return( "Oh no: $funky_variable_name" );
2354
- }
2355
-
2356
- =item * C<catch> can filter by exception class. For example:
2357
-
2358
- try
2359
- {
2360
- die( My::Exception->new( "Not alllowed here.", { code => 401 }) );
2361
- }
2362
- catch( My::Exception $e where { $_->code == 500 })
2363
- {
2364
- print( "Oopsie\n" );
2365
- }
2366
- catch( My::Exception $e where { $_->code == 401 })
2367
- {
2368
- print( "Get away!\n" );
2369
- }
2370
- catch( My::Exception $e )
2371
- {
2372
- print( "Got an exception: $e\n" );
2373
- }
2374
- catch( $default )
2375
- {
2376
- print( "Something weird has happened: $default\n" );
2377
- }
2378
- finally
2379
- {
2380
- $dbh->disconnect;
2381
- }
2382
-
2383
- See more on this in L</"EXCEPTION CLASS">
2384
-
2385
- =item * C<$@> is always available too
2386
-
2387
- =item * You can return a value from try-catch blocks, even with embedded try-catch blocks
2388
-
2389
- =item * It recognises C<@_> inside try-catch blocks, so you can do something like:
2390
-
2391
- print( &gotme( 'Jacques' ), "\n" );
2392
-
2393
- sub gotme
2394
- {
2395
- try
2396
- {
2397
- print( "I am trying my best $_[0]!\n" );
2398
- die( "But I failed\n" );
2399
- }
2400
- catch( $some_reason )
2401
- {
2402
- return( "Failed: $some_reason" );
2403
- }
2404
- }
2405
-
2406
- Would produce:
2407
-
2408
- I am trying my best Jacques!
2409
- Failed: But I failed
2410
-
2411
- =item * C<try> or C<catch> blocks can contain flow control keywords such as C<next>, C<last> and C<redo>
2412
-
2413
- while( defined( my $product = $items->[++$i] ) )
2414
- {
2415
- try
2416
- {
2417
- # Do something
2418
- last if( !$product->active );
2419
- }
2420
- catch( $oops )
2421
- {
2422
- $log->( "Error: $oops" );
2423
- last;
2424
- }
2425
- }
2426
- continue
2427
- {
2428
- try
2429
- {
2430
- if( $product->region eq 'Asia' )
2431
- {
2432
- push( @asia, $product );
2433
- }
2434
- else
2435
- {
2436
- next;
2437
- }
2438
- }
2439
- catch( $e )
2440
- {
2441
- $log->( "An unexpected error has occurred. Is $product an object? $e" );
2442
- last;
2443
- }
2444
- }
2445
-
2446
- =item * Can be used with or without a C<catch> block
2447
-
2448
- =item * Supports a C<finally> block called in void context for cleanup for example. The C<finally> block will always be called, if present.
2449
-
2450
- #!/usr/local/bin/perl
2451
- use v5.36;
2452
- use strict;
2453
- use warnings;
2454
- use Nice::Try;
2455
-
2456
- try
2457
- {
2458
- die( "Oops" );
2459
- }
2460
- catch( $e )
2461
- {
2462
- say "Caught an error: $e";
2463
- die( "Oops again" );
2464
- }
2465
- finally
2466
- {
2467
- # Some code here that will be executed after the catch block dies
2468
- say "Got here in finally with \$\@ -> $@";
2469
- }
2470
-
2471
- The above would yield something like:
2472
-
2473
- Caught error: Oops at ./test.pl line 9.
2474
- Oops again at ./test.pl line 14.
2475
- Got here in finally with $@ -> Oops again at ./test.pl line 14.
2476
-
2477
- =item * L<Nice::Try> is rich context aware, which means it can provide you with a super granular context on how to return data back to the caller based on the caller's expectation, by using a module like L<Want>.
2478
-
2479
- =item * Call to L<perlfunc/caller> will return the correct entry in call stack
2480
-
2481
- #!/usr/bin/perl
2482
- BEGIN
2483
- {
2484
- use strict;
2485
- use warnings;
2486
- use Nice::Try;
2487
- };
2488
-
2489
- {
2490
- &callme();
2491
- }
2492
-
2493
- sub callme
2494
- {
2495
- try
2496
- {
2497
- my @info = caller(1); # or my @info = caller;
2498
- print( "Called from package $info[0] in file $info[1] at line $info[2]\n" );
2499
- }
2500
- catch( $e )
2501
- {
2502
- print( "Got an error: $e\n" );
2503
- }
2504
- }
2505
-
2506
- Will yield: C<Called from package main in file ./test.pl at line 10>
2507
-
2508
- =back
2509
-
2510
- =head1 WHY USE IT?
2511
-
2512
- There are quite a few implementations of try-catch blocks in perl, and they can be grouped in 4 categories:
2513
-
2514
- =over 4
2515
-
2516
- =item 1 Try-Catch as subroutines
2517
-
2518
- For example L<Try::Tiny>
2519
-
2520
- =item 2 Using Perl Filter
2521
-
2522
- For example L<Nice::Try>, L<Try::Harder>
2523
-
2524
- =item 3 Using L<Devel::Declare>
2525
-
2526
- For example L<TryCatch>
2527
-
2528
- =item 4 Others
2529
-
2530
- For example L<Syntax::Keyword::Try> and now perl with L<version 5.34.0 using experimental feature|https://perldoc.perl.org/5.34.0/perldelta#Experimental-Try/Catch-Syntax>.
2531
-
2532
- =back
2533
-
2534
- Group 1 requires the use of semi-colons like:
2535
-
2536
- try
2537
- {
2538
- # Something
2539
- }
2540
- catch
2541
- {
2542
- # More code
2543
- };
2544
-
2545
- It also imports the subroutines C<try> and C<catch> in your namespace.
2546
-
2547
- And you cannot do exception variable assignment like C<catch( $err )>
2548
-
2549
- In group 2, L<Try::Harder> does a very nice work, but relies on perl regular expression with L<Text::Balanced> and that makes it susceptible to failure if the try-catch block is not written as it expects it to be. For example if you put comments between try and catch, it would not work anymore. This is because parsing perl is famously difficult. Also, it does not do exception variable assignment, or catch filtered based on exception class like:
2550
-
2551
- try
2552
- {
2553
- # Something
2554
- die( Exception->new( "Failed!" ) );
2555
- }
2556
- catch( Exception $e )
2557
- {
2558
- # Do something if exception is an Exception class
2559
- }
2560
-
2561
- See L<perlfunc/"die"> for more information on dying with an object.
2562
-
2563
- Also L<Try::Harder> will die if you use only C<try> with no catch, such as:
2564
-
2565
- use Try::Harder;
2566
- try
2567
- {
2568
- die( "Oops\n" );
2569
- }
2570
- # Will never reach this
2571
- print( "Got here with $@\n" );
2572
-
2573
- In this example, the print line will never get executed. With L<Nice::Try> you can use C<try> alone as an equivalent of L<perlfunc/"eval"> and the C<$@> will be available too. So:
2574
-
2575
- use Nice::Try;
2576
- try
2577
- {
2578
- die( "Oops\n" );
2579
- }
2580
- print( "Got here with $@\n" );
2581
-
2582
- will produces:
2583
-
2584
- Got here with Oops
2585
-
2586
- In group 3, L<TryCatch> was working wonderfully, but was relying on L<Devel::Declare> which was doing some esoteric stuff and eventually the version 0.006020 broke L<TryCatch> and there seems to be no intention of correcting this breaking change. Besides, L<Devel::Declare> is now marked as deprecated and its use is officially discouraged.
2587
-
2588
- L<TryCatch> does not support any C<finally> block.
2589
-
2590
- In group 4, there is L<Syntax::Keyword::Try>, which is a great alternative if you do not care about exception class filter (it supports class exception since 2020-07-21 with version 0.15 and variable assignment since 2020-08-01 with version 0.18).
2591
-
2592
- Although, the following script would not work under L<Syntax::Keyword::Try> :
2593
-
2594
- BEGIN
2595
- {
2596
- use strict;
2597
- use warnings;
2598
- use Syntax::Keyword::Try;
2599
- };
2600
-
2601
- {
2602
- &callme();
2603
- }
2604
-
2605
- sub callme
2606
- {
2607
- try {
2608
- print( "Hello there\n" );
2609
- }
2610
- catch ($e) {
2611
- print( "Got an error: $e\n" );
2612
- }
2613
- }
2614
-
2615
- This will trigger the following error:
2616
-
2617
- syntax error at ./test.pl line 18, near ") {"
2618
- syntax error at ./test.pl line 21, near "}"
2619
- Execution of ./test.pl aborted due to compilation errors.
2620
-
2621
- That is because L<Syntax::Keyword::Try> expects to be C<used> outside of a BEGIN block like this:
2622
-
2623
- use strict;
2624
- use warnings;
2625
- use Syntax::Keyword::Try;
2626
-
2627
- # Rest of the script, same as above
2628
-
2629
- Of course, with L<Nice::Try>, there is no such constraint. You can L<perlfunc/use> L<Nice::Try> inside or outside of a C<BEGIN> block indistinctively.
2630
-
2631
- Since L<perl version 5.33.7|https://perldoc.perl.org/blead/perlsyn#Try-Catch-Exception-Handling> and now in L<perl v5.34.0|https://perldoc.perl.org/5.34.0/perldelta#Experimental-Try/Catch-Syntax> you can use the try-catch block using an experimental feature which may be removed in future versions, by writing:
2632
-
2633
- use feature 'try'; # will emit a warning this is experimental
2634
-
2635
- This new feature supports try-catch block and variable assignment, but no exception class, nor support for C<finally> block until version L<perl 5.36 released on 2022-05-28|https://perldoc.perl.org/5.36.0/perldelta> of perl, so you can do:
2636
-
2637
- try
2638
- {
2639
- # Oh no!
2640
- die( "Argh...\n" );
2641
- }
2642
- catch( $oh_well )
2643
- {
2644
- return( $self->error( "Something went awry: $oh_well" ) );
2645
- }
2646
-
2647
- But B<you cannot do>:
2648
-
2649
- try
2650
- {
2651
- # Oh no!
2652
- die( MyException->new( "Argh..." ) );
2653
- }
2654
- catch( MyException $oh_well )
2655
- {
2656
- return( $self->error( "Something went awry with MyException: $oh_well" ) );
2657
- }
2658
- # Support for 'finally' has been implemented in perl 5.36 released on 2022-05-28
2659
- finally
2660
- {
2661
- # do some cleanup here
2662
- }
2663
-
2664
- An update as of 2022-05-28, L<perl-v5.36|https://perldoc.perl.org/5.36.0/perldelta#try/catch-can-now-have-a-finally-block-(experimental)> now supports the experimental C<finally> block.
2665
-
2666
- Also, the C<use feature 'try'> expression must be in the relevant block where you use C<try-catch>. You cannot just put it in your C<BEGIN> block at the beginning of your script. If you have 3 subroutines using C<try-catch>, you need to put C<use feature 'try'> in each of them. See L<perl documentation on lexical effect|https://perldoc.perl.org/feature#Lexical-effect> for more explanation on this.
2667
-
2668
- It is probably a matter of time until this is fully implemented in perl as a regular non-experimental feature.
2669
-
2670
- As of perl C<v5.40.0>. the C<try-catch> block L<is now only partly experimental|https://perldoc.perl.org/5.40.0/perldelta#try/catch-feature-is-no-longer-experimental>, but you still need to load it with C<use feature 'try'>. However, at least no warning of it being experimental will be emitted. Still, L<no exception filtering by class though|https://perldoc.perl.org/5.40.0/perlsyn#Try-Catch-Exception-Handling>
2671
-
2672
- See more information about perl's featured implementation of try-catch in L<perlsyn|https://perldoc.perl.org/perlsyn#Try-Catch-Exception-Handling>
2673
-
2674
- So, L<Nice::Try> is quite unique and fills the missing features, and since it uses XS modules for a one-time filtering, it is quite fast.
2675
-
2676
- =head1 FINALLY
2677
-
2678
- Like with other language such as Java or JavaScript, the C<finally> block will be executed even if the C<try> or C<catch> block contains a return statement.
2679
-
2680
- This is useful to do some clean-up. For example:
2681
-
2682
- try
2683
- {
2684
- # Something worth dying
2685
- }
2686
- catch( $e )
2687
- {
2688
- return( "I failed: $e" );
2689
- }
2690
- finally
2691
- {
2692
- # Do some mop up
2693
- # This would be reached even if catch already returned
2694
- # Putting return statement here does not actually return anything.
2695
- # This is only for clean-up
2696
- }
2697
-
2698
- However, because this is designed for clean-up, it is called in void context, so any C<return> statement there will not actually return anything back to the caller.
2699
-
2700
- =head1 CATCHING OR NOT CATCHING?
2701
-
2702
- L<Nice::Try> can be used with a single C<try> block which will, in effect, behaves like an eval and the special variable C<$@> will be available as always.
2703
-
2704
- try
2705
- {
2706
- die( "Oh no, something went wrong!\n" );
2707
- }
2708
- print( "Got here with $@\n" );
2709
-
2710
- or even:
2711
-
2712
- try
2713
- {
2714
- die( "Oh no, something went wrong!\n" );
2715
- }
2716
- catch( $e ); # Not very meaningful, but it will work
2717
- print( "Got here with $@\n" );
2718
-
2719
- However, if you decide to catch class exceptions, make sure to add a default C<catch( $e )>. For example:
2720
-
2721
- try
2722
- {
2723
- die( MyException->new( "Oh no" ) );
2724
- }
2725
- print( "Got here with $@\n" );
2726
-
2727
- will work and C<print> will display "Got here with Oh no". However:
2728
-
2729
- try
2730
- {
2731
- die( MyException->new( "Oh no" ) );
2732
- }
2733
- catch( Some::Exception $e )
2734
- {
2735
- # won't reach here
2736
- }
2737
-
2738
- will make your process die because of the exception not being caught, thus you might want to do instead:
2739
-
2740
- try
2741
- {
2742
- die( MyException->new( "Oh no" ) );
2743
- }
2744
- catch( Some::Exception $e )
2745
- {
2746
- # won't reach here
2747
- }
2748
- catch( $default )
2749
- {
2750
- print( "Got you! Error was: $default\n" );
2751
- }
2752
-
2753
- And the last catch will catch the exception.
2754
-
2755
- Since, try-catch block can be nested, the following would work too:
2756
-
2757
- try
2758
- {
2759
- try
2760
- {
2761
- die( MyException->new( "Oh no" ) );
2762
- }
2763
- catch( Some::Exception $e )
2764
- {
2765
- # won't reach here
2766
- }
2767
- }
2768
- catch( MyException $e )
2769
- {
2770
- print( "Got you! MyException was: $e\n" );
2771
- }
2772
- # to play it safe
2773
- catch( $e )
2774
- {
2775
- # do something about it
2776
- }
2777
-
2778
- =head1 EXCEPTION CLASS
2779
-
2780
- As mentioned above, you can use class when raising exceptions and you can filter them in a variety of ways when you catch them.
2781
-
2782
- Here are your options (replace C<Exception::Class> with your favorite exception class):
2783
-
2784
- =over 4
2785
-
2786
- =item 1. catch( Exception::Class $error_variable ) { }
2787
-
2788
- =item 2. catch( Exception::Class $error_variable where { $condition } ) { }
2789
-
2790
- Here C<$condition> could be anything that fits in a legitimate perl block, such as:
2791
-
2792
- try
2793
- {
2794
- die( Exception->new( "Oh no!", { code => 401 } ) );
2795
- }
2796
- catch( Exception $oopsie where { $_->code >= 400 && $_->code <= 499 })
2797
- {
2798
- # some more handling here
2799
- }
2800
-
2801
- In the condition block C<$_> will always be made available and will correspond to the exception object thrown, just like C<$oopsie> in this example. C<$@> is also available with the exception object as its value.
2802
-
2803
- =item 3. catch( $e isa Exception::Class ) { }
2804
-
2805
- This is a variant of the C<catch( Exception::Class $e ) {}> form
2806
-
2807
- =item 4. catch( $e isa('Exception::Class') ) { }
2808
-
2809
- A variant of the one above if you want to use single quotes.
2810
-
2811
- =item 5. catch( $e isa("Exception::Class") ) { }
2812
-
2813
- A variant of the one above if you want to use double quotes.
2814
-
2815
- =item 6. catch( $e isa Exception::Class where { $condition } ) { }
2816
-
2817
- =item 7. catch( $e isa('Exception::Class') where { $condition } ) { }
2818
-
2819
- =item 8. catch( $e isa("Exception::Class") where { $condition } ) { }
2820
-
2821
- =item 9. catch( $e where { $condition } ) { }
2822
-
2823
- This is not a class exception catching, but worth mentioning. For example:
2824
-
2825
- try
2826
- {
2827
- die( "Something bad happened.\n" );
2828
- }
2829
- catch( $e where { /something bad/i })
2830
- {
2831
- # Do something about it
2832
- }
2833
- catch( $e )
2834
- {
2835
- # Default here
2836
- }
2837
-
2838
- =back
2839
-
2840
- =head1 LOOPS
2841
-
2842
- Since version v0.2.0 L<Nice::Try> supports the use of flow control keywords such as C<next>, C<last> and C<redo> inside try-catch blocks. For example:
2843
-
2844
- my @names = qw( John Jack Peter Paul Mark );
2845
- for( $i..$#names )
2846
- {
2847
- try
2848
- {
2849
- next if( $i == 2 );
2850
- # some more code...
2851
- }
2852
- catch( $e )
2853
- {
2854
- print( "Got exception: $e\n" );
2855
- }
2856
- }
2857
-
2858
- It also works inside the catch block or inside the C<continue> block:
2859
-
2860
- while( defined( my $product = $items->[++$i] ) )
2861
- {
2862
- # Do something
2863
- }
2864
- continue
2865
- {
2866
- try
2867
- {
2868
- if( $product->region eq 'Asia' )
2869
- {
2870
- push( @asia, $product );
2871
- }
2872
- else
2873
- {
2874
- next;
2875
- }
2876
- }
2877
- catch( $e )
2878
- {
2879
- $log->( "An unexpected error has occurred. Is $product an object? $e" );
2880
- last;
2881
- }
2882
- }
2883
-
2884
- Control flow with labels also work
2885
-
2886
- ELEM: foreach my $n ( @names )
2887
- {
2888
- try
2889
- {
2890
- $n->moveAfter( $this );
2891
- next ELEM if( $n->value == 1234567 );
2892
- }
2893
- catch( $oops )
2894
- {
2895
- last ELEM;
2896
- }
2897
- }
2898
-
2899
- However, if you enclose a try-catch block inside another block, use of C<next>, C<last> or C<redo> will silently not work. This is due to perl control flow. See L<perlsyn> for more information on this. For example, the following would not yield the desired outcome:
2900
-
2901
- ELEM: foreach my $n ( @names )
2902
- {
2903
- { # <--- Here is the culprit
2904
- try
2905
- {
2906
- $n->moveAfter( $this );
2907
- # This next statement will not do anything.
2908
- next ELEM if( $n->value == 1234567 );
2909
- }
2910
- catch( $oops )
2911
- {
2912
- # Neither would this one.
2913
- last ELEM;
2914
- }
2915
- }
2916
- }
2917
-
2918
- =head1 CONTEXT AWARENESS
2919
-
2920
- L<Nice::Try> provides a high level of granularity about the context in which your subroutine was called.
2921
-
2922
- Normally, you would write something like this, and it works as always:
2923
-
2924
- sub info
2925
- {
2926
- try
2927
- {
2928
- # do something here
2929
- if( wantarray() )
2930
- {
2931
- return( @list_of_values );
2932
- }
2933
- # caller just want a scalar
2934
- elsif( defined( wantarray() ) )
2935
- {
2936
- return( $name );
2937
- }
2938
- # otherwise if undefined, it means we are called in void context, like:
2939
- # $o->info; with no expectation of return value
2940
- }
2941
- catch( $e )
2942
- {
2943
- print( "Caught an error: $e\n" );
2944
- }
2945
- }
2946
-
2947
- The above is nice, but how do you differentiate cases were your caller wants a simple returned value and the one where the caller wants an object for chaining purpose, or if the caller wants an hash or array reference in return?
2948
-
2949
- For example:
2950
-
2951
- my $val = $o->info->[2]; # wants an array reference
2952
- my $val = $o->info->{name} # wants an hash reference
2953
- # etc...
2954
-
2955
- Now, you can do the following:
2956
-
2957
- use Want; # an awesome module which extends wantarray
2958
- sub info
2959
- {
2960
- my $self = shift( @_ );
2961
- try
2962
- {
2963
- # Do something
2964
- #
2965
- # same as wantarray() == 1
2966
- if( want('LIST') )
2967
- {
2968
- return( @some_data );
2969
- }
2970
- # same as: if( defined( wantarray() ) && !wantarray() )
2971
- elsif( want('SCALAR' ) )
2972
- {
2973
- return( $name ); # regular string
2974
- }
2975
- # same as if( !defined( wantarray() ) )
2976
- elsif( want('VOID') )
2977
- {
2978
- return;
2979
- }
2980
- # For the other contexts below, wantarray is of no help
2981
- if( want('OBJECT') )
2982
- {
2983
- return( $obj ); # useful for chaining
2984
- }
2985
- elsif( want('CODE') )
2986
- {
2987
- # dummy code ref for example
2988
- return( sub{ return( $name ); } );
2989
- }
2990
- elsif( want('ARRAY') )
2991
- {
2992
- return( \@some_data );
2993
- }
2994
- elsif( want('HASH') )
2995
- {
2996
- return({ name => $name, location => $city });
2997
- }
2998
- }
2999
- catch( $e )
3000
- {
3001
- $Logger->( "Caught exception: $e" );
3002
- }
3003
- }
3004
-
3005
- Thus this is particularly useful if, for example, you want to differentiate if the caller just wants a return string, or an object for chaining.
3006
-
3007
- L<perlfunc/wantarray> would not know the difference, and other try-catch implementation would not let you benefit from using L<Want>.
3008
-
3009
- For example:
3010
-
3011
- my $val = $o->info; # simple regular scalar context; but...
3012
- # here, we are called in object context and wantarray is of no help to tell the difference
3013
- my $val = $o->info->another_method;
3014
-
3015
- Other cases are:
3016
-
3017
- # regular string context
3018
- my $name = $o->info;
3019
- # list context like wantarray
3020
- my @data = $o->info;
3021
-
3022
- # code context
3023
- my $name = $o->info->();
3024
- # hash context
3025
- my $name = $o->info->{name};
3026
- # array context
3027
- my $name = $o->info->[2];
3028
- # object context
3029
- my $name = $o->info->another_method;
3030
-
3031
- See L<Want> for more information on how you can benefit from it.
3032
-
3033
- Currently lvalues are not implemented and will be in future releases. Also note that L<Want> does not work within tie-handlers. It would trigger a segmentation fault. L<Nice::Try> detects this and disable automatically support for L<Want> if used inside a tie-handler, reverting to regular L<perlfunc/wantarray> context.
3034
-
3035
- Also, for this rich context awareness to be used, obviously try-catch would need to be inside a subroutine, otherwise there is no rich context other than the one the regular L<perlfunc/wantarray> provides.
3036
-
3037
- This is particularly true when running within an Apache modperl handler which has no caller. If you use L<Nice::Try> in such handler, it will kill Apache process, so you need to disable the use of L<Want>, by calling:
3038
-
3039
- use Nice::Try dont_want => 1;
3040
-
3041
- When there is an update to correct this bug from L<Want>, I will issue a new version.
3042
-
3043
- The use of L<Want> is also automatically disabled when running under a package that use overloading.
3044
-
3045
- =head1 __DATA__ and __END__ sections
3046
-
3047
- Due to a limitation to the way source filter works with L<Filter::Util::Call>, normally, it is not possible to make the data available after the C<__DATA__> or C<__END__> token accessible with the special glob C<DATA>, but with C<Nice::Try>, it is possible. Thus, the following would work as you would expect:
3048
-
3049
- #!/usr/bin/env perl
3050
- use strict;
3051
- use warnings;
3052
- use Nice::Try;
3053
-
3054
- try
3055
- {
3056
- print "Poem by Pierre de Ronsard (1545)\n";
3057
-
3058
- print while( <DATA> );
3059
- }
3060
- catch($e)
3061
- {
3062
- print( "Oh no: $e\n" );
3063
- }
3064
-
3065
- __END__
3066
- Mignonne, allons voir si la rose
3067
- Qui ce matin avoit desclose
3068
- Sa robe de pourpre au Soleil,
3069
- A point perdu ceste vesprée
3070
- Les plis de sa robe pourprée,
3071
- Et son teint au vostre pareil.
3072
-
3073
- The same would work if the C<__DATA__> were used instead of C<__END__>
3074
-
3075
- And, if you mix POD, it will ignore it to only make available in the C<DATA> glob the non-POD data. For example:
3076
-
3077
- #!/usr/bin/env perl
3078
- use strict;
3079
- use warnings;
3080
- use Nice::Try;
3081
-
3082
- try
3083
- {
3084
- print "Poem by Pierre de Ronsard (1545)\n";
3085
-
3086
- print while( <DATA> );
3087
- }
3088
- catch($e)
3089
- {
3090
- print( "Oh no: $e\n" );
3091
- }
3092
-
3093
- __END__
3094
- Mignonne, allons voir si la rose
3095
- Qui ce matin avoit desclose
3096
- Sa robe de pourpre au Soleil,
3097
- A point perdu ceste vesprée
3098
- Les plis de sa robe pourprée,
3099
- Et son teint au vostre pareil.
3100
-
3101
- =encoding utf-8
3102
-
3103
- =head1 NAME
3104
-
3105
- French::Poetry - Pierre de Ronsard, Ode à Cassandre
3106
-
3107
- =head1 DESCRIPTION
3108
-
3109
- This famous poem was made by Pierre de Ronsard after he met Cassandre Salviati, daughter of an Italian banker, at the court in 1545.
3110
-
3111
- This poem is the epitome of Epicureanism (Carpe diem).
3112
-
3113
- =cut
3114
-
3115
- Las ! voyez comme en peu d'espace,
3116
- Mignonne, elle a dessus la place,
3117
- Las ! las ! ses beautés laissé choir !
3118
- Ô vraiment marâtre Nature,
3119
- Puisqu'une telle fleur ne dure
3120
- Que du matin jusques au soir !
3121
-
3122
- Donc, si vous me croyez, mignonne,
3123
- Tandis que votre âge fleuronne
3124
- En sa plus verte nouveauté,
3125
- Cueillez, cueillez votre jeunesse :
3126
- Comme à cette fleur, la vieillesse
3127
- Fera ternir votre beauté.
3128
-
3129
- This would yield the entire poem of 3 paragraph, while skipping the POD in-between. Of course, the same would work with C<__DATA__>
3130
-
3131
- The C<DATA> is actually an C<IO::File> object generated with C<Symbol::geniosym()>
3132
-
3133
- See also L<perldata/"Special-Literals"> for more information.
3134
-
3135
- =head1 LIMITATIONS
3136
-
3137
- Before version C<v1.3.5>, there was a limitation on using signature on a subroutine, but since version C<v1.3.5>, it has been fixed and there is no more any limitation. Thus the following works nicely too.
3138
-
3139
- use strict;
3140
- use warnings;
3141
- use experimental 'signatures';
3142
- use Nice::Try;
3143
-
3144
- sub test { 1 }
3145
-
3146
- sub foo ($f = test()) { 1 }
3147
-
3148
- try {
3149
- my $k = sub ($f = foo()) {}; # <-- this sub routine attribute inside try-catch block used to disrupt Nice::Try and make it fail.
3150
- print( "worked\n" );
3151
- }
3152
- catch($e) {
3153
- warn "caught: $e";
3154
- }
3155
-
3156
- __END__
3157
-
3158
- =head1 PERFORMANCE
3159
-
3160
- C<Nice::Try> is quite fast, but as with any class implementing a C<try-catch> block, it is of course a bit slower than the natural C<eval> block.
3161
-
3162
- Because C<Nice::Try> relies on L<PPI> for parsing the perl code, if your code is very long, there will be an execution time penalty.
3163
-
3164
- If you use framework such as L<mod_perl2>, then it will only affect the first time the code is run, since afterward, the code will be loaded in memory.
3165
-
3166
- Still, if you use perl version C<v5.34> or higher, and have simple need of C<try-catch>, then simply use instead perl experimental implementation, such as:
3167
-
3168
- use v5.34;
3169
- use strict;
3170
- use warnings;
3171
- use feature 'try';
3172
- no warnings 'experimental';
3173
-
3174
- try
3175
- {
3176
- # do something
3177
- }
3178
- catch( $e )
3179
- {
3180
- # catch fatal error here
3181
- }
3182
-
3183
- =head1 DEBUGGING
3184
-
3185
- And to have L<Nice::Try> save the filtered code to a file, pass it the C<debug_file> parameter like this:
3186
-
3187
- use Nice::Try debug_file => './updated_script.pl';
3188
-
3189
- You can also call your script using L<Filter::ExtractSource> like this:
3190
-
3191
- perl -MFilter::ExtractSource script.pl > updated_script.pl
3192
-
3193
- or add C<use Filter::ExtractSource> inside it.
3194
-
3195
- In the updated script produced, you can add the line calling L<Nice::Try> to:
3196
-
3197
- use Nice::Try no_filter => 1;
3198
-
3199
- to avoid L<Nice::Try> from filtering your script
3200
-
3201
- If you want L<Nice::Try> to produce human readable code, pass it the C<debug_code> parameter like this:
3202
-
3203
- use Nice::Try debug_code => 1;
3204
-
3205
- =head1 CLASS FUNCTIONS
3206
-
3207
- The following class functions can be used.
3208
-
3209
- =head2 implement
3210
-
3211
- my $new_code = Nice::Try->implement( $perl_code );
3212
- eval( $new_code );
3213
-
3214
- Provided with a perl code having one or more try-catch blocks and this will return a perl code converted to support try-catch blocks.
3215
-
3216
- This is designed to be used for perl code you store, such as subroutines dynamically loaded or eval'ed.
3217
-
3218
- For example:
3219
-
3220
- my $code = Nice::Try->implement( <<EOT );
3221
- sub $method
3222
- {
3223
- my \$self = shift( \@_ );
3224
- try
3225
- {
3226
- # doing something that may die here
3227
- }
3228
- catch( \$e )
3229
- {
3230
- return( \$self->error( "Oops: \$e ) );
3231
- }
3232
- }
3233
- EOT
3234
-
3235
- You can also pass an optional hash or hash reference of options to L</implement> and it will be used to instantiate a new L<Nice::Try> method. The options accepted are the same ones that can be passed when using C<use Nice::Try>
3236
-
3237
- =head1 CREDITS
3238
-
3239
- Credits to Stephen R. Scaffidi for his implementation of L<Try::Harder> from which I initially borrowed some code.
3240
-
3241
- =head1 AUTHOR
3242
-
3243
- Jacques Deguest E<lt>F<jack@deguest.jp>E<gt>
3244
-
3245
- =head1 SEE ALSO
3246
-
3247
- L<PPI>, L<Filter::Util::Call>, L<Try::Harder>, L<Syntax::Keyword::Try>, L<Exception::Class>
3248
-
3249
- L<JavaScript implementation of nice-try|https://javascript.info/try-catch>
3250
-
3251
- =head1 COPYRIGHT & LICENSE
3252
-
3253
- Copyright (c) 2020-2024 DEGUEST Pte. Ltd.
3254
-
3255
- You can use, copy, modify and redistribute this package and associated files under the same terms as Perl itself.
3256
-
3257
- =cut