javonet-ruby-sdk 2.4.9 → 2.4.11

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 (1457) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/javonet-ruby-sdk.gemspec +1 -1
  4. data/lib/javonet-ruby-sdk/Binaries/Clr/{Windows/X64/Javonet.Clr.Utils.dll → Javonet.Clr.Utils.dll} +0 -0
  5. data/lib/javonet-ruby-sdk/Binaries/Clr/{Windows/X64/JavonetClrRuntime.dll → JavonetClrRuntime.dll} +0 -0
  6. data/lib/javonet-ruby-sdk/Binaries/Jvm/{Linux/X64/JavonetJvmRuntime.jar → JavonetJvmRuntime.jar} +0 -0
  7. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/NativeUtilsUnitTests.xml +21 -0
  8. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
  9. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetCppRuntimeNative.so +0 -0
  10. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetGoRuntimeNative.so +0 -0
  11. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetJvmRuntimeNative.so +0 -0
  12. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNetcoreRuntimeNative.so +0 -0
  13. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs1816RuntimeNative.so +0 -0
  14. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
  15. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerlRuntimeNative.so +0 -0
  16. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
  17. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRuby278RuntimeNative.so +0 -0
  18. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
  19. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpClient.so +0 -0
  20. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpTlsClient.so +0 -0
  21. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libUtils.so +0 -0
  22. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/openssl3/libJavonetActivationService.so +0 -0
  23. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/openssl3/libJavonetTcpTlsClient.so +0 -0
  24. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/openssl3/libUtils.so +0 -0
  25. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/version.txt +1 -1
  26. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
  27. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetCppRuntimeNative.dylib +0 -0
  28. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetGoRuntimeNative.dylib +0 -0
  29. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetJvmRuntimeNative.dylib +0 -0
  30. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNetcoreRuntimeNative.dylib +0 -0
  31. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejs1816RuntimeNative.dylib +0 -0
  32. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
  33. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
  34. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
  35. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRuby278RuntimeNative.dylib +0 -0
  36. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
  37. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpClient.dylib +0 -0
  38. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpTlsClient.dylib +0 -0
  39. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
  40. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/version.txt +1 -1
  41. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
  42. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
  43. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
  44. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
  45. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
  46. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
  47. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejs1816RuntimeNative.dll +0 -0
  48. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
  49. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
  50. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
  51. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRuby278RuntimeNative.dll +0 -0
  52. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
  53. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpClient.dll +0 -0
  54. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpTlsClient.dll +0 -0
  55. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Utils.dll +0 -0
  56. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libcrypto-3-x64.dll +0 -0
  57. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libssl-3-x64.dll +0 -0
  58. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/version.txt +1 -1
  59. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetActivationService.dll +0 -0
  60. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetClrRuntimeNative.dll +0 -0
  61. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetCppRuntimeNative.dll +0 -0
  62. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetGoRuntimeNative.dll +0 -0
  63. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetJvmRuntimeNative.dll +0 -0
  64. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPythonRuntimeNative.dll +0 -0
  65. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpClient.dll +0 -0
  66. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpTlsClient.dll +0 -0
  67. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/NetVersion31LatestPatch.runtimeconfig.json +10 -0
  68. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/NetVersion60LatestPatch.runtimeconfig.json +10 -0
  69. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/NetVersion70LatestPatch.runtimeconfig.json +10 -0
  70. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/NetVersion80LatestPatch.runtimeconfig.json +10 -0
  71. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/NetVersionLatest.runtimeconfig.json +10 -0
  72. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/Utils.dll +0 -0
  73. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Linux/jni.h +1960 -0
  74. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Linux/jni_md.h +51 -0
  75. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/MacOs/jni.h +1960 -0
  76. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/MacOs/jni_md.h +51 -0
  77. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Windows/jni.h +1960 -0
  78. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/dynamicCompilationHeaders/Windows/jni_md.h +37 -0
  79. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libcrypto-3.dll +0 -0
  80. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libssl-3.dll +0 -0
  81. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxml2.dll +0 -0
  82. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec-openssl.dll +0 -0
  83. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec.dll +0 -0
  84. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxslt.dll +0 -0
  85. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/python311.dll +0 -0
  86. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/version.txt +1 -0
  87. data/lib/javonet-ruby-sdk/Binaries/Netcore/{MacOs/X64/Javonet.Netcore.Core.dll → Javonet.Netcore.Core.dll} +0 -0
  88. data/lib/javonet-ruby-sdk/Binaries/Netcore/{MacOs/X64/Javonet.Netcore.Utils.dll → Javonet.Netcore.Utils.dll} +0 -0
  89. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/List/Util/XS.pm +1 -1
  90. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/List/Util.pm +1 -1
  91. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Scalar/Util.pm +1 -1
  92. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/Sub/Util.pm +1 -1
  93. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/XS/XS.so +0 -0
  94. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/UUID/UUID.so +0 -0
  95. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Platypus.so +0 -0
  96. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/List/Util/Util.so +0 -0
  97. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
  98. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/XS/XS.so +0 -0
  99. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/XS/XS.so +0 -0
  100. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Params/Util/Util.so +0 -0
  101. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
  102. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/share/dist/FFI-Platypus/lib/libplfill.so +0 -0
  103. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +90 -90
  104. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  105. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  106. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Scalar/Util/Numeric/Numeric.xs.dll +0 -0
  107. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  108. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  109. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +18 -18
  110. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/__pycache__/__init__.cpython-311.pyc +0 -0
  111. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/generator/__pycache__/__init__.cpython-311.pyc +0 -0
  112. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/generator/internal/__pycache__/PythonStringBuilder.cpython-311.pyc +0 -0
  113. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/generator/internal/__pycache__/__init__.cpython-311.pyc +0 -0
  114. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/AbstractCommandHandler.cpython-311.pyc +0 -0
  115. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/AbstractHandler.cpython-311.pyc +0 -0
  116. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ArrayGetItemHandler.cpython-311.pyc +0 -0
  117. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ArrayGetRankHandler.cpython-311.pyc +0 -0
  118. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ArrayGetSizeHandler.cpython-311.pyc +0 -0
  119. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ArrayHandler.cpython-311.pyc +0 -0
  120. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ArraySetItemHandler.cpython-311.pyc +0 -0
  121. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/CastingHandler.cpython-311.pyc +0 -0
  122. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/CreateClassInstanceHandler.cpython-311.pyc +0 -0
  123. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/DestructReferenceHandler.cpython-311.pyc +0 -0
  124. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/EnableNamespaceHandler.cpython-311.pyc +0 -0
  125. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/EnableTypeHandler.cpython-311.pyc +0 -0
  126. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetEnumItemHandler.cpython-311.pyc +0 -0
  127. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetEnumNameHandler.cpython-311.pyc +0 -0
  128. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetEnumValueHandler.cpython-311.pyc +0 -0
  129. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetInstanceFieldHandler.cpython-311.pyc +0 -0
  130. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetStaticFieldHandler.cpython-311.pyc +0 -0
  131. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/GetTypeHandler.cpython-311.pyc +0 -0
  132. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/Handler.cpython-311.pyc +0 -0
  133. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/HandlerDictionary.cpython-311.pyc +0 -0
  134. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/InvokeInstanceMethodHandler.cpython-311.pyc +0 -0
  135. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/InvokeStaticMethodHandler.cpython-311.pyc +0 -0
  136. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/LoadLibraryHandler.cpython-311.pyc +0 -0
  137. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ResolveInstanceHandler.cpython-311.pyc +0 -0
  138. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/SetInstanceFieldHandler.cpython-311.pyc +0 -0
  139. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/SetStaticFieldHandler.cpython-311.pyc +0 -0
  140. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/handler/__pycache__/ValueHandler.cpython-311.pyc +0 -0
  141. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/__init__.cpython-311.pyc +0 -0
  142. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/interpreter/__pycache__/Interpreter.cpython-311.pyc +0 -0
  143. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/__pycache__/__init__.cpython-311.pyc +0 -0
  144. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/namespaceCache/__pycache__/NamespaceCache.cpython-311.pyc +0 -0
  145. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/namespaceCache/__pycache__/__init__.cpython-311.pyc +0 -0
  146. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/protocol/__pycache__/CommandDeserializer.cpython-311.pyc +0 -0
  147. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/protocol/__pycache__/CommandSerializer.cpython-311.pyc +0 -0
  148. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/protocol/__pycache__/TypeDeserializer.cpython-311.pyc +0 -0
  149. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/protocol/__pycache__/TypeSerializer.cpython-311.pyc +0 -0
  150. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/__init__.cpython-311.pyc +0 -0
  151. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/receiver/__pycache__/Receiver.cpython-311.pyc +0 -0
  152. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/__pycache__/__init__.cpython-311.pyc +0 -0
  153. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/referenceCache/__pycache__/ReferencesCache.cpython-311.pyc +0 -0
  154. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/referenceCache/__pycache__/__init__.cpython-311.pyc +0 -0
  155. data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/transmitter/Transmitter.py +2 -2
  156. data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/transmitter/TransmitterWrapper.py +4 -4
  157. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/core/typeCache/__pycache__/TypeCache.cpython-311.pyc +0 -0
  158. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/typeCache/__pycache__/__init__.cpython-311.pyc +0 -0
  159. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/__pycache__/Command.cpython-311.pyc +0 -0
  160. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/__pycache__/CommandType.cpython-311.pyc +0 -0
  161. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/__pycache__/ConnectionType.cpython-311.pyc +0 -0
  162. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/ExceptionType.cpython-311.pyc +0 -0
  163. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/__pycache__/RuntimeName.cpython-311.pyc +0 -0
  164. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/StringEncodingMode.cpython-311.pyc +0 -0
  165. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/__pycache__/Type.cpython-311.pyc +0 -0
  166. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  167. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/connectionData/__pycache__/IConnectionData.cpython-311.pyc +0 -0
  168. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/connectionData/__pycache__/InMemoryConnectionData.cpython-311.pyc +0 -0
  169. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/__init__.cpython-311.pyc +0 -0
  170. data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet → javonet}/utils/exception/__pycache__/ExceptionSerializer.cpython-311.pyc +0 -0
  171. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/__init__.cpython-311.pyc +0 -0
  172. data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
  173. metadata +275 -1340
  174. data/lib/javonet-ruby-sdk/Binaries/Jvm/MacOs/X64/JavonetJvmRuntime.jar +0 -0
  175. data/lib/javonet-ruby-sdk/Binaries/Jvm/Windows/X64/JavonetJvmRuntime.jar +0 -0
  176. data/lib/javonet-ruby-sdk/Binaries/Netcore/Linux/X64/Javonet.Netcore.Core.dll +0 -0
  177. data/lib/javonet-ruby-sdk/Binaries/Netcore/Linux/X64/Javonet.Netcore.Utils.dll +0 -0
  178. data/lib/javonet-ruby-sdk/Binaries/Netcore/Windows/X64/Javonet.Netcore.Core.dll +0 -0
  179. data/lib/javonet-ruby-sdk/Binaries/Netcore/Windows/X64/Javonet.Netcore.Utils.dll +0 -0
  180. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/AbstractGeneratorHandler.js +0 -12
  181. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/CreateInstanceGeneratorHandler.js +0 -17
  182. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/GeneratorHandler.js +0 -30
  183. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/GetInstanceFieldGeneratorHandler.js +0 -18
  184. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/GetStaticFieldGeneratorHandler.js +0 -17
  185. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/GetTypeGeneratorHandler.js +0 -26
  186. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/Handlers.js +0 -51
  187. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/InvokeInstanceMethodGeneratorHandler.js +0 -18
  188. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/InvokeStaticMethodGeneratorHandler.js +0 -20
  189. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/SharedArgumentNameHandler.js +0 -11
  190. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/SharedClassInstanceHandler.js +0 -13
  191. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/SharedClassNameHandler.js +0 -46
  192. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/SharedMethodNameHandler.js +0 -45
  193. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/SharedReturnTypeHandler.js +0 -10
  194. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedBodyHandler.js +0 -14
  195. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.js +0 -24
  196. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.js +0 -19
  197. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.js +0 -27
  198. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedGetTypeBodyHandler.js +0 -20
  199. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.js +0 -27
  200. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.js +0 -31
  201. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/internal/CommonGenerator.js +0 -26
  202. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/internal/NodejsStringBuilder.js +0 -18
  203. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/internal/SharedHandlerType.js +0 -10
  204. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/generator/utils/StringUtils.js +0 -7
  205. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/AbstractHandler.js +0 -41
  206. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ArrayGetItemHandler.js +0 -39
  207. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ArrayGetRankHandler.js +0 -30
  208. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ArrayGetSizeHandler.js +0 -30
  209. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ArrayHandler.js +0 -19
  210. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ArraySetItemHandler.js +0 -44
  211. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/CastingHandler.js +0 -10
  212. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/CreateClassInstanceHandler.js +0 -38
  213. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/DestructReferenceHandler.js +0 -20
  214. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/EnableNamespaceHandler.js +0 -37
  215. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/EnableTypeHandler.js +0 -37
  216. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/GetGlobalStaticFieldHandler.js +0 -39
  217. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/GetInstanceFieldHandler.js +0 -35
  218. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/GetStaticFieldHandler.js +0 -36
  219. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/GetTypeHandler.js +0 -47
  220. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/Handler.js +0 -90
  221. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/InvokeGlobalMethodHandler.js +0 -47
  222. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/InvokeInstanceMethodHandler.js +0 -40
  223. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/InvokeStaticMethodHandler.js +0 -40
  224. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/LoadLibraryHandler.js +0 -41
  225. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ResolveReferenceHandler.js +0 -14
  226. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/SetGlobalStaticFieldHandler.js +0 -44
  227. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/SetInstanceFieldHandler.js +0 -35
  228. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/SetStaticFieldHandler.js +0 -33
  229. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/handler/ValueHandler.js +0 -15
  230. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/interpreter/Interpreter.js +0 -46
  231. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js +0 -39
  232. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/protocol/CommandDeserializer.js +0 -170
  233. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/protocol/CommandSerializer.js +0 -70
  234. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/protocol/TypeDeserializer.js +0 -81
  235. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/protocol/TypeSerializer.js +0 -137
  236. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/receiver/Receiver.js +0 -16
  237. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/receiver/ReceiverNative.js +0 -13
  238. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/referenceCache/ReferencesCache.js +0 -30
  239. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/transmitter/Transmitter.js +0 -30
  240. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/transmitter/TransmitterWrapper.js +0 -29
  241. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/typeCache/TypeCache.js +0 -39
  242. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/Command.js +0 -66
  243. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/CommandType.js +0 -39
  244. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/ConnectionType.js +0 -4
  245. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/ExceptionType.js +0 -10
  246. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/RuntimeName.js +0 -11
  247. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/RuntimeNameHandler.js +0 -30
  248. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/StringEncodingMode.js +0 -6
  249. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/TcpConnectionData.js +0 -49
  250. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/Type.js +0 -14
  251. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/exception/ExceptionSerializer.js +0 -71
  252. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/exception/ExceptionThrower.js +0 -89
  253. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/uuid/REGEX.js +0 -1
  254. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/uuid/rng.js +0 -12
  255. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/uuid/stringify.js +0 -51
  256. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/uuid/v4.js +0 -27
  257. data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/uuid/validate.js +0 -6
  258. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/AbstractGeneratorHandler.js +0 -12
  259. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/CreateInstanceGeneratorHandler.js +0 -17
  260. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/GeneratorHandler.js +0 -30
  261. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/GetInstanceFieldGeneratorHandler.js +0 -18
  262. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/GetStaticFieldGeneratorHandler.js +0 -17
  263. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/GetTypeGeneratorHandler.js +0 -26
  264. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/Handlers.js +0 -51
  265. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/InvokeInstanceMethodGeneratorHandler.js +0 -18
  266. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/InvokeStaticMethodGeneratorHandler.js +0 -20
  267. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/SharedArgumentNameHandler.js +0 -11
  268. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/SharedClassInstanceHandler.js +0 -13
  269. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/SharedClassNameHandler.js +0 -46
  270. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/SharedMethodNameHandler.js +0 -45
  271. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/SharedReturnTypeHandler.js +0 -10
  272. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedBodyHandler.js +0 -14
  273. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.js +0 -24
  274. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.js +0 -19
  275. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.js +0 -27
  276. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedGetTypeBodyHandler.js +0 -20
  277. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.js +0 -27
  278. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.js +0 -31
  279. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/internal/CommonGenerator.js +0 -26
  280. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/internal/NodejsStringBuilder.js +0 -18
  281. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/internal/SharedHandlerType.js +0 -10
  282. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/generator/utils/StringUtils.js +0 -7
  283. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/AbstractHandler.js +0 -41
  284. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ArrayGetItemHandler.js +0 -39
  285. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ArrayGetRankHandler.js +0 -30
  286. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ArrayGetSizeHandler.js +0 -30
  287. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ArrayHandler.js +0 -19
  288. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ArraySetItemHandler.js +0 -44
  289. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/CastingHandler.js +0 -10
  290. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/CreateClassInstanceHandler.js +0 -38
  291. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/DestructReferenceHandler.js +0 -20
  292. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/EnableNamespaceHandler.js +0 -37
  293. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/EnableTypeHandler.js +0 -37
  294. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/GetGlobalStaticFieldHandler.js +0 -39
  295. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/GetInstanceFieldHandler.js +0 -35
  296. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/GetStaticFieldHandler.js +0 -36
  297. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/GetTypeHandler.js +0 -47
  298. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/Handler.js +0 -90
  299. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/InvokeGlobalMethodHandler.js +0 -47
  300. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/InvokeInstanceMethodHandler.js +0 -40
  301. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/InvokeStaticMethodHandler.js +0 -40
  302. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/LoadLibraryHandler.js +0 -41
  303. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ResolveReferenceHandler.js +0 -14
  304. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/SetGlobalStaticFieldHandler.js +0 -44
  305. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/SetInstanceFieldHandler.js +0 -35
  306. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/SetStaticFieldHandler.js +0 -33
  307. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/handler/ValueHandler.js +0 -15
  308. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/interpreter/Interpreter.js +0 -46
  309. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/namespaceCache/NamespaceCache.js +0 -39
  310. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/protocol/CommandDeserializer.js +0 -170
  311. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/protocol/CommandSerializer.js +0 -70
  312. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/protocol/TypeDeserializer.js +0 -81
  313. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/protocol/TypeSerializer.js +0 -137
  314. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/receiver/Receiver.js +0 -16
  315. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/receiver/ReceiverNative.js +0 -13
  316. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/referenceCache/ReferencesCache.js +0 -30
  317. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/transmitter/Transmitter.js +0 -30
  318. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/transmitter/TransmitterWrapper.js +0 -29
  319. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/typeCache/TypeCache.js +0 -39
  320. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/Command.js +0 -66
  321. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/CommandType.js +0 -39
  322. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/ConnectionType.js +0 -4
  323. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/ExceptionType.js +0 -10
  324. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/RuntimeName.js +0 -11
  325. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/RuntimeNameHandler.js +0 -30
  326. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/StringEncodingMode.js +0 -6
  327. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/TcpConnectionData.js +0 -49
  328. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/Type.js +0 -14
  329. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/exception/ExceptionSerializer.js +0 -71
  330. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/exception/ExceptionThrower.js +0 -89
  331. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/uuid/REGEX.js +0 -1
  332. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/uuid/rng.js +0 -12
  333. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/uuid/stringify.js +0 -51
  334. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/uuid/v4.js +0 -27
  335. data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/uuid/validate.js +0 -6
  336. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/Abstract.pm +0 -74
  337. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/Alias.pm +0 -75
  338. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/Memoize.pm +0 -77
  339. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/Method.pm +0 -151
  340. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/SigHandler.pm +0 -61
  341. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Attribute/Util.pm +0 -101
  342. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Capture/Tiny.pm +0 -901
  343. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Class/Load/PP.pm +0 -59
  344. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Class/Load.pm +0 -420
  345. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Data/Cmp/Numeric.pm +0 -188
  346. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Data/Cmp/StrOrNumeric.pm +0 -200
  347. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Data/Cmp.pm +0 -278
  348. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Data/OptList.pm +0 -416
  349. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Devel/GlobalDestruction.pm +0 -110
  350. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Devel/OverloadInfo.pm +0 -309
  351. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Devel/StackTrace/Frame.pm +0 -272
  352. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Devel/StackTrace.pm +0 -624
  353. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Dist/CheckConflicts.pm +0 -361
  354. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Eval/Closure.pm +0 -379
  355. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Config/MakeMaker.pm +0 -141
  356. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Config.pm +0 -152
  357. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Helpers/Unix.pm +0 -97
  358. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Helpers/VMS.pm +0 -118
  359. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Helpers/Windows.pm +0 -125
  360. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Helpers.pm +0 -122
  361. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/InstallPaths.pm +0 -627
  362. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/FFI/CheckLib.pm +0 -856
  363. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/File/Which.pm +0 -398
  364. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/IPC/System/Simple.pm +0 -1115
  365. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/MRO/Compat.pm +0 -407
  366. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/API.pod +0 -2127
  367. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Authoring.pod +0 -326
  368. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Base.pm +0 -5714
  369. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Bundling.pod +0 -147
  370. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Compat.pm +0 -653
  371. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Config.pm +0 -59
  372. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/ConfigData.pm +0 -206
  373. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Cookbook.pm +0 -529
  374. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Dumper.pm +0 -19
  375. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Notes.pm +0 -327
  376. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/PPMMaker.pm +0 -186
  377. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/Default.pm +0 -32
  378. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/MacOS.pm +0 -151
  379. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/Unix.pm +0 -72
  380. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/VMS.pm +0 -522
  381. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/VOS.pm +0 -33
  382. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/Windows.pm +0 -234
  383. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/aix.pm +0 -39
  384. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/cygwin.pm +0 -54
  385. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/darwin.pm +0 -39
  386. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Platform/os2.pm +0 -48
  387. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/PodParser.pm +0 -70
  388. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Tiny.pm +0 -366
  389. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build.pm +0 -1097
  390. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Implementation.pm +0 -290
  391. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Runtime/Conflicts.pm +0 -105
  392. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Runtime.pm +0 -515
  393. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Nice/Try.pm +0 -3047
  394. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Cache.pm +0 -301
  395. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Document/File.pm +0 -136
  396. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Document/Fragment.pm +0 -90
  397. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Document/Normalized.pm +0 -315
  398. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Document.pm +0 -929
  399. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Dumper.pm +0 -309
  400. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Element.pm +0 -884
  401. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Exception/ParserRejection.pm +0 -10
  402. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Exception.pm +0 -108
  403. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Find.pm +0 -391
  404. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Lexer.pm +0 -1549
  405. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Node.pm +0 -831
  406. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Normal/Standard.pm +0 -139
  407. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Normal.pm +0 -257
  408. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Singletons.pm +0 -92
  409. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Break.pm +0 -75
  410. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Compound.pm +0 -201
  411. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Data.pm +0 -81
  412. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/End.pm +0 -79
  413. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Expression.pm +0 -67
  414. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Given.pm +0 -90
  415. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Include/Perl6.pm +0 -87
  416. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Include.pm +0 -265
  417. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Null.pm +0 -75
  418. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Package.pm +0 -145
  419. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Scheduled.pm +0 -124
  420. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Sub.pm +0 -222
  421. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Unknown.pm +0 -68
  422. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/UnmatchedBrace.pm +0 -80
  423. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/Variable.pm +0 -195
  424. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement/When.pm +0 -100
  425. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Statement.pm +0 -344
  426. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Block.pm +0 -82
  427. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Condition.pm +0 -67
  428. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Constructor.pm +0 -62
  429. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/For.pm +0 -77
  430. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Given.pm +0 -63
  431. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/List.pm +0 -87
  432. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Subscript.pm +0 -68
  433. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/Unknown.pm +0 -69
  434. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure/When.pm +0 -63
  435. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Structure.pm +0 -347
  436. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/ArrayIndex.pm +0 -77
  437. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Attribute.pm +0 -176
  438. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/BOM.pm +0 -113
  439. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Cast.pm +0 -87
  440. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Comment.pm +0 -146
  441. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/DashedWord.pm +0 -96
  442. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Data.pm +0 -116
  443. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/End.pm +0 -111
  444. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/HereDoc.pm +0 -338
  445. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Label.pm +0 -58
  446. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Magic.pm +0 -200
  447. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Binary.pm +0 -117
  448. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Exp.pm +0 -146
  449. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Float.pm +0 -140
  450. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Hex.pm +0 -108
  451. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Octal.pm +0 -115
  452. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number/Version.pm +0 -164
  453. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Number.pm +0 -166
  454. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Operator.pm +0 -124
  455. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Pod.pm +0 -159
  456. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Prototype.pm +0 -100
  457. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Quote/Double.pm +0 -138
  458. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Quote/Interpolate.pm +0 -76
  459. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Quote/Literal.pm +0 -81
  460. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Quote/Single.pm +0 -93
  461. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Quote.pm +0 -120
  462. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike/Backtick.pm +0 -62
  463. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike/Command.pm +0 -62
  464. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike/Readline.pm +0 -71
  465. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike/Regexp.pm +0 -126
  466. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike/Words.pm +0 -88
  467. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/QuoteLike.pm +0 -77
  468. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Regexp/Match.pm +0 -76
  469. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Regexp/Substitute.pm +0 -66
  470. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Regexp/Transliterate.pm +0 -70
  471. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Regexp.pm +0 -136
  472. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Separator.pm +0 -64
  473. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Structure.pm +0 -209
  474. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Symbol.pm +0 -241
  475. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Unknown.pm +0 -479
  476. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Whitespace.pm +0 -454
  477. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/Word.pm +0 -375
  478. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Full.pm +0 -450
  479. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/_QuoteEngine/Simple.pm +0 -67
  480. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token/_QuoteEngine.pm +0 -240
  481. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Token.pm +0 -245
  482. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Tokenizer.pm +0 -1098
  483. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Transform/UpdateCopyright.pm +0 -179
  484. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Transform.pm +0 -240
  485. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/Util.pm +0 -72
  486. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI/XSAccessor.pm +0 -165
  487. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/PPI.pm +0 -822
  488. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Package/DeprecationManager.pm +0 -368
  489. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Package/Stash/Conflicts.pm +0 -35
  490. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Package/Stash/PP.pm +0 -503
  491. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Package/Stash.pm +0 -308
  492. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Path/Tiny.pm +0 -3887
  493. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Scope/Guard.pm +0 -183
  494. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Exporter/Cookbook.pod +0 -602
  495. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Exporter/Progressive.pm +0 -174
  496. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Exporter/Tutorial.pod +0 -539
  497. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Exporter/Util.pm +0 -488
  498. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Exporter.pm +0 -1769
  499. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Sub/Install.pm +0 -486
  500. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Task/Weaken.pm +0 -95
  501. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Test/Fatal.pm +0 -477
  502. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Try/Tiny.pm +0 -820
  503. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/aliased.pm +0 -371
  504. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/Load/XS.pm +0 -89
  505. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Attribute.pm +0 -1100
  506. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Class/Immutable/Trait.pm +0 -172
  507. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Class.pm +0 -2312
  508. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Deprecated.pm +0 -95
  509. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Instance.pm +0 -533
  510. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Accessor.pm +0 -404
  511. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Constructor.pm +0 -251
  512. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Generated.pm +0 -142
  513. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Inlined.pm +0 -191
  514. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Meta.pm +0 -169
  515. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method/Wrapped.pm +0 -333
  516. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Method.pm +0 -356
  517. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/MiniTrait.pm +0 -113
  518. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Mixin/AttributeCore.pm +0 -125
  519. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Mixin/HasAttributes.pm +0 -171
  520. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Mixin/HasMethods.pm +0 -304
  521. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Mixin/HasOverloads.pm +0 -243
  522. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Mixin.pm +0 -107
  523. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Module.pm +0 -209
  524. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Object.pm +0 -196
  525. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Overload.pm +0 -340
  526. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP/Package.pm +0 -460
  527. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Class/MOP.pm +0 -1222
  528. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Clone.pm +0 -99
  529. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Data/UUID.pm +0 -158
  530. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/File/Base.pm +0 -368
  531. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/File/C.pm +0 -254
  532. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/File/CXX.pm +0 -110
  533. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/File/Library.pm +0 -111
  534. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/File/Object.pm +0 -108
  535. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/MM.pm +0 -450
  536. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/Platform.pm +0 -661
  537. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/Plugin.pm +0 -148
  538. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build/PluginData.pm +0 -115
  539. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Build.pm +0 -634
  540. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/API.pm +0 -293
  541. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Buffer.pm +0 -366
  542. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Bundle.pm +0 -795
  543. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Closure.pm +0 -199
  544. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Constant.pm +0 -246
  545. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/DL.pm +0 -231
  546. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Function.pm +0 -229
  547. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Internal.pm +0 -96
  548. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Lang/ASM.pm +0 -126
  549. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Lang/C.pm +0 -123
  550. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Lang/Win32.pm +0 -457
  551. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Lang.pm +0 -141
  552. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Legacy.pm +0 -140
  553. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Memory.pm +0 -268
  554. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Record/Meta.pm +0 -148
  555. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Record/TieArray.pm +0 -174
  556. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Record.pm +0 -575
  557. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/ShareConfig.pm +0 -122
  558. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Type/PointerSizeBuffer.pm +0 -162
  559. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Type/StringArray.pm +0 -272
  560. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Type/StringPointer.pm +0 -190
  561. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Type/WideString.pm +0 -529
  562. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/Type.pm +0 -1399
  563. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/TypeParser/Version0.pm +0 -285
  564. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/TypeParser/Version1.pm +0 -390
  565. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/TypeParser/Version2.pm +0 -115
  566. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus/TypeParser.pm +0 -183
  567. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Platypus.pm +0 -3302
  568. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Probe/Runner/Builder.pm +0 -538
  569. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Probe/Runner/Result.pm +0 -134
  570. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Probe/Runner.pm +0 -204
  571. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Probe.pm +0 -715
  572. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/FFI/Temp.pm +0 -147
  573. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Conflicts.pm +0 -132
  574. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/BankAccount_MethodModifiersAndSubclassing.pod +0 -384
  575. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/BinaryTree_AttributeFeatures.pod +0 -397
  576. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/BinaryTree_BuilderAndLazyBuild.pod +0 -176
  577. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Company_Subtypes.pod +0 -615
  578. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/DateTime_ExtendingNonMooseParent.pod +0 -127
  579. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Document_AugmentAndInner.pod +0 -197
  580. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Genome_OverloadingSubtypesAndCoercion.pod +0 -318
  581. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/HTTP_SubtypesAndCoercion.pod +0 -345
  582. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Immutable.pod +0 -99
  583. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Person_BUILDARGSAndBUILD.pod +0 -180
  584. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Basics/Point_AttributesAndSubclassing.pod +0 -489
  585. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Extending/Debugging_BaseClassRole.pod +0 -153
  586. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Extending/ExtensionOverview.pod +0 -404
  587. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Extending/Mooseish_MooseSugar.pod +0 -160
  588. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Legacy/Debugging_BaseClassReplacement.pod +0 -172
  589. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Legacy/Labeled_AttributeMetaclass.pod +0 -337
  590. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Legacy/Table_ClassMetaclass.pod +0 -132
  591. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Meta/GlobRef_InstanceMetaclass.pod +0 -304
  592. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Meta/Labeled_AttributeTrait.pod +0 -325
  593. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Meta/PrivateOrPublic_MethodMetaclass.pod +0 -224
  594. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Meta/Table_MetaclassTrait.pod +0 -157
  595. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Meta/WhyMeta.pod +0 -117
  596. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Roles/ApplicationToInstance.pod +0 -191
  597. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Roles/Comparable_CodeReuse.pod +0 -379
  598. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Roles/Restartable_AdvancedComposition.pod +0 -230
  599. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Snack/Keywords.pod +0 -240
  600. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Snack/Types.pod +0 -130
  601. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook/Style.pod +0 -77
  602. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Cookbook.pod +0 -289
  603. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Deprecated.pm +0 -98
  604. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AccessorMustReadWrite.pm +0 -14
  605. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AddParameterizableTypeTakesParameterizableType.pm +0 -19
  606. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AddRoleTakesAMooseMetaRoleInstance.pm +0 -19
  607. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AddRoleToARoleTakesAMooseMetaRole.pm +0 -19
  608. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ApplyTakesABlessedInstance.pm +0 -19
  609. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttachToClassNeedsAClassMOPClassInstanceOrASubclass.pm +0 -19
  610. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeConflictInRoles.pm +0 -32
  611. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeConflictInSummation.pm +0 -28
  612. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeExtensionIsNotSupportedInRoles.pm +0 -19
  613. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeIsRequired.pm +0 -45
  614. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeMustBeAnClassMOPMixinAttributeCoreOrSubclass.pm +0 -19
  615. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeNamesDoNotMatch.pm +0 -25
  616. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeValueIsNotAnObject.pm +0 -28
  617. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AttributeValueIsNotDefined.pm +0 -22
  618. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/AutoDeRefNeedsArrayRefOrHashRef.pm +0 -14
  619. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BadOptionFormat.pm +0 -25
  620. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BothBuilderAndDefaultAreNotAllowed.pm +0 -19
  621. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BuilderDoesNotExist.pm +0 -14
  622. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BuilderMethodNotSupportedForAttribute.pm +0 -14
  623. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BuilderMethodNotSupportedForInlineAttribute.pm +0 -26
  624. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/BuilderMustBeAMethodName.pm +0 -19
  625. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CallingMethodOnAnImmutableInstance.pm +0 -19
  626. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CallingReadOnlyMethodOnAnImmutableInstance.pm +0 -19
  627. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CanExtendOnlyClasses.pm +0 -15
  628. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CanOnlyConsumeRole.pm +0 -18
  629. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CanOnlyWrapBlessedCode.pm +0 -25
  630. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CanReblessOnlyIntoASubclass.pm +0 -15
  631. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CanReblessOnlyIntoASuperclass.pm +0 -14
  632. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAddAdditionalTypeCoercionsToUnion.pm +0 -18
  633. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAddAsAnAttributeToARole.pm +0 -20
  634. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotApplyBaseClassRolesToRole.pm +0 -13
  635. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAssignValueToReadOnlyAccessor.pm +0 -20
  636. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAugmentIfLocalMethodPresent.pm +0 -13
  637. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAugmentNoSuperMethod.pm +0 -26
  638. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAutoDerefWithoutIsa.pm +0 -14
  639. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotAutoDereferenceTypeConstraint.pm +0 -14
  640. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCalculateNativeType.pm +0 -14
  641. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCallAnAbstractBaseMethod.pm +0 -19
  642. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCallAnAbstractMethod.pm +0 -12
  643. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCoerceAWeakRef.pm +0 -14
  644. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCoerceAttributeWhichHasNoCoercion.pm +0 -17
  645. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCreateHigherOrderTypeWithoutATypeParameter.pm +0 -13
  646. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCreateMethodAliasLocalMethodIsPresent.pm +0 -25
  647. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotCreateMethodAliasLocalMethodIsPresentInClass.pm +0 -19
  648. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotDelegateLocalMethodIsPresent.pm +0 -14
  649. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotDelegateWithoutIsa.pm +0 -13
  650. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotFindDelegateMetaclass.pm +0 -14
  651. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotFindType.pm +0 -19
  652. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotFindTypeGivenToMatchOnType.pm +0 -33
  653. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotFixMetaclassCompatibility.pm +0 -26
  654. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotGenerateInlineConstraint.pm +0 -30
  655. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotInitializeMooseMetaRoleComposite.pm +0 -30
  656. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotInlineTypeConstraintCheck.pm +0 -14
  657. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotLocatePackageInINC.pm +0 -41
  658. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotMakeMetaclassCompatible.pm +0 -23
  659. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotOverrideALocalMethod.pm +0 -20
  660. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotOverrideBodyOfMetaMethods.pm +0 -19
  661. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotOverrideLocalMethodIsPresent.pm +0 -13
  662. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotOverrideNoSuperMethod.pm +0 -26
  663. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotRegisterUnnamedTypeConstraint.pm +0 -12
  664. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CannotUseLazyBuildAndDefaultSimultaneously.pm +0 -14
  665. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CircularReferenceInAlso.pm +0 -31
  666. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ClassDoesNotHaveInitMeta.pm +0 -22
  667. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ClassDoesTheExcludedRole.pm +0 -22
  668. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ClassNamesDoNotMatch.pm +0 -25
  669. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CloneObjectExpectsAnInstanceOfMetaclass.pm +0 -20
  670. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CodeBlockMustBeACodeRef.pm +0 -13
  671. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CoercingWithoutCoercions.pm +0 -12
  672. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CoercionAlreadyExists.pm +0 -20
  673. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CoercionNeedsTypeConstraint.pm +0 -14
  674. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ConflictDetectedInCheckRoleExclusions.pm +0 -22
  675. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ConflictDetectedInCheckRoleExclusionsInToClass.pm +0 -16
  676. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ConstructClassInstanceTakesPackageName.pm +0 -12
  677. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotCreateMethod.pm +0 -32
  678. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotCreateWriter.pm +0 -24
  679. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotEvalConstructor.pm +0 -34
  680. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotEvalDestructor.pm +0 -34
  681. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotFindTypeConstraintToCoerceFrom.pm +0 -20
  682. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotGenerateInlineAttributeMethod.pm +0 -26
  683. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotLocateTypeConstraintForUnion.pm +0 -14
  684. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CouldNotParseType.pm +0 -30
  685. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateMOPClassTakesArrayRefOfAttributes.pm +0 -13
  686. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateMOPClassTakesArrayRefOfSuperclasses.pm +0 -13
  687. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateMOPClassTakesHashRefOfMethods.pm +0 -13
  688. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateTakesArrayRefOfRoles.pm +0 -13
  689. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateTakesHashRefOfAttributes.pm +0 -13
  690. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/CreateTakesHashRefOfMethods.pm +0 -13
  691. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/DefaultToMatchOnTypeMustBeCodeRef.pm +0 -33
  692. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/DelegationToAClassWhichIsNotLoaded.pm +0 -20
  693. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/DelegationToARoleWhichIsNotLoaded.pm +0 -20
  694. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/DelegationToATypeWhichIsNotAClass.pm +0 -14
  695. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/DoesRequiresRoleName.pm +0 -13
  696. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/EnumCalledWithAnArrayRefAndAdditionalArgs.pm +0 -24
  697. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/EnumValuesMustBeString.pm +0 -26
  698. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ExtendsMissingArgs.pm +0 -13
  699. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/HandlesMustBeAHashRef.pm +0 -20
  700. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/IllegalInheritedOptions.pm +0 -23
  701. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/IllegalMethodTypeToAddMethodModifier.pm +0 -31
  702. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/IncompatibleMetaclassOfSuperclass.pm +0 -27
  703. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InitMetaRequiresClass.pm +0 -13
  704. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InitializeTakesUnBlessedPackageName.pm +0 -18
  705. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InstanceBlessedIntoWrongClass.pm +0 -14
  706. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InstanceMustBeABlessedReference.pm +0 -20
  707. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidArgPassedToMooseUtilMetaRole.pm +0 -41
  708. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidArgumentToMethod.pm +0 -45
  709. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidArgumentsToTraitAliases.pm +0 -32
  710. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidBaseTypeGivenToCreateParameterizedTypeConstraint.pm +0 -14
  711. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidHandleValue.pm +0 -20
  712. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidHasProvidedInARole.pm +0 -19
  713. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidNameForType.pm +0 -17
  714. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidOverloadOperator.pm +0 -21
  715. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidRoleApplication.pm +0 -19
  716. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidTypeConstraint.pm +0 -24
  717. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidTypeGivenToCreateParameterizedTypeConstraint.pm +0 -14
  718. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/InvalidValueForIs.pm +0 -14
  719. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/IsaDoesNotDoTheRole.pm +0 -14
  720. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/IsaLacksDoesMethod.pm +0 -14
  721. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/LazyAttributeNeedsADefault.pm +0 -14
  722. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Legacy.pm +0 -8
  723. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MOPAttributeNewNeedsAttributeName.pm +0 -19
  724. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MatchActionMustBeACodeRef.pm +0 -28
  725. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MessageParameterMustBeCodeRef.pm +0 -19
  726. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassIsAClassNotASubclassOfGivenMetaclass.pm +0 -24
  727. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassIsARoleNotASubclassOfGivenMetaclass.pm +0 -26
  728. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassIsNotASubclassOfGivenMetaclass.pm +0 -23
  729. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassMustBeASubclassOfMooseMetaClass.pm +0 -14
  730. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassMustBeASubclassOfMooseMetaRole.pm +0 -14
  731. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassMustBeDerivedFromClassMOPClass.pm +0 -19
  732. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassNotLoaded.pm +0 -14
  733. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MetaclassTypeIncompatible.pm +0 -39
  734. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodExpectedAMetaclassObject.pm +0 -24
  735. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodExpectsFewerArgs.pm +0 -27
  736. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodExpectsMoreArgs.pm +0 -25
  737. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodModifierNeedsMethodName.pm +0 -13
  738. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodNameConflictInRoles.pm +0 -47
  739. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodNameNotFoundInInheritanceHierarchy.pm +0 -20
  740. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MethodNameNotGiven.pm +0 -13
  741. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustDefineAMethodName.pm +0 -13
  742. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustDefineAnAttributeName.pm +0 -13
  743. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustDefineAnOverloadOperator.pm +0 -13
  744. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustHaveAtLeastOneValueToEnumerate.pm +0 -19
  745. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustPassAHashOfOptions.pm +0 -19
  746. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustPassAMooseMetaRoleInstanceOrSubclass.pm +0 -24
  747. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustPassAPackageNameOrAnExistingClassMOPPackageInstance.pm +0 -19
  748. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustPassEvenNumberOfArguments.pm +0 -25
  749. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustPassEvenNumberOfAttributeOptions.pm +0 -24
  750. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustProvideANameForTheAttribute.pm +0 -19
  751. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSpecifyAtleastOneMethod.pm +0 -13
  752. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSpecifyAtleastOneRole.pm +0 -13
  753. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSpecifyAtleastOneRoleToApplicant.pm +0 -19
  754. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyAClassMOPAttributeInstance.pm +0 -19
  755. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyADelegateToMethod.pm +0 -19
  756. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyAMetaclass.pm +0 -20
  757. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyAMooseMetaAttributeInstance.pm +0 -19
  758. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyAnAccessorTypeToConstructWith.pm +0 -19
  759. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyAnAttributeToConstructWith.pm +0 -19
  760. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyArrayRefAsCurriedArguments.pm +0 -13
  761. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/MustSupplyPackageNameAndName.pm +0 -20
  762. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NeedsTypeConstraintUnionForTypeCoercionUnion.pm +0 -25
  763. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NeitherAttributeNorAttributeNameIsGiven.pm +0 -12
  764. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NeitherClassNorClassNameIsGiven.pm +0 -12
  765. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NeitherRoleNorRoleNameIsGiven.pm +0 -12
  766. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NeitherTypeNorTypeNameIsGiven.pm +0 -12
  767. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoAttributeFoundInSuperClass.pm +0 -14
  768. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoBodyToInitializeInAnAbstractBaseClass.pm +0 -19
  769. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoCasesMatched.pm +0 -27
  770. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoConstraintCheckForTypeConstraint.pm +0 -14
  771. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoDestructorClassSpecified.pm +0 -13
  772. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoImmutableTraitSpecifiedForClass.pm +0 -17
  773. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/NoParentGivenToSubtype.pm +0 -18
  774. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OnlyInstancesCanBeCloned.pm +0 -20
  775. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OperatorIsRequired.pm +0 -19
  776. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadConflictInSummation.pm +0 -62
  777. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresAMetaClass.pm +0 -13
  778. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresAMetaMethod.pm +0 -13
  779. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresAMetaOverload.pm +0 -13
  780. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresAMethodNameOrCoderef.pm +0 -13
  781. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresAnOperator.pm +0 -13
  782. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverloadRequiresNamesForCoderef.pm +0 -13
  783. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverrideConflictInComposition.pm +0 -43
  784. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/OverrideConflictInSummation.pm +0 -66
  785. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/PackageDoesNotUseMooseExporter.pm +0 -28
  786. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/PackageNameAndNameParamsNotGivenToWrap.pm +0 -25
  787. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/PackagesAndModulesAreNotCachable.pm +0 -26
  788. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ParameterIsNotSubtypeOfParent.pm +0 -26
  789. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ReferencesAreNotAllowedAsDefault.pm +0 -27
  790. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RequiredAttributeLacksInitialization.pm +0 -19
  791. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RequiredAttributeNeedsADefault.pm +0 -14
  792. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RequiredMethodsImportedByClass.pm +0 -46
  793. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RequiredMethodsNotImplementedByClass.pm +0 -31
  794. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/Attribute.pm +0 -12
  795. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/AttributeName.pm +0 -12
  796. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/Class.pm +0 -14
  797. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/EitherAttributeOrAttributeName.pm +0 -49
  798. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/Instance.pm +0 -12
  799. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/InstanceClass.pm +0 -12
  800. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/InvalidAttributeOptions.pm +0 -13
  801. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/Method.pm +0 -12
  802. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/ParamsHash.pm +0 -12
  803. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/Role.pm +0 -16
  804. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/RoleForCreate.pm +0 -13
  805. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/RoleForCreateMOPClass.pm +0 -13
  806. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/Role/TypeConstraint.pm +0 -14
  807. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RoleDoesTheExcludedRole.pm +0 -28
  808. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RoleExclusionConflict.pm +0 -27
  809. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RoleNameRequired.pm +0 -13
  810. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RoleNameRequiredForMooseMetaRole.pm +0 -13
  811. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesDoNotSupportAugment.pm +0 -12
  812. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesDoNotSupportExtends.pm +0 -12
  813. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesDoNotSupportInner.pm +0 -12
  814. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesDoNotSupportRegexReferencesForMethodModifiers.pm +0 -20
  815. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesInCreateTakesAnArrayRef.pm +0 -14
  816. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/RolesListMustBeInstancesOfMooseMetaRole.pm +0 -26
  817. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/SingleParamsToNewMustBeHashRef.pm +0 -12
  818. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/TriggerMustBeACodeRef.pm +0 -14
  819. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/TypeConstraintCannotBeUsedForAParameterizableType.pm +0 -25
  820. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/TypeConstraintIsAlreadyCreated.pm +0 -26
  821. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/TypeParameterMustBeMooseMetaType.pm +0 -13
  822. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UnableToCanonicalizeHandles.pm +0 -20
  823. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UnableToCanonicalizeNonRolePackage.pm +0 -20
  824. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UnableToRecognizeDelegateMetaclass.pm +0 -22
  825. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UndefinedHashKeysPassedToMethod.pm +0 -25
  826. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UnionCalledWithAnArrayRefAndAdditionalArgs.pm +0 -24
  827. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/UnionTakesAtleastTwoTypeNames.pm +0 -12
  828. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ValidationFailedForInlineTypeConstraint.pm +0 -49
  829. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/ValidationFailedForTypeConstraint.pm +0 -33
  830. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/WrapTakesACodeRefToBless.pm +0 -26
  831. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception/WrongTypeConstraintGiven.pm +0 -21
  832. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exception.pm +0 -211
  833. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Exporter.pm +0 -1048
  834. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Intro.pod +0 -77
  835. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Attributes.pod +0 -709
  836. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/BestPractices.pod +0 -292
  837. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Classes.pod +0 -218
  838. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Concepts.pod +0 -439
  839. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Construction.pod +0 -228
  840. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Contributing.pod +0 -545
  841. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Delegation.pod +0 -313
  842. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Delta.pod +0 -1275
  843. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Exceptions/Manifest.pod +0 -4124
  844. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Exceptions.pod +0 -239
  845. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/FAQ.pod +0 -470
  846. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/MOP.pod +0 -214
  847. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/MethodModifiers.pod +0 -449
  848. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/MooseX.pod +0 -326
  849. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Resources.pod +0 -526
  850. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Roles.pod +0 -557
  851. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Support.pod +0 -204
  852. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Types.pod +0 -501
  853. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual/Unsweetened.pod +0 -386
  854. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Manual.pod +0 -334
  855. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Array.pm +0 -387
  856. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Bool.pm +0 -146
  857. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Code.pm +0 -129
  858. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Counter.pm +0 -157
  859. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Hash.pm +0 -227
  860. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/Number.pm +0 -155
  861. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait/String.pm +0 -187
  862. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native/Trait.pm +0 -244
  863. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute/Native.pm +0 -299
  864. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Attribute.pm +0 -1810
  865. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Class/Immutable/Trait.pm +0 -123
  866. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Class.pm +0 -1014
  867. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Instance.pm +0 -109
  868. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/Writer.pm +0 -27
  869. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/accessor.pm +0 -56
  870. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/clear.pm +0 -28
  871. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/count.pm +0 -22
  872. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/delete.pm +0 -50
  873. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/elements.pm +0 -22
  874. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/first.pm +0 -42
  875. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/first_index.pm +0 -51
  876. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/get.pm +0 -31
  877. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/grep.pm +0 -41
  878. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/insert.pm +0 -58
  879. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/is_empty.pm +0 -22
  880. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/join.pm +0 -41
  881. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/map.pm +0 -41
  882. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/natatime.pm +0 -66
  883. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/pop.pm +0 -47
  884. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/push.pm +0 -36
  885. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/reduce.pm +0 -42
  886. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/set.pm +0 -64
  887. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/shallow_clone.pm +0 -26
  888. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/shift.pm +0 -47
  889. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/shuffle.pm +0 -24
  890. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/sort.pm +0 -44
  891. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/sort_in_place.pm +0 -45
  892. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/splice.pm +0 -72
  893. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/uniq.pm +0 -24
  894. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array/unshift.pm +0 -36
  895. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Array.pm +0 -28
  896. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Bool/not.pm +0 -20
  897. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Bool/set.pm +0 -24
  898. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Bool/toggle.pm +0 -29
  899. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Bool/unset.pm +0 -24
  900. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Code/execute.pm +0 -20
  901. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Code/execute_method.pm +0 -20
  902. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Collection.pm +0 -167
  903. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Counter/Writer.pm +0 -24
  904. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Counter/dec.pm +0 -30
  905. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Counter/inc.pm +0 -30
  906. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Counter/reset.pm +0 -36
  907. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Counter/set.pm +0 -25
  908. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/Writer.pm +0 -41
  909. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/accessor.pm +0 -61
  910. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/clear.pm +0 -37
  911. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/count.pm +0 -22
  912. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/defined.pm +0 -31
  913. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/delete.pm +0 -46
  914. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/elements.pm +0 -23
  915. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/exists.pm +0 -31
  916. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/get.pm +0 -35
  917. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/is_empty.pm +0 -22
  918. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/keys.pm +0 -22
  919. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/kv.pm +0 -23
  920. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/set.pm +0 -99
  921. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/shallow_clone.pm +0 -26
  922. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash/values.pm +0 -22
  923. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Hash.pm +0 -28
  924. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/abs.pm +0 -29
  925. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/add.pm +0 -31
  926. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/div.pm +0 -31
  927. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/mod.pm +0 -31
  928. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/mul.pm +0 -31
  929. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/set.pm +0 -25
  930. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Number/sub.pm +0 -31
  931. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Reader.pm +0 -47
  932. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/append.pm +0 -31
  933. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/chomp.pm +0 -40
  934. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/chop.pm +0 -40
  935. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/clear.pm +0 -24
  936. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/inc.pm +0 -33
  937. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/length.pm +0 -22
  938. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/match.pm +0 -42
  939. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/prepend.pm +0 -31
  940. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/replace.pm +0 -69
  941. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/String/substr.pm +0 -123
  942. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native/Writer.pm +0 -174
  943. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor/Native.pm +0 -157
  944. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Accessor.pm +0 -208
  945. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Augmented.pm +0 -171
  946. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Constructor.pm +0 -145
  947. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Delegation.pm +0 -307
  948. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Destructor.pm +0 -251
  949. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Meta.pm +0 -112
  950. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method/Overridden.pm +0 -160
  951. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Method.pm +0 -100
  952. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Mixin/AttributeCore.pm +0 -185
  953. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Object/Trait.pm +0 -107
  954. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Application/RoleSummation.pm +0 -440
  955. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Application/ToClass.pm +0 -314
  956. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Application/ToInstance.pm +0 -142
  957. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Application/ToRole.pm +0 -283
  958. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Application.pm +0 -225
  959. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Attribute.pm +0 -259
  960. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Composite.pm +0 -320
  961. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Method/Conflicting.pm +0 -135
  962. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Method/Required.pm +0 -127
  963. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role/Method.pm +0 -101
  964. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/Role.pm +0 -1059
  965. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeCoercion/Union.pm +0 -141
  966. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeCoercion.pm +0 -239
  967. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Class.pm +0 -261
  968. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/DuckType.pm +0 -217
  969. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Enum.pm +0 -235
  970. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Parameterizable.pm +0 -200
  971. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Parameterized.pm +0 -188
  972. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Registry.pm +0 -206
  973. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Role.pm +0 -235
  974. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint/Union.pm +0 -346
  975. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Meta/TypeConstraint.pm +0 -607
  976. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Object.pm +0 -271
  977. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Role.pm +0 -377
  978. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Spec/Role.pod +0 -397
  979. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Unsweetened.pod +0 -77
  980. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Util/MetaRole.pm +0 -329
  981. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Util/TypeConstraints/Builtins.pm +0 -305
  982. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Util/TypeConstraints.pm +0 -1443
  983. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose/Util.pm +0 -725
  984. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Moose.pm +0 -1268
  985. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/PPI/XS.pm +0 -137
  986. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Package/Stash/XS.pm +0 -110
  987. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Params/Util/PP.pm +0 -276
  988. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Params/Util.pm +0 -486
  989. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Scalar/Util/Numeric.pm +0 -137
  990. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Test/Moose.pm +0 -228
  991. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/Want.pm +0 -742
  992. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Class/Load/XS/XS.bundle +0 -0
  993. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Clone/Clone.bundle +0 -0
  994. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Clone/autosplit.ix +0 -3
  995. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Data/UUID/UUID.bundle +0 -0
  996. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/FFI/Platypus/Constant/Constant.txt +0 -1
  997. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/FFI/Platypus/Memory/Memory.txt +0 -1
  998. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/FFI/Platypus/Platypus.bundle +0 -0
  999. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/FFI/Platypus/Record/Meta/Meta.txt +0 -1
  1000. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Moose/Moose.bundle +0 -0
  1001. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/PPI/XS/XS.bundle +0 -0
  1002. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Package/Stash/XS/XS.bundle +0 -0
  1003. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Params/Util/Util.bundle +0 -0
  1004. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Scalar/Util/Numeric/Numeric.bundle +0 -0
  1005. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Want/Want.bundle +0 -0
  1006. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/autobox/autobox.bundle +0 -0
  1007. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/config.pl +0 -101
  1008. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/include/ffi_platypus_bundle.h +0 -33
  1009. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/include/ffi_platypus_config.h +0 -40
  1010. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/lib/libplfill.dylib +0 -0
  1011. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/probe/probe.pl +0 -300
  1012. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/share/dist/FFI-Platypus/probe/src/dlrun.c +0 -105
  1013. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/autobox/universal.pm +0 -13
  1014. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/autobox.pm +0 -404
  1015. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/autobox.pod +0 -709
  1016. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/metaclass.pm +0 -155
  1017. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/oose.pm +0 -137
  1018. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/perllocal.pod +0 -924
  1019. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Exception/Exception.pm +0 -29
  1020. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Exception/ExceptionSerializer.pm +0 -25
  1021. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Exception/ExceptionThrower.pm +0 -40
  1022. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Exception/SdkExceptionHelper.pm +0 -93
  1023. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/AbstractHandler.pm +0 -11
  1024. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/AbstractCommandHandler.pm +0 -48
  1025. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetItemHandler.pm +0 -38
  1026. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetRankHandler.pm +0 -29
  1027. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ArrayGetSizeHandler.pm +0 -37
  1028. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ArraySetItemHandler.pm +0 -40
  1029. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/CastingHandler.pm +0 -22
  1030. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/CreateClassInstanceHandler.pm +0 -37
  1031. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/DestructReferenceHandler.pm +0 -39
  1032. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/GetInstanceFieldHandler.pm +0 -39
  1033. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/GetStaticFieldHandler.pm +0 -40
  1034. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/GetTypeHandler.pm +0 -40
  1035. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeInstanceMethodHandler.pm +0 -51
  1036. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/InvokeStaticMethodHandler.pm +0 -51
  1037. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/LoadLibraryHandler.pm +0 -42
  1038. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ResolveInstanceHandler.pm +0 -38
  1039. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/SetInstanceFieldHandler.pm +0 -40
  1040. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/SetStaticFieldHandler.pm +0 -42
  1041. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/CommandHandler/ValueHandler.pm +0 -29
  1042. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/HandlerDictionary.pm +0 -22
  1043. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/PerlHandler.pm +0 -167
  1044. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm +0 -43
  1045. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +0 -43
  1046. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +0 -203
  1047. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +0 -103
  1048. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +0 -82
  1049. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +0 -122
  1050. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Receiver/Receiver.pm +0 -33
  1051. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +0 -42
  1052. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +0 -88
  1053. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Javonet.pm +0 -71
  1054. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +0 -101
  1055. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Core/PerlCommandType.pm +0 -51
  1056. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Core/RuntimeLib.pm +0 -25
  1057. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Core/StringEncodingMode.pm +0 -20
  1058. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Core/Type.pm +0 -28
  1059. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractEnumInvocationContext.pm +0 -22
  1060. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInstanceContext.pm +0 -18
  1061. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractInvocationContext.pm +0 -13
  1062. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractMethodInvocationContext.pm +0 -18
  1063. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractModuleContext.pm +0 -11
  1064. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractRuntimeFactory.pm +0 -24
  1065. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/Abstract/AbstractTypeContext.pm +0 -15
  1066. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +0 -19
  1067. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -419
  1068. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -272
  1069. data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +0 -104
  1070. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/__init__.py +0 -0
  1071. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/callback/__init__.py +0 -0
  1072. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/callback/callbackFunc.py +0 -5
  1073. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/__init__.py +0 -0
  1074. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/AbstractGeneretatorHandler.py +0 -8
  1075. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/CreateInstanceGeneratorHandler.py +0 -44
  1076. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/GeneratorHandler.py +0 -65
  1077. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/GetInstanceFieldGeneratorHandler.py +0 -36
  1078. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/GetStaticFieldGeneratorHandler.py +0 -39
  1079. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/GetTypeGeneratorHandler.py +0 -92
  1080. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/Handlers.py +0 -59
  1081. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/InvokeInstanceMethodGeneratorHandler.py +0 -53
  1082. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/InvokeStaticMethodGeneratorHandler.py +0 -54
  1083. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/__init__.py +0 -0
  1084. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedArgumentNameHandler.py +0 -12
  1085. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedClassInstanceHandler.py +0 -12
  1086. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedClassNameHandler.py +0 -31
  1087. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedMethodNameHandler.py +0 -30
  1088. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedModifierHandler.py +0 -21
  1089. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedReturnTypeHandler.py +0 -13
  1090. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/SharedTypeHandler.py +0 -57
  1091. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/__init__.py +0 -0
  1092. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedBodyHandler.py +0 -10
  1093. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.py +0 -21
  1094. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.py +0 -16
  1095. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.py +0 -22
  1096. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedGetTypeBodyHandler.py +0 -16
  1097. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.py +0 -47
  1098. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.py +0 -55
  1099. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/handler/shared/body/__init__.py +0 -0
  1100. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/internal/CommonGenerator.py +0 -23
  1101. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/internal/PythonStringBuilder.py +0 -15
  1102. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/internal/SharedHandlerType.py +0 -12
  1103. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/generator/internal/__init__.py +0 -0
  1104. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/AbstractCommandHandler.py +0 -20
  1105. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/AbstractHandler.py +0 -3
  1106. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ArrayGetItemHandler.py +0 -27
  1107. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ArrayGetRankHandler.py +0 -25
  1108. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ArrayGetSizeHandler.py +0 -24
  1109. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ArrayHandler.py +0 -13
  1110. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ArraySetItemHandler.py +0 -39
  1111. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/CastingHandler.py +0 -6
  1112. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/CreateClassInstanceHandler.py +0 -28
  1113. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/DestructReferenceHandler.py +0 -13
  1114. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/EnableNamespaceHandler.py +0 -28
  1115. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/EnableTypeHandler.py +0 -28
  1116. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetEnumItemHandler.py +0 -29
  1117. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetEnumNameHandler.py +0 -22
  1118. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetEnumValueHandler.py +0 -22
  1119. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetInstanceFieldHandler.py +0 -27
  1120. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetStaticFieldHandler.py +0 -27
  1121. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/GetTypeHandler.py +0 -56
  1122. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/Handler.py +0 -89
  1123. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/HandlerDictionary.py +0 -8
  1124. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/InvokeInstanceMethodHandler.py +0 -31
  1125. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/InvokeStaticMethodHandler.py +0 -35
  1126. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/LoadLibraryHandler.py +0 -25
  1127. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ResolveInstanceHandler.py +0 -19
  1128. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/SetInstanceFieldHandler.py +0 -29
  1129. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/SetStaticFieldHandler.py +0 -29
  1130. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/ValueHandler.py +0 -6
  1131. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/handler/__init__.py +0 -0
  1132. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/interpreter/Interpreter.py +0 -34
  1133. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/interpreter/__init__.py +0 -0
  1134. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/namespaceCache/NamespaceCache.py +0 -44
  1135. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/namespaceCache/__init__.py +0 -0
  1136. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/CommandDeserializer.py +0 -147
  1137. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/CommandSerializer.py +0 -61
  1138. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/TypeDeserializer.py +0 -64
  1139. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/TypeSerializer.py +0 -76
  1140. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/__init__.py +0 -0
  1141. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/receiver/Receiver.py +0 -18
  1142. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/receiver/__init__.py +0 -0
  1143. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/referenceCache/ReferencesCache.py +0 -39
  1144. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/referenceCache/__init__.py +0 -0
  1145. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/transmitter/Transmitter.py +0 -16
  1146. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/transmitter/TransmitterWrapper.py +0 -86
  1147. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/transmitter/__init__.py +0 -0
  1148. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/typeCache/TypeCache.py +0 -44
  1149. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/typeCache/__init__.py +0 -0
  1150. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/webSocketClient/WebSocketClient.py +0 -32
  1151. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/Command.py +0 -67
  1152. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/CommandType.py +0 -41
  1153. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/ConnectionType.py +0 -7
  1154. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/ExceptionType.py +0 -55
  1155. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/RuntimeName.py +0 -13
  1156. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/RuntimeNameHandler.py +0 -26
  1157. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/StringEncodingMode.py +0 -8
  1158. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/Type.py +0 -16
  1159. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/__init__.py +0 -0
  1160. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/connectionData/IConnectionData.py +0 -18
  1161. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/connectionData/InMemoryConnectionData.py +0 -23
  1162. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/connectionData/TcpConnectionData.py +0 -67
  1163. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/connectionData/WsConnectionData.py +0 -30
  1164. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/connectionData/__init__.py +0 -0
  1165. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/exception/ExceptionSerializer.py +0 -60
  1166. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/exception/ExceptionThrower.py +0 -77
  1167. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/exception/JavonetException.py +0 -10
  1168. data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/exception/__init__.py +0 -0
  1169. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/__init__.py +0 -0
  1170. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/__pycache__/__init__.cpython-311.pyc +0 -0
  1171. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/callback/__init__.py +0 -0
  1172. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/callback/callbackFunc.py +0 -5
  1173. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/__init__.py +0 -0
  1174. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/__pycache__/__init__.cpython-311.pyc +0 -0
  1175. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/AbstractGeneretatorHandler.py +0 -8
  1176. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/CreateInstanceGeneratorHandler.py +0 -44
  1177. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/GeneratorHandler.py +0 -65
  1178. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/GetInstanceFieldGeneratorHandler.py +0 -36
  1179. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/GetStaticFieldGeneratorHandler.py +0 -39
  1180. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/GetTypeGeneratorHandler.py +0 -92
  1181. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/Handlers.py +0 -59
  1182. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/InvokeInstanceMethodGeneratorHandler.py +0 -53
  1183. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/InvokeStaticMethodGeneratorHandler.py +0 -54
  1184. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/__init__.py +0 -0
  1185. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedArgumentNameHandler.py +0 -12
  1186. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedClassInstanceHandler.py +0 -12
  1187. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedClassNameHandler.py +0 -31
  1188. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedMethodNameHandler.py +0 -30
  1189. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedModifierHandler.py +0 -21
  1190. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedReturnTypeHandler.py +0 -13
  1191. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/SharedTypeHandler.py +0 -57
  1192. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/__init__.py +0 -0
  1193. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedBodyHandler.py +0 -10
  1194. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.py +0 -21
  1195. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.py +0 -16
  1196. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.py +0 -22
  1197. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedGetTypeBodyHandler.py +0 -16
  1198. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.py +0 -47
  1199. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.py +0 -55
  1200. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/handler/shared/body/__init__.py +0 -0
  1201. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/CommonGenerator.py +0 -23
  1202. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/PythonStringBuilder.py +0 -15
  1203. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/SharedHandlerType.py +0 -12
  1204. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/__init__.py +0 -0
  1205. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/__pycache__/__init__.cpython-311.pyc +0 -0
  1206. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/AbstractCommandHandler.py +0 -20
  1207. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/AbstractHandler.py +0 -3
  1208. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ArrayGetItemHandler.py +0 -27
  1209. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ArrayGetRankHandler.py +0 -25
  1210. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ArrayGetSizeHandler.py +0 -24
  1211. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ArrayHandler.py +0 -13
  1212. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ArraySetItemHandler.py +0 -39
  1213. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CastingHandler.py +0 -6
  1214. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CreateClassInstanceHandler.py +0 -28
  1215. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/DestructReferenceHandler.py +0 -13
  1216. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/EnableNamespaceHandler.py +0 -28
  1217. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/EnableTypeHandler.py +0 -28
  1218. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetEnumItemHandler.py +0 -29
  1219. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetEnumNameHandler.py +0 -22
  1220. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetEnumValueHandler.py +0 -22
  1221. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetInstanceFieldHandler.py +0 -27
  1222. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetStaticFieldHandler.py +0 -27
  1223. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/GetTypeHandler.py +0 -56
  1224. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/Handler.py +0 -89
  1225. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/HandlerDictionary.py +0 -8
  1226. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/InvokeInstanceMethodHandler.py +0 -31
  1227. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/InvokeStaticMethodHandler.py +0 -35
  1228. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/LoadLibraryHandler.py +0 -25
  1229. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ResolveInstanceHandler.py +0 -19
  1230. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/SetInstanceFieldHandler.py +0 -29
  1231. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/SetStaticFieldHandler.py +0 -29
  1232. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/ValueHandler.py +0 -6
  1233. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__init__.py +0 -0
  1234. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/__init__.cpython-311.pyc +0 -0
  1235. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/Interpreter.py +0 -34
  1236. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/__init__.py +0 -0
  1237. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/__pycache__/__init__.cpython-311.pyc +0 -0
  1238. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/namespaceCache/NamespaceCache.py +0 -44
  1239. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/namespaceCache/__init__.py +0 -0
  1240. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/namespaceCache/__pycache__/__init__.cpython-311.pyc +0 -0
  1241. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/CommandDeserializer.py +0 -147
  1242. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/CommandSerializer.py +0 -61
  1243. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/TypeDeserializer.py +0 -64
  1244. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/TypeSerializer.py +0 -76
  1245. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__init__.py +0 -0
  1246. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/__init__.cpython-311.pyc +0 -0
  1247. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/receiver/Receiver.py +0 -18
  1248. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/receiver/__init__.py +0 -0
  1249. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/receiver/__pycache__/__init__.cpython-311.pyc +0 -0
  1250. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/referenceCache/ReferencesCache.py +0 -39
  1251. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/referenceCache/__init__.py +0 -0
  1252. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/referenceCache/__pycache__/__init__.cpython-311.pyc +0 -0
  1253. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/transmitter/Transmitter.py +0 -16
  1254. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/transmitter/TransmitterWrapper.py +0 -86
  1255. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/transmitter/__init__.py +0 -0
  1256. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/typeCache/TypeCache.py +0 -44
  1257. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/typeCache/__init__.py +0 -0
  1258. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/typeCache/__pycache__/__init__.cpython-311.pyc +0 -0
  1259. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/webSocketClient/WebSocketClient.py +0 -32
  1260. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/Command.py +0 -67
  1261. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/CommandType.py +0 -41
  1262. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/ConnectionType.py +0 -7
  1263. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/ExceptionType.py +0 -55
  1264. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/RuntimeName.py +0 -13
  1265. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/RuntimeNameHandler.py +0 -26
  1266. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/StringEncodingMode.py +0 -8
  1267. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/Type.py +0 -16
  1268. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__init__.py +0 -0
  1269. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/ExceptionType.cpython-311.pyc +0 -0
  1270. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/StringEncodingMode.cpython-311.pyc +0 -0
  1271. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  1272. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/IConnectionData.py +0 -18
  1273. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/InMemoryConnectionData.py +0 -23
  1274. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/TcpConnectionData.py +0 -67
  1275. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/WsConnectionData.py +0 -30
  1276. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/__init__.py +0 -0
  1277. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/connectionData/__pycache__/__init__.cpython-311.pyc +0 -0
  1278. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/ExceptionSerializer.py +0 -60
  1279. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/ExceptionThrower.py +0 -77
  1280. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/JavonetException.py +0 -10
  1281. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/__init__.py +0 -0
  1282. data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/__pycache__/__init__.cpython-311.pyc +0 -0
  1283. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/AbstractGeneratorHandler.js +0 -0
  1284. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/CreateInstanceGeneratorHandler.js +0 -0
  1285. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/GeneratorHandler.js +0 -0
  1286. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/GetInstanceFieldGeneratorHandler.js +0 -0
  1287. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/GetStaticFieldGeneratorHandler.js +0 -0
  1288. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/GetTypeGeneratorHandler.js +0 -0
  1289. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/Handlers.js +0 -0
  1290. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/InvokeInstanceMethodGeneratorHandler.js +0 -0
  1291. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/InvokeStaticMethodGeneratorHandler.js +0 -0
  1292. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/SharedArgumentNameHandler.js +0 -0
  1293. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/SharedClassInstanceHandler.js +0 -0
  1294. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/SharedClassNameHandler.js +0 -0
  1295. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/SharedMethodNameHandler.js +0 -0
  1296. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/SharedReturnTypeHandler.js +0 -0
  1297. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedBodyHandler.js +0 -0
  1298. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedCreateInstanceBodyHandler.js +0 -0
  1299. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.js +0 -0
  1300. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.js +0 -0
  1301. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedGetTypeBodyHandler.js +0 -0
  1302. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.js +0 -0
  1303. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.js +0 -0
  1304. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/internal/CommonGenerator.js +0 -0
  1305. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/internal/NodejsStringBuilder.js +0 -0
  1306. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/internal/SharedHandlerType.js +0 -0
  1307. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/generator/utils/StringUtils.js +0 -0
  1308. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/AbstractHandler.js +0 -0
  1309. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ArrayGetItemHandler.js +0 -0
  1310. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ArrayGetRankHandler.js +0 -0
  1311. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ArrayGetSizeHandler.js +0 -0
  1312. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ArrayHandler.js +0 -0
  1313. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ArraySetItemHandler.js +0 -0
  1314. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/CastingHandler.js +0 -0
  1315. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/CreateClassInstanceHandler.js +0 -0
  1316. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/DestructReferenceHandler.js +0 -0
  1317. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/EnableNamespaceHandler.js +0 -0
  1318. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/EnableTypeHandler.js +0 -0
  1319. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/GetGlobalStaticFieldHandler.js +0 -0
  1320. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/GetInstanceFieldHandler.js +0 -0
  1321. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/GetStaticFieldHandler.js +0 -0
  1322. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/GetTypeHandler.js +0 -0
  1323. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/Handler.js +0 -0
  1324. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/InvokeGlobalMethodHandler.js +0 -0
  1325. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/InvokeInstanceMethodHandler.js +0 -0
  1326. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/InvokeStaticMethodHandler.js +0 -0
  1327. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/LoadLibraryHandler.js +0 -0
  1328. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ResolveReferenceHandler.js +0 -0
  1329. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/SetGlobalStaticFieldHandler.js +0 -0
  1330. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/SetInstanceFieldHandler.js +0 -0
  1331. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/SetStaticFieldHandler.js +0 -0
  1332. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/handler/ValueHandler.js +0 -0
  1333. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/interpreter/Interpreter.js +0 -0
  1334. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/namespaceCache/NamespaceCache.js +0 -0
  1335. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/protocol/CommandDeserializer.js +0 -0
  1336. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/protocol/CommandSerializer.js +0 -0
  1337. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/protocol/TypeDeserializer.js +0 -0
  1338. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/protocol/TypeSerializer.js +0 -0
  1339. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/receiver/Receiver.js +0 -0
  1340. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/receiver/ReceiverNative.js +0 -0
  1341. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/referenceCache/ReferencesCache.js +0 -0
  1342. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/transmitter/Transmitter.js +0 -0
  1343. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/transmitter/TransmitterWrapper.js +0 -0
  1344. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/core → core}/typeCache/TypeCache.js +0 -0
  1345. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/Command.js +0 -0
  1346. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/CommandType.js +0 -0
  1347. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/ConnectionType.js +0 -0
  1348. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/ExceptionType.js +0 -0
  1349. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/RuntimeName.js +0 -0
  1350. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/RuntimeNameHandler.js +0 -0
  1351. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/StringEncodingMode.js +0 -0
  1352. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/TcpConnectionData.js +0 -0
  1353. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/Type.js +0 -0
  1354. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/exception/ExceptionSerializer.js +0 -0
  1355. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/exception/ExceptionThrower.js +0 -0
  1356. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/uuid/REGEX.js +0 -0
  1357. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/uuid/rng.js +0 -0
  1358. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/uuid/stringify.js +0 -0
  1359. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/uuid/v4.js +0 -0
  1360. /data/lib/javonet-ruby-sdk/Binaries/Nodejs/{Linux/X64/utils → utils}/uuid/validate.js +0 -0
  1361. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/__init__.py +0 -0
  1362. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/callback/__init__.py +0 -0
  1363. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/callback/callbackFunc.py +0 -0
  1364. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/__init__.py +0 -0
  1365. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/AbstractGeneretatorHandler.py +0 -0
  1366. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/CreateInstanceGeneratorHandler.py +0 -0
  1367. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/GeneratorHandler.py +0 -0
  1368. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/GetInstanceFieldGeneratorHandler.py +0 -0
  1369. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/GetStaticFieldGeneratorHandler.py +0 -0
  1370. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/GetTypeGeneratorHandler.py +0 -0
  1371. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/Handlers.py +0 -0
  1372. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/InvokeInstanceMethodGeneratorHandler.py +0 -0
  1373. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/InvokeStaticMethodGeneratorHandler.py +0 -0
  1374. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/__init__.py +0 -0
  1375. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedArgumentNameHandler.py +0 -0
  1376. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedClassInstanceHandler.py +0 -0
  1377. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedClassNameHandler.py +0 -0
  1378. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedMethodNameHandler.py +0 -0
  1379. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedModifierHandler.py +0 -0
  1380. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedReturnTypeHandler.py +0 -0
  1381. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/SharedTypeHandler.py +0 -0
  1382. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/__init__.py +0 -0
  1383. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedBodyHandler.py +0 -0
  1384. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedCreateInstanceBodyHandler.py +0 -0
  1385. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedGetInstanceFieldBodyHandler.py +0 -0
  1386. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedGetStaticFieldBodyHandler.py +0 -0
  1387. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedGetTypeBodyHandler.py +0 -0
  1388. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedInvokeInstanceMethodBodyHandler.py +0 -0
  1389. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/SharedInvokeStaticMethodBodyHandler.py +0 -0
  1390. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/handler/shared/body/__init__.py +0 -0
  1391. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/internal/CommonGenerator.py +0 -0
  1392. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/internal/PythonStringBuilder.py +0 -0
  1393. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/internal/SharedHandlerType.py +0 -0
  1394. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/generator/internal/__init__.py +0 -0
  1395. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/AbstractCommandHandler.py +0 -0
  1396. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/AbstractHandler.py +0 -0
  1397. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ArrayGetItemHandler.py +0 -0
  1398. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ArrayGetRankHandler.py +0 -0
  1399. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ArrayGetSizeHandler.py +0 -0
  1400. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ArrayHandler.py +0 -0
  1401. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ArraySetItemHandler.py +0 -0
  1402. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/CastingHandler.py +0 -0
  1403. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/CreateClassInstanceHandler.py +0 -0
  1404. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/DestructReferenceHandler.py +0 -0
  1405. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/EnableNamespaceHandler.py +0 -0
  1406. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/EnableTypeHandler.py +0 -0
  1407. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetEnumItemHandler.py +0 -0
  1408. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetEnumNameHandler.py +0 -0
  1409. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetEnumValueHandler.py +0 -0
  1410. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetInstanceFieldHandler.py +0 -0
  1411. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetStaticFieldHandler.py +0 -0
  1412. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/GetTypeHandler.py +0 -0
  1413. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/Handler.py +0 -0
  1414. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/HandlerDictionary.py +0 -0
  1415. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/InvokeInstanceMethodHandler.py +0 -0
  1416. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/InvokeStaticMethodHandler.py +0 -0
  1417. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/LoadLibraryHandler.py +0 -0
  1418. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ResolveInstanceHandler.py +0 -0
  1419. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/SetInstanceFieldHandler.py +0 -0
  1420. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/SetStaticFieldHandler.py +0 -0
  1421. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/ValueHandler.py +0 -0
  1422. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/handler/__init__.py +0 -0
  1423. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/interpreter/Interpreter.py +0 -0
  1424. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/interpreter/__init__.py +0 -0
  1425. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/namespaceCache/NamespaceCache.py +0 -0
  1426. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/namespaceCache/__init__.py +0 -0
  1427. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/protocol/CommandDeserializer.py +0 -0
  1428. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/protocol/CommandSerializer.py +0 -0
  1429. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/protocol/TypeDeserializer.py +0 -0
  1430. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/protocol/TypeSerializer.py +0 -0
  1431. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/protocol/__init__.py +0 -0
  1432. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/receiver/Receiver.py +0 -0
  1433. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/receiver/__init__.py +0 -0
  1434. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/referenceCache/ReferencesCache.py +0 -0
  1435. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/referenceCache/__init__.py +0 -0
  1436. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/transmitter/__init__.py +0 -0
  1437. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/typeCache/TypeCache.py +0 -0
  1438. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/typeCache/__init__.py +0 -0
  1439. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/core/webSocketClient/WebSocketClient.py +0 -0
  1440. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/Command.py +0 -0
  1441. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/CommandType.py +0 -0
  1442. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/ConnectionType.py +0 -0
  1443. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/ExceptionType.py +0 -0
  1444. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/RuntimeName.py +0 -0
  1445. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/RuntimeNameHandler.py +0 -0
  1446. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/StringEncodingMode.py +0 -0
  1447. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/Type.py +0 -0
  1448. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/__init__.py +0 -0
  1449. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/connectionData/IConnectionData.py +0 -0
  1450. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/connectionData/InMemoryConnectionData.py +0 -0
  1451. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/connectionData/TcpConnectionData.py +0 -0
  1452. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/connectionData/WsConnectionData.py +0 -0
  1453. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/connectionData/__init__.py +0 -0
  1454. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/exception/ExceptionSerializer.py +0 -0
  1455. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/exception/ExceptionThrower.py +0 -0
  1456. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/exception/JavonetException.py +0 -0
  1457. /data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet → javonet}/utils/exception/__init__.py +0 -0
@@ -1,3302 +0,0 @@
1
- package FFI::Platypus;
2
-
3
- use strict;
4
- use warnings;
5
- use 5.008004;
6
- use Carp qw( croak );
7
- use FFI::Platypus::Function;
8
- use FFI::Platypus::Type;
9
-
10
- # ABSTRACT: Write Perl bindings to non-Perl libraries with FFI. No XS required.
11
- our $VERSION = '2.09'; # VERSION
12
-
13
- # Platypus-Man,
14
- # Platypus-Man,
15
- # Does Whatever A Platypus Can
16
- # Is Mildly Venomous
17
- # Hangs Out In Rivers By Caves
18
- # Look Out!
19
- # Here Comes The Platypus-Man
20
-
21
- # From the original FFI::Platypus prototype:
22
- # Kinda like gluing a duckbill to an adorable mammal
23
-
24
-
25
- our @CARP_NOT = qw( FFI::Platypus::Declare FFI::Platypus::Record );
26
-
27
- require XSLoader;
28
- XSLoader::load(
29
- 'FFI::Platypus', $FFI::Platypus::VERSION || 0
30
- );
31
-
32
-
33
- sub new
34
- {
35
- my($class, %args) = @_;
36
- my @lib;
37
- if(exists $args{lib})
38
- {
39
- if(!ref($args{lib}))
40
- {
41
- push @lib, $args{lib};
42
- }
43
- elsif(ref($args{lib}) eq 'ARRAY')
44
- {
45
- push @lib, @{$args{lib}};
46
- }
47
- else
48
- {
49
- croak "lib argument must be a scalar or array reference";
50
- }
51
- }
52
-
53
- my $api = $args{api} || 0;
54
- my $experimental = $args{experimental} || 0;
55
-
56
- if($experimental == 1)
57
- {
58
- Carp::croak("Please do not use the experimental version of api = 1, instead require FFI::Platypus 1.00 or better");
59
- }
60
- elsif($experimental == 2)
61
- {
62
- Carp::croak("Please do not use the experimental version of api = 2, instead require FFI::Platypus 2.00 or better");
63
- }
64
-
65
- if(defined $api && $api > 2 && $experimental != $api)
66
- {
67
- Carp::cluck("Enabling development API version $api prior to FFI::Platypus $api.00");
68
- }
69
-
70
- my $tp;
71
-
72
- if($api == 0)
73
- {
74
- $tp = 'Version0';
75
- }
76
- elsif($api == 1)
77
- {
78
- $tp = 'Version1';
79
- }
80
- elsif($api == 2)
81
- {
82
- $tp = 'Version2';
83
- }
84
- else
85
- {
86
- Carp::croak("API version $api not (yet) implemented");
87
- }
88
-
89
- require "FFI/Platypus/TypeParser/$tp.pm";
90
- $tp = "FFI::Platypus::TypeParser::$tp";
91
-
92
- my $self = bless {
93
- lib => \@lib,
94
- lang => '',
95
- handles => {},
96
- abi => -1,
97
- api => $api,
98
- tp => $tp->new,
99
- fini => [],
100
- ignore_not_found => defined $args{ignore_not_found} ? $args{ignore_not_found} : 0,
101
- }, $class;
102
-
103
- $self->lang($args{lang} || 'C');
104
-
105
- $self;
106
- }
107
-
108
- sub _lang_class ($)
109
- {
110
- my($lang) = @_;
111
- my $class = $lang =~ m/^=(.*)$/ ? $1 : "FFI::Platypus::Lang::$lang";
112
- unless($class->can('native_type_map'))
113
- {
114
- my $pm = "$class.pm";
115
- $pm =~ s/::/\//g;
116
- require $pm;
117
- }
118
- croak "$class does not provide native_type_map method"
119
- unless $class->can("native_type_map");
120
- $class;
121
- }
122
-
123
-
124
- sub lib
125
- {
126
- my($self, @new) = @_;
127
-
128
- if(@new)
129
- {
130
- push @{ $self->{lib} }, map { ref $_ eq 'CODE' ? $_->() : $_ } @new;
131
- delete $self->{mangler};
132
- }
133
-
134
- @{ $self->{lib} };
135
- }
136
-
137
-
138
- sub ignore_not_found
139
- {
140
- my($self, $value) = @_;
141
-
142
- if(defined $value)
143
- {
144
- $self->{ignore_not_found} = $value;
145
- }
146
-
147
- $self->{ignore_not_found};
148
- }
149
-
150
-
151
- sub lang
152
- {
153
- my($self, $value) = @_;
154
-
155
- if(defined $value && $value ne $self->{lang})
156
- {
157
- $self->{lang} = $value;
158
- my $class = _lang_class($self->{lang});
159
- $self->abi($class->abi) if $class->can('abi');
160
-
161
- {
162
- my %type_map;
163
- my $map = $class->native_type_map(
164
- $self->{api} > 0
165
- ? (api => $self->{api})
166
- : ()
167
- );
168
- foreach my $key (keys %$map)
169
- {
170
- my $value = $map->{$key};
171
- next unless $self->{tp}->have_type($value);
172
- $type_map{$key} = $value;
173
- }
174
- $type_map{$_} = $_ for grep { $self->{tp}->have_type($_) }
175
- qw( void sint8 uint8 sint16 uint16 sint32 uint32 sint64 uint64 float double string opaque
176
- longdouble complex_float complex_double );
177
- $type_map{pointer} = 'opaque' if $self->{tp}->isa('FFI::Platypus::TypeParser::Version0');
178
- $self->{tp}->type_map(\%type_map);
179
- }
180
-
181
- $class->load_custom_types($self) if $class->can('load_custom_types');
182
- }
183
-
184
- $self->{lang};
185
- }
186
-
187
-
188
- sub api { shift->{api} }
189
-
190
-
191
- sub type
192
- {
193
- my($self, $name, $alias) = @_;
194
- croak "usage: \$ffi->type(name => alias) (alias is optional)" unless defined $self && defined $name;
195
-
196
- $self->{tp}->check_alias($alias) if defined $alias;
197
- my $type = $self->{tp}->parse($name);
198
- $self->{tp}->set_alias($alias, $type) if defined $alias;
199
-
200
- $self;
201
- }
202
-
203
-
204
- sub custom_type
205
- {
206
- my($self, $alias, $cb) = @_;
207
-
208
- my $argument_count = $cb->{argument_count} || 1;
209
-
210
- croak "argument_count must be >= 1"
211
- unless $argument_count >= 1;
212
-
213
- croak "Usage: \$ffi->custom_type(\$alias, { ... })"
214
- unless defined $alias && ref($cb) eq 'HASH';
215
-
216
- croak "must define at least one of native_to_perl, perl_to_native, or perl_to_native_post"
217
- unless defined $cb->{native_to_perl} || defined $cb->{perl_to_native} || defined $cb->{perl_to_native_post};
218
-
219
- $self->{tp}->check_alias($alias);
220
-
221
- my $type = $self->{tp}->create_type_custom(
222
- $cb->{native_type},
223
- $cb->{perl_to_native},
224
- $cb->{native_to_perl},
225
- $cb->{perl_to_native_post},
226
- $argument_count,
227
- );
228
-
229
- $self->{tp}->set_alias($alias, $type);
230
-
231
- $self;
232
- }
233
-
234
-
235
- sub load_custom_type
236
- {
237
- my($self, $name, $alias, @type_args) = @_;
238
-
239
- croak "usage: \$ffi->load_custom_type(\$name, \$alias, ...)"
240
- unless defined $name && defined $alias;
241
-
242
- $name = "FFI::Platypus::Type$name" if $name =~ /^::/;
243
- $name = "FFI::Platypus::Type::$name" unless $name =~ /::/;
244
-
245
- unless($name->can("ffi_custom_type_api_1"))
246
- {
247
- my $pm = "$name.pm";
248
- $pm =~ s/::/\//g;
249
- eval { require $pm };
250
- warn $@ if $@;
251
- }
252
-
253
- unless($name->can("ffi_custom_type_api_1"))
254
- {
255
- croak "$name does not appear to conform to the custom type API";
256
- }
257
-
258
- my $cb = $name->ffi_custom_type_api_1($self, @type_args);
259
- $self->custom_type($alias => $cb);
260
-
261
- $self;
262
- }
263
-
264
-
265
- sub types
266
- {
267
- my($self) = @_;
268
- $self = $self->new unless ref $self && eval { $self->isa('FFI::Platypus') };
269
- sort $self->{tp}->list_types;
270
- }
271
-
272
-
273
- sub type_meta
274
- {
275
- my($self, $name) = @_;
276
- $self = $self->new unless ref $self && eval { $self->isa('FFI::Platypus') };
277
- $self->{tp}->parse($name)->meta;
278
- }
279
-
280
-
281
- sub mangler
282
- {
283
- my($self, $sub) = @_;
284
- $self->{mangler} = $self->{mymangler} = $sub;
285
- }
286
-
287
-
288
- sub function
289
- {
290
- my $wrapper;
291
- $wrapper = pop if ref $_[-1] eq 'CODE';
292
-
293
- croak "usage \$ffi->function( \$name, \\\@arguments, [\\\@var_args], [\$return_type])" unless @_ >= 3 && @_ <= 6;
294
-
295
- my $self = shift;
296
- my $name = shift;
297
- my $fixed_args = shift;
298
- my $var_args;
299
- $var_args = shift if defined $_[0] && ref($_[0]) eq 'ARRAY';
300
- my $ret = shift;
301
- $ret = 'void' unless defined $ret;
302
-
303
- # special case: treat a single void argument type as an empty list of
304
- # arguments, a la olde timey C compilers.
305
- if( (!defined $var_args) && @$fixed_args == 1 && $fixed_args->[0] eq 'void' )
306
- {
307
- $fixed_args = [];
308
- }
309
-
310
- my $fixed_arg_count = defined $var_args ? scalar(@$fixed_args) : -1;
311
-
312
- my @args = map { $self->{tp}->parse($_) || croak "unknown type: $_" } @$fixed_args;
313
- if($var_args)
314
- {
315
- push @args, map {
316
- my $type = $self->{tp}->parse($_);
317
- # https://github.com/PerlFFI/FFI-Platypus/issues/323
318
- $type->type_code == 67 ? $self->{tp}->parse('double') : $type
319
- } @$var_args;
320
- }
321
-
322
- $ret = $self->{tp}->parse($ret) || croak "unknown type: $ret";
323
- my $address = $name =~ /^-?[0-9]+$/ ? $name : $self->find_symbol($name);
324
- croak "unable to find $name" unless defined $address || $self->ignore_not_found;
325
- return unless defined $address;
326
- $address = @args > 0 ? _cast1() : _cast0() if $address == 0;
327
- my $function = FFI::Platypus::Function::Function->new($self, $address, $self->{abi}, $fixed_arg_count, $ret, @args);
328
- $wrapper
329
- ? FFI::Platypus::Function::Wrapper->new($function, $wrapper)
330
- : $function;
331
- }
332
-
333
- sub _function_meta
334
- {
335
- # NOTE: may be upgraded to a documented function one day,
336
- # but shouldn't be used externally as we will rename it
337
- # if that happens.
338
- my($self, $name, $meta, $args, $ret) = @_;
339
- $args = ['opaque','int',@$args];
340
- $self->function(
341
- $name, $args, $ret, sub {
342
- my $xsub = shift;
343
- $xsub->($meta, scalar(@_), @_);
344
- },
345
- );
346
- }
347
-
348
-
349
- sub attach
350
- {
351
- my $wrapper;
352
- $wrapper = pop if ref $_[-1] eq 'CODE';
353
-
354
- my $self = shift;
355
- my $name = shift;
356
- my $args = shift;
357
- my $varargs;
358
- $varargs = shift if defined $_[0] && ref($_[0]) eq 'ARRAY';
359
- my $ret = shift;
360
- my $proto = shift;
361
-
362
- $ret = 'void' unless defined $ret;
363
-
364
- my($c_name, $perl_name) = ref($name) ? @$name : ($name, $name);
365
-
366
- croak "you tried to provide a perl name that looks like an address"
367
- if $perl_name =~ /^-?[0-9]+$/;
368
-
369
- my $function = $varargs
370
- ? $self->function($c_name, $args, $varargs, $ret, $wrapper)
371
- : $self->function($c_name, $args, $ret, $wrapper);
372
-
373
- if(defined $function)
374
- {
375
- $function->attach($perl_name, $proto);
376
- }
377
-
378
- $self;
379
- }
380
-
381
-
382
- sub closure
383
- {
384
- my($self, $coderef) = @_;
385
- return undef unless defined $coderef;
386
- croak "not a coderef" unless ref $coderef eq 'CODE';
387
- require FFI::Platypus::Closure;
388
- FFI::Platypus::Closure->new($coderef);
389
- }
390
-
391
-
392
- sub cast
393
- {
394
- $_[0]->function(0 => [$_[1]] => $_[2])->call($_[3]);
395
- }
396
-
397
-
398
- sub attach_cast
399
- {
400
- my($self, $name, $type1, $type2, $wrapper) = @_;
401
- my $caller = caller;
402
- $name = join '::', $caller, $name unless $name =~ /::/;
403
- if(defined $wrapper && ref($wrapper) eq 'CODE')
404
- {
405
- $self->attach([0 => $name] => [$type1] => $type2 => '$', $wrapper);
406
- }
407
- else
408
- {
409
- $self->attach([0 => $name] => [$type1] => $type2 => '$');
410
- }
411
- $self;
412
- }
413
-
414
-
415
- sub sizeof
416
- {
417
- my($self,$name) = @_;
418
- ref $self
419
- ? $self->{tp}->parse($name)->sizeof
420
- : $self->new->sizeof($name);
421
- }
422
-
423
-
424
- sub alignof
425
- {
426
- my($self, $name) = @_;
427
- ref $self
428
- ? $self->{tp}->parse($name)->alignof
429
- : $self->new->alignof($name);
430
- }
431
-
432
-
433
- sub kindof
434
- {
435
- my($self, $name) = @_;
436
- ref $self
437
- ? $self->{tp}->parse($name)->kindof
438
- : $self->new->kindof($name);
439
- }
440
-
441
-
442
- sub countof
443
- {
444
- my($self, $name) = @_;
445
- ref $self
446
- ? $self->{tp}->parse($name)->countof
447
- : $self->new->countof($name);
448
- }
449
-
450
-
451
- sub def
452
- {
453
- my $self = shift;
454
- my $package = shift || caller;
455
- my $type = shift;
456
- if(@_)
457
- {
458
- $self->type($type);
459
- $self->{def}->{$package}->{$type} = shift;
460
- }
461
- $self->{def}->{$package}->{$type};
462
- }
463
-
464
-
465
- sub unitof
466
- {
467
- my($self, $name) = @_;
468
- ref $self
469
- ? $self->{tp}->parse($name)->unitof
470
- : $self->new->unitof($name);
471
- }
472
-
473
-
474
- sub find_lib
475
- {
476
- my $self = shift;
477
- require FFI::CheckLib;
478
- $self->lib(FFI::CheckLib::find_lib(@_));
479
- $self;
480
- }
481
-
482
-
483
- sub find_symbol
484
- {
485
- my($self, $name) = @_;
486
-
487
- $self->{mangler} ||= $self->{mymangler};
488
-
489
- unless(defined $self->{mangler})
490
- {
491
- my $class = _lang_class($self->{lang});
492
- if($class->can('mangler'))
493
- {
494
- $self->{mangler} = $class->mangler($self->lib);
495
- }
496
- else
497
- {
498
- $self->{mangler} = sub { $_[0] };
499
- }
500
- }
501
-
502
- foreach my $path (@{ $self->{lib} })
503
- {
504
- my $handle = do { no warnings; $self->{handles}->{$path||0} } || FFI::Platypus::DL::dlopen($path, FFI::Platypus::DL::RTLD_PLATYPUS_DEFAULT());
505
- unless($handle)
506
- {
507
- warn "warning: error loading $path: ", FFI::Platypus::DL::dlerror()
508
- if $self->{api} > 0 || $ENV{FFI_PLATYPUS_DLERROR};
509
- next;
510
- }
511
- my $address = FFI::Platypus::DL::dlsym($handle, $self->{mangler}->($name));
512
- if($address)
513
- {
514
- $self->{handles}->{$path||0} = $handle;
515
- return $address;
516
- }
517
- else
518
- {
519
- FFI::Platypus::DL::dlclose($handle) unless $self->{handles}->{$path||0};
520
- }
521
- }
522
- return;
523
- }
524
-
525
-
526
- sub bundle
527
- {
528
- croak "bundle method only available with api => 1 or better" if $_[0]->{api} < 1;
529
- require FFI::Platypus::Bundle;
530
- goto &_bundle;
531
- }
532
-
533
-
534
- sub package
535
- {
536
- croak "package method only available with api => 0" if $_[0]->{api} > 0;
537
- require FFI::Platypus::Legacy;
538
- goto &_package;
539
- }
540
-
541
-
542
- sub abis
543
- {
544
- require FFI::Platypus::ShareConfig;
545
- FFI::Platypus::ShareConfig->get("abi");
546
- }
547
-
548
-
549
- sub abi
550
- {
551
- my($self, $newabi) = @_;
552
- unless($newabi =~ /^[0-9]+$/)
553
- {
554
- unless(defined $self->abis->{$newabi})
555
- {
556
- croak "no such ABI: $newabi";
557
- }
558
- $newabi = $self->abis->{$newabi};
559
- }
560
-
561
- unless(FFI::Platypus::ABI::verify($newabi))
562
- {
563
- croak "no such ABI: $newabi";
564
- }
565
-
566
- $self->{abi} = $newabi;
567
- $self->{tp}->abi($newabi);
568
-
569
- $self;
570
- }
571
-
572
- sub DESTROY
573
- {
574
- my($self) = @_;
575
- foreach my $fini (@{ $self->{fini} })
576
- {
577
- $fini->($self);
578
- }
579
- foreach my $handle (values %{ $self->{handles} })
580
- {
581
- next unless $handle;
582
- FFI::Platypus::DL::dlclose($handle);
583
- }
584
- delete $self->{handles};
585
- }
586
-
587
- 1;
588
-
589
- __END__
590
-
591
- =pod
592
-
593
- =encoding UTF-8
594
-
595
- =head1 NAME
596
-
597
- FFI::Platypus - Write Perl bindings to non-Perl libraries with FFI. No XS required.
598
-
599
- =head1 VERSION
600
-
601
- version 2.09
602
-
603
- =head1 SYNOPSIS
604
-
605
- use FFI::Platypus 2.00;
606
-
607
- # for all new code you should use api => 2
608
- my $ffi = FFI::Platypus->new(
609
- api => 2,
610
- lib => undef, # search libc
611
- );
612
-
613
- # call dynamically
614
- $ffi->function( puts => ['string'] => 'int' )->call("hello world");
615
-
616
- # attach as a xsub and call (much faster)
617
- $ffi->attach( puts => ['string'] => 'int' );
618
- puts("hello world");
619
-
620
- =head1 DESCRIPTION
621
-
622
- Platypus is a library for creating interfaces to machine code libraries
623
- written in languages like C, L<C++|FFI::Platypus::Lang::CPP>,
624
- L<Go|FFI::Platypus::Lang::Go>,
625
- L<Fortran|FFI::Platypus::Lang::Fortran>,
626
- L<Rust|FFI::Platypus::Lang::Rust>,
627
- L<Pascal|FFI::Platypus::Lang::Pascal>. Essentially anything that gets
628
- compiled into machine code. This implementation uses L<libffi|https://sourceware.org/libffi/> to
629
- accomplish this task. L<libffi|https://sourceware.org/libffi/> is battle tested by a number of other
630
- scripting and virtual machine languages, such as Python and Ruby to
631
- serve a similar role. There are a number of reasons why you might want
632
- to write an extension with Platypus instead of XS:
633
-
634
- =over 4
635
-
636
- =item FFI / Platypus does not require messing with the guts of Perl
637
-
638
- XS is less of an API and more of the guts of perl splayed out to do
639
- whatever you want. That may at times be very powerful, but it can also
640
- be a frustrating exercise in hair pulling.
641
-
642
- =item FFI / Platypus is portable
643
-
644
- Lots of languages have FFI interfaces, and it is subjectively easier to
645
- port an extension written in FFI in Perl or another language to FFI in
646
- another language or Perl. One goal of the Platypus Project is to reduce
647
- common interface specifications to a common format like JSON that could
648
- be shared between different languages.
649
-
650
- =item FFI / Platypus could be a bridge to Raku
651
-
652
- One of those "other" languages could be Raku and Raku already has an
653
- FFI interface I am told.
654
-
655
- =item FFI / Platypus can be reimplemented
656
-
657
- In a bright future with multiple implementations of Perl 5, each
658
- interpreter will have its own implementation of Platypus, allowing
659
- extensions to be written once and used on multiple platforms, in much
660
- the same way that Ruby-FFI extensions can be use in Ruby, JRuby and
661
- Rubinius.
662
-
663
- =item FFI / Platypus is pure perl (sorta)
664
-
665
- One Platypus script or module works on any platform where the libraries
666
- it uses are available. That means you can deploy your Platypus script
667
- in a shared filesystem where they may be run on different platforms. It
668
- also means that Platypus modules do not need to be installed in the
669
- platform specific Perl library path.
670
-
671
- =item FFI / Platypus is not C or C++ centric
672
-
673
- XS is implemented primarily as a bunch of C macros, which requires at
674
- least some understanding of C, the C pre-processor, and some C++ caveats
675
- (since on some platforms Perl is compiled and linked with a C++
676
- compiler). Platypus on the other hand could be used to call other
677
- compiled languages, like L<Fortran|FFI::Platypus::Lang::Fortran>,
678
- L<Go|FFI::Platypus::Lang::Go>,
679
- L<Rust|FFI::Platypus::Lang::Rust>,
680
- L<Pascal|FFI::Platypus::Lang::Pascal>, L<C++|FFI::Platypus::Lang::CPP>,
681
- or even L<assembly|FFI::Platypus::Lang::ASM>, allowing you to focus
682
- on your strengths.
683
-
684
- =item FFI / Platypus does not require a parser
685
-
686
- L<Inline> isolates the extension developer from XS to some extent, but
687
- it also requires a parser. The various L<Inline> language bindings are
688
- a great technical achievement, but I think writing a parser for every
689
- language that you want to interface with is a bit of an anti-pattern.
690
-
691
- =back
692
-
693
- This document consists of an API reference, a set of examples, some
694
- support and development (for contributors) information. If you are new
695
- to Platypus or FFI, you may want to skip down to the
696
- L<EXAMPLES|/EXAMPLES> to get a taste of what you can do with Platypus.
697
-
698
- Platypus has extensive documentation of types at L<FFI::Platypus::Type>
699
- and its custom types API at L<FFI::Platypus::API>.
700
-
701
- You are B<strongly> encouraged to use API level 2 for all new code.
702
- There are a number of improvements and design fixes that you get
703
- for free. You should even consider updating existing modules to
704
- use API level 2 where feasible. How do I do that you might ask?
705
- Simply pass in the API level to the platypus constructor.
706
-
707
- my $ffi = FFI::Platypus->new( api => 2 );
708
-
709
- The Platypus documentation has already been updated to assume API
710
- level 1.
711
-
712
- =for stopwords ØMQ
713
-
714
- =head1 CONSTRUCTORS
715
-
716
- =head2 new
717
-
718
- my $ffi = FFI::Platypus->new( api => 2, %options);
719
-
720
- Create a new instance of L<FFI::Platypus>.
721
-
722
- Any types defined with this instance will be valid for this instance
723
- only, so you do not need to worry about stepping on the toes of other
724
- CPAN FFI / Platypus Authors.
725
-
726
- Any functions found will be out of the list of libraries specified with
727
- the L<lib|/lib> attribute.
728
-
729
- =head3 options
730
-
731
- =over 4
732
-
733
- =item api
734
-
735
- [version 0.91]
736
-
737
- Sets the API level. The recommended value for all new code is C<2>.
738
- The Platypus documentation assumes API level C<2> except for a few
739
- places that specifically document older versions. You should
740
- only use a lower value for a legacy code base that cannot be migrated to
741
- a newer API level. Legal values are:
742
-
743
- =over
744
-
745
- =item C<0>
746
-
747
- Original API level. See L<FFI::Platypus::TypeParser::Version0> for details
748
- on the differences.
749
-
750
- =item C<1>
751
-
752
- Enable version 1 API type parser which allows pass-by-value records
753
- and type decoration on basic types.
754
-
755
- =item C<2>
756
-
757
- Enable version 2 API.
758
- The Platypus documentation assumes this api level is set.
759
-
760
- API version 2 is identical to version 1, except:
761
-
762
- =over 4
763
-
764
- =item Pointer functions that return C<NULL> will return C<undef> instead of empty list
765
-
766
- This fixes a long standing design bug in Platypus.
767
-
768
- =item Array references may be passed to pointer argument types
769
-
770
- This replicates the behavior of array argument types with no size. So the types C<sint8*> and C<sint8[]>
771
- behave identically when an array reference is passed in. They differ in that, as before, you can
772
- pass a scalar reference into type C<sint8*>.
773
-
774
- =item The fixed string type can be specified without pointer modifier
775
-
776
- That is you can use C<string(10)> instead of C<string(10)*> as you were previously able to
777
- in API 0.
778
-
779
- =back
780
-
781
- =back
782
-
783
- =item lib
784
-
785
- Either a pathname (string) or a list of pathnames (array ref of strings)
786
- to pre-populate the L<lib|/lib> attribute. Use C<[undef]> to search the
787
- current process for symbols.
788
-
789
- 0.48
790
-
791
- C<undef> (without the array reference) can be used to search the current
792
- process for symbols.
793
-
794
- =item ignore_not_found
795
-
796
- [version 0.15]
797
-
798
- Set the L<ignore_not_found|/ignore_not_found> attribute.
799
-
800
- =item lang
801
-
802
- [version 0.18]
803
-
804
- Set the L<lang|/lang> attribute.
805
-
806
- =back
807
-
808
- =head1 ATTRIBUTES
809
-
810
- =head2 lib
811
-
812
- $ffi->lib($path1, $path2, ...);
813
- my @paths = $ffi->lib;
814
-
815
- The list of libraries to search for symbols in.
816
-
817
- The most portable and reliable way to find dynamic libraries is by using
818
- L<FFI::CheckLib>, like this:
819
-
820
- use FFI::CheckLib 0.06;
821
- $ffi->lib(find_lib_or_die lib => 'archive');
822
- # finds libarchive.so on Linux
823
- # libarchive.bundle on OS X
824
- # libarchive.dll (or archive.dll) on Windows
825
- # cygarchive-13.dll on Cygwin
826
- # ...
827
- # and will die if it isn't found
828
-
829
- L<FFI::CheckLib> has a number of options, such as checking for specific
830
- symbols, etc. You should consult the documentation for that module.
831
-
832
- As a special case, if you add C<undef> as a "library" to be searched,
833
- Platypus will also search the current process for symbols. This is
834
- mostly useful for finding functions in the standard C library, without
835
- having to know the name of the standard c library for your platform (as
836
- it turns out it is different just about everywhere!).
837
-
838
- You may also use the L</find_lib> method as a shortcut:
839
-
840
- $ffi->find_lib( lib => 'archive' );
841
-
842
- =head2 ignore_not_found
843
-
844
- [version 0.15]
845
-
846
- $ffi->ignore_not_found(1);
847
- my $ignore_not_found = $ffi->ignore_not_found;
848
-
849
- Normally the L<attach|/attach> and L<function|/function> methods will
850
- throw an exception if it cannot find the name of the function you
851
- provide it. This will change the behavior such that
852
- L<function|/function> will return C<undef> when the function is not
853
- found and L<attach|/attach> will ignore functions that are not found.
854
- This is useful when you are writing bindings to a library and have many
855
- optional functions and you do not wish to wrap every call to
856
- L<function|/function> or L<attach|/attach> in an C<eval>.
857
-
858
- =head2 lang
859
-
860
- [version 0.18]
861
-
862
- $ffi->lang($language);
863
-
864
- Specifies the foreign language that you will be interfacing with. The
865
- default is C. The foreign language specified with this attribute
866
- changes the default native types (for example, if you specify
867
- L<Rust|FFI::Platypus::Lang::Rust>, you will get C<i32> as an alias for
868
- C<sint32> instead of C<int> as you do with L<C|FFI::Platypus::Lang::C>).
869
-
870
- If the foreign language plugin supports it, this will also enable
871
- Platypus to find symbols using the demangled names (for example, if you
872
- specify L<CPP|FFI::Platypus::Lang::CPP> for C++ you can use method names
873
- like C<Foo::get_bar()> with L</attach> or L</function>.
874
-
875
- =head2 api
876
-
877
- [version 1.11]
878
-
879
- my $level = $ffi->api;
880
-
881
- Returns the API level of the Platypus instance.
882
-
883
- =head1 METHODS
884
-
885
- =head2 type
886
-
887
- $ffi->type($typename);
888
- $ffi->type($typename => $alias);
889
-
890
- Define a type. The first argument is the native or C name of the type.
891
- The second argument (optional) is an alias name that you can use to
892
- refer to this new type. See L<FFI::Platypus::Type> for legal type
893
- definitions.
894
-
895
- Examples:
896
-
897
- $ffi->type('sint32'); # only checks to see that sint32 is a valid type
898
- $ffi->type('sint32' => 'myint'); # creates an alias myint for sint32
899
- $ffi->type('bogus'); # dies with appropriate diagnostic
900
-
901
- =head2 custom_type
902
-
903
- $ffi->custom_type($alias => {
904
- native_type => $native_type,
905
- native_to_perl => $coderef,
906
- perl_to_native => $coderef,
907
- perl_to_native_post => $coderef,
908
- });
909
-
910
- Define a custom type. See L<FFI::Platypus::Type#Custom-Types> for details.
911
-
912
- =head2 load_custom_type
913
-
914
- $ffi->load_custom_type($name => $alias, @type_args);
915
-
916
- Load the custom type defined in the module I<$name>, and make an alias
917
- I<$alias>. If the custom type requires any arguments, they may be passed
918
- in as I<@type_args>. See L<FFI::Platypus::Type#Custom-Types> for
919
- details.
920
-
921
- If I<$name> contains C<::> then it will be assumed to be a fully
922
- qualified package name. If not, then C<FFI::Platypus::Type::> will be
923
- prepended to it.
924
-
925
- =head2 types
926
-
927
- my @types = $ffi->types;
928
- my @types = FFI::Platypus->types;
929
-
930
- Returns the list of types that FFI knows about. This will include the
931
- native C<libffi> types (example: C<sint32>, C<opaque> and C<double>) and
932
- the normal C types (example: C<unsigned int>, C<uint32_t>), any types
933
- that you have defined using the L<type|/type> method, and custom types.
934
-
935
- The list of types that Platypus knows about varies somewhat from
936
- platform to platform, L<FFI::Platypus::Type> includes a list of the core
937
- types that you can always count on having access to.
938
-
939
- It can also be called as a class method, in which case, no user defined
940
- or custom types will be included in the list.
941
-
942
- =head2 type_meta
943
-
944
- my $meta = $ffi->type_meta($type_name);
945
- my $meta = FFI::Platypus->type_meta($type_name);
946
-
947
- Returns a hash reference with the meta information for the given type.
948
-
949
- It can also be called as a class method, in which case, you won't be
950
- able to get meta data on user defined types.
951
-
952
- The format of the meta data is implementation dependent and subject to
953
- change. It may be useful for display or debugging.
954
-
955
- Examples:
956
-
957
- my $meta = $ffi->type_meta('int'); # standard int type
958
- my $meta = $ffi->type_meta('int[64]'); # array of 64 ints
959
- $ffi->type('int[128]' => 'myintarray');
960
- my $meta = $ffi->type_meta('myintarray'); # array of 128 ints
961
-
962
- =head2 mangler
963
-
964
- $ffi->mangler(\&mangler);
965
-
966
- Specify a customer mangler to be used for symbol lookup. This is usually useful
967
- when you are writing bindings for a library where all of the functions have the
968
- same prefix. Example:
969
-
970
- $ffi->mangler(sub {
971
- my($symbol) = @_;
972
- return "foo_$symbol";
973
- });
974
-
975
- $ffi->function( get_bar => [] => 'int' ); # attaches foo_get_bar
976
-
977
- my $f = $ffi->function( set_baz => ['int'] => 'void' );
978
- $f->call(22); # calls foo_set_baz
979
-
980
- =head2 function
981
-
982
- my $function = $ffi->function($name => \@argument_types => $return_type);
983
- my $function = $ffi->function($address => \@argument_types => $return_type);
984
- my $function = $ffi->function($name => \@argument_types => $return_type, \&wrapper);
985
- my $function = $ffi->function($address => \@argument_types => $return_type, \&wrapper);
986
-
987
- Returns an object that is similar to a code reference in that it can be
988
- called like one.
989
-
990
- Caveat: many situations require a real code reference, so at the price
991
- of a performance penalty you can get one like this:
992
-
993
- my $function = $ffi->function(...);
994
- my $coderef = sub { $function->(@_) };
995
-
996
- It may be better, and faster to create a real Perl function using the
997
- L<attach|/attach> method.
998
-
999
- In addition to looking up a function by name you can provide the address
1000
- of the symbol yourself:
1001
-
1002
- my $address = $ffi->find_symbol('my_function');
1003
- my $function = $ffi->function($address => ...);
1004
-
1005
- Under the covers, L<function|/function> uses L<find_symbol|/find_symbol>
1006
- when you provide it with a name, but it is useful to keep this in mind
1007
- as there are alternative ways of obtaining a functions address.
1008
- Example: a C function could return the address of another C function
1009
- that you might want to call.
1010
-
1011
- [version 0.76]
1012
-
1013
- If the last argument is a code reference, then it will be used as a
1014
- wrapper around the function when called. The first argument to the wrapper
1015
- will be the inner function, or if it is later attached an xsub. This can be
1016
- used if you need to verify/modify input/output data.
1017
-
1018
- Examples:
1019
-
1020
- my $function = $ffi->function('my_function_name', ['int', 'string'] => 'string');
1021
- my $return_string = $function->(1, "hi there");
1022
-
1023
- [version 0.91]
1024
-
1025
- my $function = $ffi->function( $name => \@fixed_argument_types => \@var_argument_types => $return_type);
1026
- my $function = $ffi->function( $name => \@fixed_argument_types => \@var_argument_types => $return_type, \&wrapper);
1027
- my $function = $ffi->function( $name => \@fixed_argument_types => \@var_argument_types);
1028
- my $function = $ffi->function( $name => \@fixed_argument_types => \@var_argument_types => \&wrapper);
1029
-
1030
- Version 0.91 and later allows you to creat functions for c variadic functions
1031
- (such as printf, scanf, etc) which can take a variable number of arguments.
1032
- The first set of arguments are the fixed set, the second set are the variable
1033
- arguments to bind with. The variable argument types must be specified in order
1034
- to create a function object, so if you need to call variadic function with
1035
- different set of arguments then you will need to create a new function object
1036
- each time:
1037
-
1038
- # int printf(const char *fmt, ...);
1039
- $ffi->function( printf => ['string'] => ['int'] => 'int' )
1040
- ->call("print integer %d\n", 42);
1041
- $ffi->function( printf => ['string'] => ['string'] => 'int' )
1042
- ->call("print string %s\n", 'platypus');
1043
-
1044
- Some older versions of libffi and possibly some platforms may not support
1045
- variadic functions. If you try to create a one, then an exception will be
1046
- thrown.
1047
-
1048
- [version 1.26]
1049
-
1050
- If the return type is omitted then C<void> will be the assumed return type.
1051
-
1052
- =head2 attach
1053
-
1054
- $ffi->attach($name => \@argument_types => $return_type);
1055
- $ffi->attach([$c_name => $perl_name] => \@argument_types => $return_type);
1056
- $ffi->attach([$address => $perl_name] => \@argument_types => $return_type);
1057
- $ffi->attach($name => \@argument_types => $return_type, \&wrapper);
1058
- $ffi->attach([$c_name => $perl_name] => \@argument_types => $return_type, \&wrapper);
1059
- $ffi->attach([$address => $perl_name] => \@argument_types => $return_type, \&wrapper);
1060
-
1061
- Find and attach a C function as a real live Perl xsub. The advantage of
1062
- attaching a function over using the L<function|/function> method is that
1063
- it is much much much faster since no object resolution needs to be done.
1064
- The disadvantage is that it locks the function and the L<FFI::Platypus>
1065
- instance into memory permanently, since there is no way to deallocate an
1066
- xsub.
1067
-
1068
- If just one I<$name> is given, then the function will be attached in
1069
- Perl with the same name as it has in C. The second form allows you to
1070
- give the Perl function a different name. You can also provide an
1071
- address (the third form), just like with the L<function|/function>
1072
- method.
1073
-
1074
- Examples:
1075
-
1076
- $ffi->attach('my_function_name', ['int', 'string'] => 'string');
1077
- $ffi->attach(['my_c_function_name' => 'my_perl_function_name'], ['int', 'string'] => 'string');
1078
- my $string1 = my_function_name($int);
1079
- my $string2 = my_perl_function_name($int);
1080
-
1081
- [version 0.20]
1082
-
1083
- If the last argument is a code reference, then it will be used as a
1084
- wrapper around the attached xsub. The first argument to the wrapper
1085
- will be the inner xsub. This can be used if you need to verify/modify
1086
- input/output data.
1087
-
1088
- Examples:
1089
-
1090
- $ffi->attach('my_function', ['int', 'string'] => 'string', sub {
1091
- my($my_function_xsub, $integer, $string) = @_;
1092
- $integer++;
1093
- $string .= " and another thing";
1094
- my $return_string = $my_function_xsub->($integer, $string);
1095
- $return_string =~ s/Belgium//; # HHGG remove profanity
1096
- $return_string;
1097
- });
1098
-
1099
- [version 0.91]
1100
-
1101
- $ffi->attach($name => \@fixed_argument_types => \@var_argument_types, $return_type);
1102
- $ffi->attach($name => \@fixed_argument_types => \@var_argument_types, $return_type, \&wrapper);
1103
-
1104
- As of version 0.91 you can attach a variadic functions, if it is supported
1105
- by the platform / libffi that you are using. For details see the C<function>
1106
- documentation. If not supported by the implementation then an exception
1107
- will be thrown.
1108
-
1109
- =head2 closure
1110
-
1111
- my $closure = $ffi->closure($coderef);
1112
- my $closure = FFI::Platypus->closure($coderef);
1113
-
1114
- Prepares a code reference so that it can be used as a FFI closure (a
1115
- Perl subroutine that can be called from C code). For details on
1116
- closures, see L<FFI::Platypus::Type#Closures> and L<FFI::Platypus::Closure>.
1117
-
1118
- =head2 cast
1119
-
1120
- my $converted_value = $ffi->cast($original_type, $converted_type, $original_value);
1121
-
1122
- The C<cast> function converts an existing I<$original_value> of type
1123
- I<$original_type> into one of type I<$converted_type>. Not all types
1124
- are supported, so care must be taken. For example, to get the address
1125
- of a string, you can do this:
1126
-
1127
- my $address = $ffi->cast('string' => 'opaque', $string_value);
1128
-
1129
- Something that won't work is trying to cast an array to anything:
1130
-
1131
- my $address = $ffi->cast('int[10]' => 'opaque', \@list); # WRONG
1132
-
1133
- =head2 attach_cast
1134
-
1135
- $ffi->attach_cast("cast_name", $original_type, $converted_type);
1136
- $ffi->attach_cast("cast_name", $original_type, $converted_type, \&wrapper);
1137
- my $converted_value = cast_name($original_value);
1138
-
1139
- This function attaches a cast as a permanent xsub. This will make it
1140
- faster and may be useful if you are calling a particular cast a lot.
1141
-
1142
- [version 1.26]
1143
-
1144
- A wrapper may be added as the last argument to C<attach_cast> and works
1145
- just like the wrapper for C<attach> and C<function> methods.
1146
-
1147
- =head2 sizeof
1148
-
1149
- my $size = $ffi->sizeof($type);
1150
- my $size = FFI::Platypus->sizeof($type);
1151
-
1152
- Returns the total size of the given type in bytes. For example to get
1153
- the size of an integer:
1154
-
1155
- my $intsize = $ffi->sizeof('int'); # usually 4
1156
- my $longsize = $ffi->sizeof('long'); # usually 4 or 8 depending on platform
1157
-
1158
- You can also get the size of arrays
1159
-
1160
- my $intarraysize = $ffi->sizeof('int[64]'); # usually 4*64
1161
- my $intarraysize = $ffi->sizeof('long[64]'); # usually 4*64 or 8*64
1162
- # depending on platform
1163
-
1164
- Keep in mind that "pointer" types will always be the pointer / word size
1165
- for the platform that you are using. This includes strings, opaque and
1166
- pointers to other types.
1167
-
1168
- This function is not very fast, so you might want to save this value as
1169
- a constant, particularly if you need the size in a loop with many
1170
- iterations.
1171
-
1172
- =head2 alignof
1173
-
1174
- [version 0.21]
1175
-
1176
- my $align = $ffi->alignof($type);
1177
-
1178
- Returns the alignment of the given type in bytes.
1179
-
1180
- =head2 kindof
1181
-
1182
- [version 1.24]
1183
-
1184
- my $kind = $ffi->kindof($type);
1185
-
1186
- Returns the kind of a type. This is a string with a value of one of
1187
-
1188
- =over 4
1189
-
1190
- =item C<void>
1191
-
1192
- =item C<scalar>
1193
-
1194
- =item C<string>
1195
-
1196
- =item C<closure>
1197
-
1198
- =item C<record>
1199
-
1200
- =item C<record-value>
1201
-
1202
- =item C<pointer>
1203
-
1204
- =item C<array>
1205
-
1206
- =item C<object>
1207
-
1208
- =back
1209
-
1210
- =head2 countof
1211
-
1212
- [version 1.24]
1213
-
1214
- my $count = $ffi->countof($type);
1215
-
1216
- For array types returns the number of elements in the array (returns 0 for variable length array).
1217
- For the C<void> type returns 0. Returns 1 for all other types.
1218
-
1219
- =head2 def
1220
-
1221
- [version 1.24]
1222
-
1223
- $ffi->def($package, $type, $value);
1224
- my $value = $ff->def($package, $type);
1225
-
1226
- This method allows you to store data for types. If the C<$package> is not provided, then the
1227
- caller's package will be used. C<$type> must be a legal Platypus type for the L<FFI::Platypus>
1228
- instance.
1229
-
1230
- =head2 unitof
1231
-
1232
- [version 1.24]
1233
-
1234
- my $unittype = $ffi->unitof($type);
1235
-
1236
- For array and pointer types, returns the basic type without the array or pointer part.
1237
- In other words, for C<sin16[]> or C<sint16*> it will return C<sint16>.
1238
-
1239
- =head2 find_lib
1240
-
1241
- [version 0.20]
1242
-
1243
- $ffi->find_lib( lib => $libname );
1244
-
1245
- This is just a shortcut for calling L<FFI::CheckLib#find_lib> and
1246
- updating the L</lib> attribute appropriately. Care should be taken
1247
- though, as this method simply passes its arguments to
1248
- L<FFI::CheckLib#find_lib>, so if your module or script is depending on a
1249
- specific feature in L<FFI::CheckLib> then make sure that you update your
1250
- prerequisites appropriately.
1251
-
1252
- =head2 find_symbol
1253
-
1254
- my $address = $ffi->find_symbol($name);
1255
-
1256
- Return the address of the given symbol (usually function).
1257
-
1258
- =head2 bundle
1259
-
1260
- [version 0.96 api = 1+]
1261
-
1262
- $ffi->bundle($package, \@args);
1263
- $ffi->bundle(\@args);
1264
- $ffi->bundle($package);
1265
- $ffi->bundle;
1266
-
1267
- This is an interface for bundling compiled code with your
1268
- distribution intended to eventually replace the C<package> method documented
1269
- above. See L<FFI::Platypus::Bundle> for details on how this works.
1270
-
1271
- =head2 package
1272
-
1273
- [version 0.15 api = 0]
1274
-
1275
- $ffi->package($package, $file); # usually __PACKAGE__ and __FILE__ can be used
1276
- $ffi->package; # autodetect
1277
-
1278
- B<Note>: This method is officially discouraged in favor of C<bundle>
1279
- described above.
1280
-
1281
- If you use L<FFI::Build> (or the older deprecated L<Module::Build::FFI>
1282
- to bundle C code with your distribution, you can use this method to tell
1283
- the L<FFI::Platypus> instance to look for symbols that came with the
1284
- dynamic library that was built when your distribution was installed.
1285
-
1286
- =head2 abis
1287
-
1288
- my $href = $ffi->abis;
1289
- my $href = FFI::Platypus->abis;
1290
-
1291
- Get the legal ABIs supported by your platform and underlying
1292
- implementation. What is supported can vary a lot by CPU and by
1293
- platform, or even between 32 and 64 bit on the same CPU and platform.
1294
- They keys are the "ABI" names, also known as "calling conventions". The
1295
- values are integers used internally by the implementation to represent
1296
- those ABIs.
1297
-
1298
- =head2 abi
1299
-
1300
- $ffi->abi($name);
1301
-
1302
- Set the ABI or calling convention for use in subsequent calls to
1303
- L</function> or L</attach>. May be either a string name or integer
1304
- value from the L</abis> method above.
1305
-
1306
- =head1 EXAMPLES
1307
-
1308
- Here are some examples. These examples are provided in full with the
1309
- Platypus distribution in the "examples" directory. There are also some
1310
- more examples in L<FFI::Platypus::Type> that are related to types.
1311
-
1312
- =head2 Passing and Returning Integers
1313
-
1314
- =head3 C Source
1315
-
1316
- int add(int a, int b) {
1317
- return a+b;
1318
- }
1319
-
1320
- =head3 Perl Source
1321
-
1322
- use FFI::Platypus 2.00;
1323
- use FFI::CheckLib qw( find_lib_or_die );
1324
- use File::Basename qw( dirname );
1325
-
1326
- my $ffi = FFI::Platypus->new( api => 2, lib => './add.so' );
1327
- $ffi->attach( add => ['int', 'int'] => 'int' );
1328
-
1329
- print add(1,2), "\n"; # prints 3
1330
-
1331
- =head3 Execute
1332
-
1333
- $ cc -shared -o add.so add.c
1334
- $ perl add.pl
1335
- 3
1336
-
1337
- =head3 Discussion
1338
-
1339
- Basic types like integers and floating points are the easiest to pass
1340
- across the FFI boundary. Because they are values that are passed on
1341
- the stack (or through registers) you don't need to worry about memory
1342
- allocations or ownership.
1343
-
1344
- Here we are building our own C dynamic library using the native C
1345
- compiler on a Unix like platform. The exact incantation that you
1346
- will use to do this would unfortunately depend on your platform and
1347
- C compiler.
1348
-
1349
- By default, Platypus uses the
1350
- L<Platypus C language plugin|FFI::Platypus::Lang::C>, which gives you
1351
- easy access to many of the basic types used by C APIs. (for example
1352
- C<int>, C<unsigned long>, C<double>, C<size_t> and others).
1353
-
1354
- If you are working with another language like
1355
- L<Fortran|FFI::Platypus::Lang::Fortran/"Passing and Returning Integers">,
1356
- L<Go|FFI::Platypus::Lang::Go/"Passing and Returning Integers">,
1357
- L<Rust|FFI::Platypus::Lang::Rust/"Passing and Returning Integers"> or
1358
- L<Zig|FFI::Platypus::Lang::Zig/"Passing and Returning Integers">,
1359
- you will find similar examples where you can use the Platypus language
1360
- plugin for that language and use the native types.
1361
-
1362
- =head2 String Arguments (with puts)
1363
-
1364
- =head3 C API
1365
-
1366
- L<cppreference - puts|https://en.cppreference.com/w/c/io/puts>
1367
-
1368
- =head3 Perl Source
1369
-
1370
- use FFI::Platypus 2.00;
1371
-
1372
- my $ffi = FFI::Platypus->new( api => 2, lib => undef );
1373
- $ffi->attach( puts => ['string'] => 'int' );
1374
-
1375
- puts("hello world");
1376
-
1377
- =head3 Execute
1378
-
1379
- $ perl puts.pl
1380
- hello world
1381
-
1382
- =head3 Discussion
1383
-
1384
- Passing strings into a C function as an argument is also pretty easy
1385
- using Platypus. Just use the C<string> type, which is equivalent to
1386
- the C <char *> or C<const char *> types.
1387
-
1388
- In this example we are using the C Standard Library's C<puts> function,
1389
- so we don't need to build our own C code. We do still need to tell
1390
- Platypus where to look for the C<puts> symbol though, which is why
1391
- we set C<lib> to C<undef>. This is a special value which tells
1392
- Platypus to search the Perl runtime executable itself (including any
1393
- dynamic libraries) for symbols. That helpfully includes the C Standard
1394
- Library.
1395
-
1396
- =head2 Returning Strings
1397
-
1398
- =head3 C Source
1399
-
1400
- #include <string.h>
1401
- #include <stdlib.h>
1402
-
1403
- const char *
1404
- string_reverse(const char *input)
1405
- {
1406
- static char *output = NULL;
1407
- int i, len;
1408
-
1409
- if(output != NULL)
1410
- free(output);
1411
-
1412
- if(input == NULL)
1413
- return NULL;
1414
-
1415
- len = strlen(input);
1416
- output = malloc(len+1);
1417
-
1418
- for(i=0; input[i]; i++)
1419
- output[len-i-1] = input[i];
1420
- output[len] = '\0';
1421
-
1422
- return output;
1423
- }
1424
-
1425
- =head3 Perl Source
1426
-
1427
- use FFI::Platypus 2.00;
1428
-
1429
- my $ffi = FFI::Platypus->new(
1430
- api => 2,
1431
- lib => './string_reverse.so',
1432
- );
1433
-
1434
- $ffi->attach( string_reverse => ['string'] => 'string' );
1435
-
1436
- print string_reverse("\nHello world");
1437
-
1438
- string_reverse(undef);
1439
-
1440
- =head3 Execute
1441
-
1442
- $ cc -shared -o string_reverse.so string_reverse.c
1443
- $ perl string_reverse.pl
1444
- dlrow olleH
1445
-
1446
- =head3 Discussion
1447
-
1448
- The C code here takes an input ASCII string and reverses it, returning
1449
- the result. Note that it retains ownership of the string, the caller
1450
- is expected to use it before the next call to C<reverse_string>, or
1451
- copy it.
1452
-
1453
- The Perl code simply declares the return value as C<string> and is very
1454
- simple. This does bring up an inconsistency though, strings passed in
1455
- to a function as arguments are passed by reference, whereas the return
1456
- value is copied! This is usually what you want because C APIs usually
1457
- follow this pattern where you are expected to make your own copy of
1458
- the string.
1459
-
1460
- At the end of the program we call C<reverse_string> with C<undef>, which
1461
- gets translated to C as C<NULL>. This allows it to free the output buffer
1462
- so that the memory will not leak.
1463
-
1464
- =head2 Returning and Freeing Strings with Embedded NULLs
1465
-
1466
- =head3 C Source
1467
-
1468
- #include <string.h>
1469
- #include <stdlib.h>
1470
-
1471
- char *
1472
- string_crypt(const char *input, int len, const char *key)
1473
- {
1474
- char *output;
1475
- int i, n;
1476
-
1477
- if(input == NULL)
1478
- return NULL;
1479
-
1480
- output = malloc(len+1);
1481
- output[len] = '\0';
1482
-
1483
- for(i=0, n=0; i<len; i++, n++) {
1484
- if(key[n] == '\0')
1485
- n = 0;
1486
- output[i] = input[i] ^ key[n];
1487
- }
1488
-
1489
- return output;
1490
- }
1491
-
1492
- void
1493
- string_crypt_free(char *output)
1494
- {
1495
- if(output != NULL)
1496
- free(output);
1497
- }
1498
-
1499
- =head3 Perl Source
1500
-
1501
- use FFI::Platypus 2.00;
1502
- use FFI::Platypus::Buffer qw( buffer_to_scalar );
1503
- use YAML ();
1504
-
1505
- my $ffi = FFI::Platypus->new(
1506
- api => 2,
1507
- lib => './xor_cipher.so',
1508
- );
1509
-
1510
- $ffi->attach( string_crypt_free => ['opaque'] );
1511
-
1512
- $ffi->attach( string_crypt => ['string','int','string'] => 'opaque' => sub{
1513
- my($xsub, $input, $key) = @_;
1514
- my $ptr = $xsub->($input, length($input), $key);
1515
- my $output = buffer_to_scalar $ptr, length($input);
1516
- string_crypt_free($ptr);
1517
- return $output;
1518
- });
1519
-
1520
- my $orig = "hello world";
1521
- my $key = "foobar";
1522
-
1523
- print YAML::Dump($orig);
1524
- my $encrypted = string_crypt($orig, $key);
1525
- print YAML::Dump($encrypted);
1526
- my $decrypted = string_crypt($encrypted, $key);
1527
- print YAML::Dump($decrypted);
1528
-
1529
- =head3 Execute
1530
-
1531
- $ cc -shared -o xor_cipher.so xor_cipher.c
1532
- $ perl xor_cipher.pl
1533
- --- hello world
1534
- --- "\x0e\n\x03\x0e\x0eR\x11\0\x1d\x0e\x05"
1535
- --- hello world
1536
-
1537
- =head3 Discussion
1538
-
1539
- The C code here also returns a string, but it has some different expectations,
1540
- so we can't just use the C<string> type like we did in the previous example
1541
- and copy the string.
1542
-
1543
- This C code implements a simple XOR cipher. Given an input string and a key
1544
- it returns an encrypted or decrypted output string where the characters are
1545
- XORd with the key. There are some challenges here though. First the input
1546
- and output strings can have embedded C<NULL>s in them. For the string passed
1547
- in, we can provide the length of the input string. For the output, the
1548
- C<string> type expects a C<NULL> terminated string, so we can't use that. So
1549
- instead we get a pointer to the output using the C<opaque> type. Because we
1550
- know that the output string is the same length as the input string we can
1551
- convert the pointer to a regular Perl string using the C<buffer_to_scalar>
1552
- function. (For more details about working with buffers and strings see
1553
- L<FFI::Platypus::Buffer>).
1554
-
1555
- Next, the C code here does not keep the pointer to the output string, as in
1556
- the previous example. We are expected to call C<string_encrypt_free> when
1557
- we are done. Since we are getting the pointer back from the C code instead
1558
- of copying the string that is easy to do.
1559
-
1560
- Finally, we are using a wrapper to hide a lot of this complexity from our
1561
- caller. The last argument to the C<attach> call is a code reference which will
1562
- wrap around the C function, which is passed in as the first argument of
1563
- the wrapper. This is a good practice when writing modules, to hide the
1564
- complexity of C.
1565
-
1566
- =head2 Pointers
1567
-
1568
- =head3 C Source
1569
-
1570
- void
1571
- swap(int *a, int *b)
1572
- {
1573
- int tmp = *b;
1574
- *b = *a;
1575
- *a = tmp;
1576
- }
1577
-
1578
- =head3 Perl Source
1579
-
1580
- use FFI::Platypus 2.00;
1581
-
1582
- my $ffi = FFI::Platypus->new(
1583
- api => 2,
1584
- lib => './swap.so',
1585
- );
1586
-
1587
- $ffi->attach( swap => ['int*','int*'] );
1588
-
1589
- my $a = 1;
1590
- my $b = 2;
1591
-
1592
- print "[a,b] = [$a,$b]\n";
1593
-
1594
- swap( \$a, \$b );
1595
-
1596
- print "[a,b] = [$a,$b]\n";
1597
-
1598
- =head3 Execute
1599
-
1600
- $ cc -shared -o swap.so swap.c
1601
- $ perl swap.pl
1602
- [a,b] = [1,2]
1603
- [a,b] = [2,1]
1604
-
1605
- =head3 Discussion
1606
-
1607
- Pointers are often use in C APIs to return simple values like this. Platypus
1608
- provides access to pointers to primitive types by appending C<*> to the
1609
- primitive type. Here for example we are using C<int*> to create a function
1610
- that takes two pointers to integers and swaps their values.
1611
-
1612
- When calling the function from Perl we pass in a reference to a scalar.
1613
- Strictly speaking Perl allows modifying the argument values to subroutines, so
1614
- we could have allowed just passing in a scalar, but in the design of Platypus
1615
- we decided that forcing the use of a reference here emphasizes that you are
1616
- passing a reference to the variable, not just the value.
1617
-
1618
- Not pictured in this example, but you can also pass in C<undef> for a pointer
1619
- value and that will be translated into C<NULL> on the C side. You can also
1620
- return a pointer to a primitive type from a function, again this will be
1621
- returned to Perl as a reference to a scalar. Platypus also supports string
1622
- pointers (C<string*>). (Though the C equivalent to a C<string*> is a double
1623
- pointer to char C<char**>).
1624
-
1625
- =head2 Opaque Pointers (objects)
1626
-
1627
- =head3 C Source
1628
-
1629
- #include <string.h>
1630
- #include <stdlib.h>
1631
-
1632
- typedef struct person_t {
1633
- char *name;
1634
- unsigned int age;
1635
- } person_t;
1636
-
1637
- person_t *
1638
- person_new(const char *name, unsigned int age) {
1639
- person_t *self = malloc(sizeof(person_t));
1640
- self->name = strdup(name);
1641
- self->age = age;
1642
- }
1643
-
1644
- const char *
1645
- person_name(person_t *self) {
1646
- return self->name;
1647
- }
1648
-
1649
- unsigned int
1650
- person_age(person_t *self) {
1651
- return self->age;
1652
- }
1653
-
1654
- void
1655
- person_free(person_t *self) {
1656
- free(self->name);
1657
- free(self);
1658
- }
1659
-
1660
- =head3 Perl Source
1661
-
1662
- use FFI::Platypus 2.00;
1663
-
1664
- my $ffi = FFI::Platypus->new(
1665
- api => 2,
1666
- lib => './person.so',
1667
- );
1668
-
1669
- $ffi->type( 'opaque' => 'person_t' );
1670
-
1671
- $ffi->attach( person_new => ['string','unsigned int'] => 'person_t' );
1672
- $ffi->attach( person_name => ['person_t'] => 'string' );
1673
- $ffi->attach( person_age => ['person_t'] => 'unsigned int' );
1674
- $ffi->attach( person_free => ['person_t'] );
1675
-
1676
- my $person = person_new( 'Roger Frooble Bits', 35 );
1677
-
1678
- print "name = ", person_name($person), "\n";
1679
- print "age = ", person_age($person), "\n";
1680
-
1681
- person_free($person);
1682
-
1683
- =head3 Execute
1684
-
1685
- $ cc -shared -o person.so person.c
1686
- $ perl person.pl
1687
- name = Roger Frooble Bits
1688
- age = 35
1689
-
1690
- =head3 Discussion
1691
-
1692
- An opaque pointer is a pointer (memory address) that is pointing to I<something>
1693
- but you do not know the structure of that something. In C this is usually a
1694
- C<void*>, but it could also be a pointer to a C<struct> without a defined body.
1695
-
1696
- This is often used to as an abstraction around objects in C. Here in the C
1697
- code we have a C<person_t> struct with functions to create (a constructor), free
1698
- (a destructor) and query it (methods).
1699
-
1700
- The Perl code can then use the constructor, methods and destructors without having
1701
- to understand the internals. The C<person_t> internals can also be changed
1702
- without having to modify the calling code.
1703
-
1704
- We use the Platypus L<type method|/type> to create an alias of C<opaque> called
1705
- C<person_t>. While this is not necessary, it does make the Perl code easier
1706
- to understand.
1707
-
1708
- In later examples we will see how to hide the use of C<opaque> types further
1709
- using the C<object> type, but for some code direct use of C<opaque> is
1710
- appropriate.
1711
-
1712
- =head2 Opaque Pointers (buffers and strings)
1713
-
1714
- =head3 C API
1715
-
1716
- =over 4
1717
-
1718
- =item L<cppreference - free|https://en.cppreference.com/w/c/memory/free>
1719
-
1720
- =item L<cppreference - malloc|https://en.cppreference.com/w/c/memory/malloc>
1721
-
1722
- =item L<cppreference - memcpy|https://en.cppreference.com/w/c/string/byte/memcpy>
1723
-
1724
- =item L<cppreference - strdup|https://en.cppreference.com/w/c/string/byte/strdup>
1725
-
1726
- =back
1727
-
1728
- =head3 Perl Source
1729
-
1730
- use FFI::Platypus 2.00;
1731
- use FFI::Platypus::Memory qw( malloc free memcpy strdup );
1732
-
1733
- my $ffi = FFI::Platypus->new( api => 2 );
1734
- my $buffer = malloc 14;
1735
- my $ptr_string = strdup("hello there!!\n");
1736
-
1737
- memcpy $buffer, $ptr_string, 15;
1738
-
1739
- print $ffi->cast('opaque' => 'string', $buffer);
1740
-
1741
- free $ptr_string;
1742
- free $buffer;
1743
-
1744
- =head3 Execute
1745
-
1746
- $ perl malloc.pl
1747
- hello there!!
1748
-
1749
- =head3 Discussion
1750
-
1751
- Another useful application of the C<opaque> type is for dealing with buffers,
1752
- and C strings that you do not immediately need to convert into Perl strings.
1753
- This example is completely contrived, but we are using C<malloc> to create a
1754
- buffer of 14 bytes. We create a C string using C<strdup>, and then copy it
1755
- into the buffer using C<memcpy>. When we are done with the C<opaque> pointers
1756
- we can free them using C<free> since they. (This is generally only okay when
1757
- freeing memory that was allocated by C<malloc>, which is the case for C<strdup>).
1758
-
1759
- These memory tools, along with others are provided by the L<FFI::Platypus::Memory>
1760
- module, which is worth reviewing when you need to manipulate memory from
1761
- Perl when writing your FFI code.
1762
-
1763
- Just to verify that the C<memcpy> did the right thing we convert the
1764
- buffer into a Perl string and print it out using the Platypus L<cast method|/cast>.
1765
-
1766
- =head2 Arrays
1767
-
1768
- =head3 C Source
1769
-
1770
- void
1771
- array_reverse(int a[], int len) {
1772
- int tmp, i;
1773
-
1774
- for(i=0; i < len/2; i++) {
1775
- tmp = a[i];
1776
- a[i] = a[len-i-1];
1777
- a[len-i-1] = tmp;
1778
- }
1779
- }
1780
-
1781
- void
1782
- array_reverse10(int a[10]) {
1783
- array_reverse(a, 10);
1784
- }
1785
-
1786
- =head3 Perl Source
1787
-
1788
- use FFI::Platypus 2.00;
1789
-
1790
- my $ffi = FFI::Platypus->new(
1791
- api => 2,
1792
- lib => './array_reverse.so',
1793
- );
1794
-
1795
- $ffi->attach( array_reverse => ['int[]','int'] );
1796
- $ffi->attach( array_reverse10 => ['int[10]'] );
1797
-
1798
- my @a = (1..10);
1799
- array_reverse10( \@a );
1800
- print "$_ " for @a;
1801
- print "\n";
1802
-
1803
- @a = (1..20);
1804
- array_reverse( \@a, 20 );
1805
- print "$_ " for @a;
1806
- print "\n";
1807
-
1808
- =head3 Execute
1809
-
1810
- $ cc -shared -o array_reverse.so array_reverse.c
1811
- $ perl array_reverse.pl
1812
- 10 9 8 7 6 5 4 3 2 1
1813
- 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
1814
-
1815
- =head3 Discussion
1816
-
1817
- Arrays in C are passed as pointers, so the C code here reverses the array
1818
- in place, rather than returning it. Arrays can also be fixed or variable
1819
- length. If the array is variable length the length of the array must be
1820
- provided in some way. In this case we explicitly pass in a length. Another
1821
- way might be to end the array with C<0>, if you don't otherwise expect any
1822
- C<0> to appear in your data. For this reason, Platypus adds a zero (or
1823
- C<NULL> in the case of pointers) element at the end of the array when passing
1824
- it into a variable length array type, although we do not use it here.
1825
-
1826
- With Platypus you can declare an array type as being either fixed or variable
1827
- length. Because Perl stores arrays in completely differently than C, a
1828
- temporary array is created by Platypus, passed into the C function as a pointer.
1829
- When the function returns the array is re-read by Platypus and the Perl array
1830
- is updated with the new values. The temporary array is then freed.
1831
-
1832
- You can use any primitive type for arrays, even C<string>. You can also
1833
- return an array from a function. As in our discussion about strings, when
1834
- you return an array the value is copied, which is usually what you want.
1835
-
1836
- =head2 Pointers as Arrays
1837
-
1838
- =head3 C Source
1839
-
1840
- #include <stdlib.h>
1841
-
1842
- int
1843
- array_sum(const int *a) {
1844
- int i, sum;
1845
- if(a == NULL)
1846
- return -1;
1847
- for(i=0, sum=0; a[i] != 0; i++)
1848
- sum += a[i];
1849
- return sum;
1850
- }
1851
-
1852
- =head3 Perl Source
1853
-
1854
- use FFI::Platypus 2.00;
1855
-
1856
- my $ffi = FFI::Platypus->new(
1857
- api => 2,
1858
- lib => './array_sum.so',
1859
- );
1860
-
1861
- $ffi->attach( array_sum => ['int*'] => 'int' );
1862
-
1863
- print array_sum(undef), "\n"; # -1
1864
- print array_sum([0]), "\n"; # 0
1865
- print array_sum([1,2,3,0]), "\n"; # 6
1866
-
1867
- =head3 Execute
1868
-
1869
- $ cc -shared -o array_sum.so array_sum.c
1870
- $ perl array_sum.pl
1871
- -1
1872
- 0
1873
- 6
1874
-
1875
- =head3 Discussion
1876
-
1877
- Starting with the Platypus version 2 API, you can also pass an array reference
1878
- in to a pointer argument.
1879
-
1880
- In C pointer and array arguments are often used somewhat interchangeably. In
1881
- this example we have an C<array_sum> function that takes a zero terminated
1882
- array of integers and computes the sum. If the pointer to the array is zero
1883
- (C<0>) then we return C<-1> to indicate an error.
1884
-
1885
- This is the main advantage from Perl for using pointer argument rather than
1886
- an array one: the array argument will not let you pass in C<undef> / C<NULL>.
1887
-
1888
- =head2 Sending Strings to GUI on Unix with libnotify
1889
-
1890
- =head3 C API
1891
-
1892
- L<Libnotify Reference Manual|https://developer-old.gnome.org/libnotify/unstable>
1893
-
1894
- =head3 Perl Source
1895
-
1896
- use FFI::CheckLib;
1897
- use FFI::Platypus 2.00;
1898
-
1899
- my $ffi = FFI::Platypus->new(
1900
- api => 2,
1901
- lib => find_lib_or_die(lib => 'notify'),
1902
- );
1903
-
1904
- $ffi->attach( notify_init => ['string'] );
1905
- $ffi->attach( notify_uninit => [] );
1906
- $ffi->attach( notify_notification_new => ['string', 'string', 'string'] => 'opaque' );
1907
- $ffi->attach( notify_notification_show => ['opaque', 'opaque'] );
1908
-
1909
- my $message = join "\n",
1910
- "Hello from Platypus!",
1911
- "Welcome to the fun",
1912
- "world of FFI";
1913
-
1914
- notify_init('Platypus Hello');
1915
- my $n = notify_notification_new('Platypus Hello World', $message, 'dialog-information');
1916
- notify_notification_show($n, undef);
1917
- notify_uninit();
1918
-
1919
- =head3 Execute
1920
-
1921
- $ perl notify.pl
1922
-
1923
- =for html <p>And this is what it will look like:</p>
1924
- <div style="display: flex">
1925
- <div style="margin: 3px; flex: 1 1 50%">
1926
- <img alt="Test" src="/examples//notify.png">
1927
- </div>
1928
- </div>
1929
-
1930
- =head3 Discussion
1931
-
1932
- The GNOME project provides an API to send notifications to its desktop environment.
1933
- Nothing here is particularly new: all of the types and techniques are ones that we
1934
- have seen before, except we are using a third party library, instead of using our
1935
- own C code or the standard C library functions.
1936
-
1937
- When using a third party library you have to know the name or location of it, which
1938
- is not typically portable, so here we use L<FFI::CheckLib>'s
1939
- L<find_lib_or_die function|FFI::CheckLib/find_lib_or_die>. If the library is not
1940
- found the script will die with a useful diagnostic. L<FFI::CheckLib> has a number
1941
- of useful features and will integrate nicely with L<Alien::Build> based L<Alien>s.
1942
-
1943
- =head2 The Win32 API with MessageBoxW
1944
-
1945
- =head3 Win32 API
1946
-
1947
- L<MessageBoxW function (winuser.h)|https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-messageboxw>
1948
-
1949
- =head3 Perl Source
1950
-
1951
- use utf8;
1952
- use FFI::Platypus 2.00;
1953
-
1954
- my $ffi = FFI::Platypus->new(
1955
- api => 2,
1956
- lib => [undef],
1957
- );
1958
-
1959
- # see FFI::Platypus::Lang::Win32
1960
- $ffi->lang('Win32');
1961
-
1962
- # Send a Unicode string to the Windows API MessageBoxW function.
1963
- use constant MB_OK => 0x00000000;
1964
- use constant MB_DEFAULT_DESKTOP_ONLY => 0x00020000;
1965
- $ffi->attach( [MessageBoxW => 'MessageBox'] => [ 'HWND', 'LPCWSTR', 'LPCWSTR', 'UINT'] => 'int' );
1966
- MessageBox(undef, "I ❤️ Platypus", "Confession", MB_OK|MB_DEFAULT_DESKTOP_ONLY);
1967
-
1968
- =head3 Execute
1969
-
1970
- $ perl win32_messagebox.pl
1971
-
1972
- =for html <p>And this is what it will look like:</p>
1973
- <div style="display: flex">
1974
- <div style="margin: 3px; flex: 1 1 50%">
1975
- <img alt="Test" src="/examples/win32_messagebox.png">
1976
- </div>
1977
- </div>
1978
-
1979
- =head3 Discussion
1980
-
1981
- The API used by Microsoft Windows presents some unique
1982
- challenges. On 32 bit systems a different ABI is used than what
1983
- is used by the standard C library. It also provides a rats nest of
1984
- type aliases. Finally if you want to talk Unicode to any of the
1985
- Windows API you will need to use C<UTF-16LE> instead of C<UTF-8>
1986
- which is native to Perl. (The Win32 API refers to these as
1987
- C<LPWSTR> and C<LPCWSTR> types). As much as possible the Win32
1988
- "language" plugin attempts to handle these challenges transparently.
1989
- For more details see L<FFI::Platypus::Lang::Win32>.
1990
-
1991
- =head3 Discussion
1992
-
1993
- The libnotify library is a desktop GUI notification system for the
1994
- GNOME Desktop environment. This script sends a notification event that
1995
- should show up as a balloon, for me it did so in the upper right hand
1996
- corner of my screen.
1997
-
1998
- =head2 Structured Data Records (by pointer or by reference)
1999
-
2000
- =head3 C API
2001
-
2002
- L<cppreference - localtime|https://en.cppreference.com/w/c/chrono/localtime>
2003
-
2004
- =head3 Perl Source
2005
-
2006
- use FFI::Platypus 2.00;
2007
- use FFI::C;
2008
-
2009
- my $ffi = FFI::Platypus->new(
2010
- api => 2,
2011
- lib => [undef],
2012
- );
2013
- FFI::C->ffi($ffi);
2014
-
2015
- package Unix::TimeStruct {
2016
-
2017
- FFI::C->struct(tm => [
2018
- tm_sec => 'int',
2019
- tm_min => 'int',
2020
- tm_hour => 'int',
2021
- tm_mday => 'int',
2022
- tm_mon => 'int',
2023
- tm_year => 'int',
2024
- tm_wday => 'int',
2025
- tm_yday => 'int',
2026
- tm_isdst => 'int',
2027
- tm_gmtoff => 'long',
2028
- _tm_zone => 'opaque',
2029
- ]);
2030
-
2031
- # For now 'string' is unsupported by FFI::C, but we
2032
- # can cast the time zone from an opaque pointer to
2033
- # string.
2034
- sub tm_zone {
2035
- my $self = shift;
2036
- $ffi->cast('opaque', 'string', $self->_tm_zone);
2037
- }
2038
-
2039
- # attach the C localtime function
2040
- $ffi->attach( localtime => ['time_t*'] => 'tm', sub {
2041
- my($inner, $class, $time) = @_;
2042
- $time = time unless defined $time;
2043
- $inner->(\$time);
2044
- });
2045
- }
2046
-
2047
- # now we can actually use our Unix::TimeStruct class
2048
- my $time = Unix::TimeStruct->localtime;
2049
- printf "time is %d:%d:%d %s\n",
2050
- $time->tm_hour,
2051
- $time->tm_min,
2052
- $time->tm_sec,
2053
- $time->tm_zone;
2054
-
2055
- =head3 Execute
2056
-
2057
- $ perl time_struct.pl
2058
- time is 3:48:19 MDT
2059
-
2060
- =head3 Discussion
2061
-
2062
- C and other machine code languages frequently provide interfaces that
2063
- include structured data records (defined using the C<struct> keyword
2064
- in C). Some libraries will provide an API which you are expected to read
2065
- or write before and/or after passing them along to the library.
2066
-
2067
- For C pointers to C<strict>, C<union>, nested C<struct> and nested
2068
- C<union> structures, the easiest interface to use is via L<FFI::C>.
2069
- If you are working with a C<struct> that must be passed by value
2070
- (not pointers), then you will want to use L<FFI::Platypus::Record>
2071
- class instead. We will discuss an example of that next.
2072
-
2073
- The C C<localtime> function takes a pointer to a C struct. We simply define
2074
- the members of the struct using the L<FFI::C> C<struct> method. Because
2075
- we used the C<ffi> method to tell L<FFI::C> to use our local instance of
2076
- L<FFI::Platypus> it registers the C<tm> type for us, and we can just start
2077
- using it as a return type!
2078
-
2079
- =head2 Structured Data Records (on stack or by value)
2080
-
2081
- =head3 C Source
2082
-
2083
- #include <stdint.h>
2084
- #include <string.h>
2085
-
2086
- typedef struct color_t {
2087
- char name[8];
2088
- uint8_t red;
2089
- uint8_t green;
2090
- uint8_t blue;
2091
- } color_t;
2092
-
2093
- color_t
2094
- color_increase_red(color_t color, uint8_t amount)
2095
- {
2096
- strcpy(color.name, "reddish");
2097
- color.red += amount;
2098
- return color;
2099
- }
2100
-
2101
- =head3 Perl Source
2102
-
2103
- use FFI::Platypus 2.00;
2104
-
2105
- my $ffi = FFI::Platypus->new(
2106
- api => 2,
2107
- lib => './color.so'
2108
- );
2109
-
2110
- package Color {
2111
-
2112
- use FFI::Platypus::Record;
2113
- use overload
2114
- '""' => sub { shift->as_string },
2115
- bool => sub { 1 }, fallback => 1;
2116
-
2117
- record_layout_1($ffi,
2118
- 'string(8)' => 'name', qw(
2119
- uint8 red
2120
- uint8 green
2121
- uint8 blue
2122
- ));
2123
-
2124
- sub as_string {
2125
- my($self) = @_;
2126
- sprintf "%s: [red:%02x green:%02x blue:%02x]",
2127
- $self->name, $self->red, $self->green, $self->blue;
2128
- }
2129
-
2130
- }
2131
-
2132
- $ffi->type('record(Color)' => 'color_t');
2133
- $ffi->attach( color_increase_red => ['color_t','uint8'] => 'color_t' );
2134
-
2135
- my $gray = Color->new(
2136
- name => 'gray',
2137
- red => 0xDC,
2138
- green => 0xDC,
2139
- blue => 0xDC,
2140
- );
2141
-
2142
- my $slightly_red = color_increase_red($gray, 20);
2143
-
2144
- print "$gray\n";
2145
- print "$slightly_red\n";
2146
-
2147
- =head3 Execute
2148
-
2149
- $ cc -shared -o color.so color.c
2150
- $ perl color.pl
2151
- gray: [red:dc green:dc blue:dc]
2152
- reddish: [red:f0 green:dc blue:dc]
2153
-
2154
- =head3 Discussion
2155
-
2156
- In the C source of this example, we pass a C C<struct> by value by
2157
- copying it onto the stack. On the Perl side we create a C<Color> class
2158
- using L<FFI::Platypus::Record>, which allows us to pass the structure
2159
- the way the C source wants us to.
2160
-
2161
- Generally you should only reach for L<FFI::Platypus::Record> if you
2162
- need to pass small records on the stack like this. For more complicated
2163
- (including nested) data you want to use L<FFI::C> using pointers.
2164
-
2165
- =head2 Avoiding Copy Using Memory Windows (with libzmq3)
2166
-
2167
- =head3 C API
2168
-
2169
- L<ØMQ/3.2.6 API Reference|http://api.zeromq.org/3-2:_start>
2170
-
2171
- =head3 Perl Source
2172
-
2173
- use constant ZMQ_IO_THREADS => 1;
2174
- use constant ZMQ_MAX_SOCKETS => 2;
2175
- use constant ZMQ_REQ => 3;
2176
- use constant ZMQ_REP => 4;
2177
- use FFI::CheckLib qw( find_lib_or_die );
2178
- use FFI::Platypus 2.00;
2179
- use FFI::Platypus::Memory qw( malloc );
2180
- use FFI::Platypus::Buffer qw( scalar_to_buffer window );
2181
-
2182
- my $endpoint = "ipc://zmq-ffi-$$";
2183
- my $ffi = FFI::Platypus->new(
2184
- api => 2,
2185
- lib => find_lib_or_die lib => 'zmq',
2186
- );
2187
-
2188
- $ffi->attach(zmq_version => ['int*', 'int*', 'int*'] => 'void');
2189
-
2190
- my($major,$minor,$patch);
2191
- zmq_version(\$major, \$minor, \$patch);
2192
- print "libzmq version $major.$minor.$patch\n";
2193
- die "this script only works with libzmq 3 or better" unless $major >= 3;
2194
-
2195
- $ffi->type('opaque' => 'zmq_context');
2196
- $ffi->type('opaque' => 'zmq_socket');
2197
- $ffi->type('opaque' => 'zmq_msg_t');
2198
- $ffi->attach(zmq_ctx_new => [] => 'zmq_context');
2199
- $ffi->attach(zmq_ctx_set => ['zmq_context', 'int', 'int'] => 'int');
2200
- $ffi->attach(zmq_socket => ['zmq_context', 'int'] => 'zmq_socket');
2201
- $ffi->attach(zmq_connect => ['opaque', 'string'] => 'int');
2202
- $ffi->attach(zmq_bind => ['zmq_socket', 'string'] => 'int');
2203
- $ffi->attach(zmq_send => ['zmq_socket', 'opaque', 'size_t', 'int'] => 'int');
2204
- $ffi->attach(zmq_msg_init => ['zmq_msg_t'] => 'int');
2205
- $ffi->attach(zmq_msg_recv => ['zmq_msg_t', 'zmq_socket', 'int'] => 'int');
2206
- $ffi->attach(zmq_msg_data => ['zmq_msg_t'] => 'opaque');
2207
- $ffi->attach(zmq_errno => [] => 'int');
2208
- $ffi->attach(zmq_strerror => ['int'] => 'string');
2209
-
2210
- my $context = zmq_ctx_new();
2211
- zmq_ctx_set($context, ZMQ_IO_THREADS, 1);
2212
-
2213
- my $socket1 = zmq_socket($context, ZMQ_REQ);
2214
- zmq_connect($socket1, $endpoint);
2215
-
2216
- my $socket2 = zmq_socket($context, ZMQ_REP);
2217
- zmq_bind($socket2, $endpoint);
2218
-
2219
- { # send
2220
- our $sent_message = "hello there";
2221
- my($pointer, $size) = scalar_to_buffer $sent_message;
2222
- my $r = zmq_send($socket1, $pointer, $size, 0);
2223
- die zmq_strerror(zmq_errno()) if $r == -1;
2224
- }
2225
-
2226
- { # recv
2227
- my $msg_ptr = malloc 100;
2228
- zmq_msg_init($msg_ptr);
2229
- my $size = zmq_msg_recv($msg_ptr, $socket2, 0);
2230
- die zmq_strerror(zmq_errno()) if $size == -1;
2231
- my $data_ptr = zmq_msg_data($msg_ptr);
2232
- window(my $recv_message, $data_ptr, $size);
2233
- print "recv_message = $recv_message\n";
2234
- }
2235
-
2236
- =head3 Execute
2237
-
2238
- $ perl zmq3.pl
2239
- libzmq version 4.3.4
2240
- recv_message = hello there
2241
-
2242
- =head3 Discussion
2243
-
2244
- ØMQ is a high-performance asynchronous messaging library. There are a
2245
- few things to note here.
2246
-
2247
- Firstly, sometimes there may be multiple versions of a library in the
2248
- wild and you may need to verify that the library on a system meets your
2249
- needs (alternatively you could support multiple versions and configure
2250
- your bindings dynamically). Here we use C<zmq_version> to ask libzmq
2251
- which version it is.
2252
-
2253
- C<zmq_version> returns the version number via three integer pointer
2254
- arguments, so we use the pointer to integer type: C<int *>. In order to
2255
- pass pointer types, we pass a reference. In this case it is a reference
2256
- to an undefined value, because zmq_version will write into the pointers
2257
- the output values, but you can also pass in references to integers,
2258
- floating point values and opaque pointer types. When the function
2259
- returns the C<$major> variable (and the others) has been updated and we
2260
- can use it to verify that it supports the API that we require.
2261
-
2262
- Finally we attach the necessary functions, send and receive a message.
2263
- When we receive we use the L<FFI::Platypus::Buffer> function C<window>
2264
- instead of C<buffer_to_scalar>. They have a similar effect in that
2265
- the provide a scalar from a region of memory, but C<window> doesn't
2266
- have to copy any data, so it is cheaper to call. The only downside
2267
- is that a windowed scalar like this is read-only.
2268
-
2269
- =head2 libarchive
2270
-
2271
- =head3 C Documentation
2272
-
2273
- L<https://www.libarchive.org/>
2274
-
2275
- =head3 Perl Source
2276
-
2277
- use FFI::Platypus 2.00;
2278
- use FFI::CheckLib qw( find_lib_or_die );
2279
-
2280
- # This example uses FreeBSD's libarchive to list the contents of any
2281
- # archive format that it suppors. We've also filled out a part of
2282
- # the ArchiveWrite class that could be used for writing archive formats
2283
- # supported by libarchive
2284
-
2285
- my $ffi = FFI::Platypus->new(
2286
- api => 2,
2287
- lib => find_lib_or_die(lib => 'archive'),
2288
- );
2289
- $ffi->type('object(Archive)' => 'archive_t');
2290
- $ffi->type('object(ArchiveRead)' => 'archive_read_t');
2291
- $ffi->type('object(ArchiveWrite)' => 'archive_write_t');
2292
- $ffi->type('object(ArchiveEntry)' => 'archive_entry_t');
2293
-
2294
- package Archive {
2295
- # base class is "abstract" having no constructor or destructor
2296
-
2297
- $ffi->mangler(sub {
2298
- my($name) = @_;
2299
- "archive_$name";
2300
- });
2301
- $ffi->attach( error_string => ['archive_t'] => 'string' );
2302
- }
2303
-
2304
- package ArchiveRead {
2305
- our @ISA = qw( Archive );
2306
-
2307
- $ffi->mangler(sub {
2308
- my($name) = @_;
2309
- "archive_read_$name";
2310
- });
2311
-
2312
- $ffi->attach( new => ['string'] => 'archive_read_t' );
2313
- $ffi->attach( [ free => 'DESTROY' ] => ['archive_t'] );
2314
- $ffi->attach( support_filter_all => ['archive_t'] => 'int' );
2315
- $ffi->attach( support_format_all => ['archive_t'] => 'int' );
2316
- $ffi->attach( open_filename => ['archive_t','string','size_t'] => 'int' );
2317
- $ffi->attach( next_header2 => ['archive_t', 'archive_entry_t' ] => 'int' );
2318
- $ffi->attach( data_skip => ['archive_t'] => 'int' );
2319
- # ... define additional read methods
2320
- }
2321
-
2322
- package ArchiveWrite {
2323
-
2324
- our @ISA = qw( Archive );
2325
-
2326
- $ffi->mangler(sub {
2327
- my($name) = @_;
2328
- "archive_write_$name";
2329
- });
2330
-
2331
- $ffi->attach( new => ['string'] => 'archive_write_t' );
2332
- $ffi->attach( [ free => 'DESTROY' ] => ['archive_write_t'] );
2333
- # ... define additional write methods
2334
- }
2335
-
2336
- package ArchiveEntry {
2337
-
2338
- $ffi->mangler(sub {
2339
- my($name) = @_;
2340
- "archive_entry_$name";
2341
- });
2342
-
2343
- $ffi->attach( new => ['string'] => 'archive_entry_t' );
2344
- $ffi->attach( [ free => 'DESTROY' ] => ['archive_entry_t'] );
2345
- $ffi->attach( pathname => ['archive_entry_t'] => 'string' );
2346
- # ... define additional entry methods
2347
- }
2348
-
2349
- use constant ARCHIVE_OK => 0;
2350
-
2351
- # this is a Perl version of the C code here:
2352
- # https://github.com/libarchive/libarchive/wiki/Examples#List_contents_of_Archive_stored_in_File
2353
-
2354
- my $archive_filename = shift @ARGV;
2355
- unless(defined $archive_filename)
2356
- {
2357
- print "usage: $0 archive.tar\n";
2358
- exit;
2359
- }
2360
-
2361
- my $archive = ArchiveRead->new;
2362
- $archive->support_filter_all;
2363
- $archive->support_format_all;
2364
-
2365
- my $r = $archive->open_filename($archive_filename, 1024);
2366
- die "error opening $archive_filename: ", $archive->error_string
2367
- unless $r == ARCHIVE_OK;
2368
-
2369
- my $entry = ArchiveEntry->new;
2370
-
2371
- while($archive->next_header2($entry) == ARCHIVE_OK)
2372
- {
2373
- print $entry->pathname, "\n";
2374
- $archive->data_skip;
2375
- }
2376
-
2377
- =head3 Execute
2378
-
2379
- $ perl archive_object.pl archive.tar
2380
- archive.pl
2381
- archive_object.pl
2382
-
2383
- =head3 Discussion
2384
-
2385
- libarchive is the implementation of C<tar> for FreeBSD provided as a
2386
- library and available on a number of platforms.
2387
-
2388
- One interesting thing about libarchive is that it provides a kind of
2389
- object oriented interface via opaque pointers. This example creates an
2390
- abstract class C<Archive>, and concrete classes C<ArchiveWrite>,
2391
- C<ArchiveRead> and C<ArchiveEntry>. The concrete classes can even be
2392
- inherited from and extended just like any Perl classes because of the
2393
- way the custom types are implemented. We use Platypus's C<object>
2394
- type for this implementation, which is a wrapper around an C<opaque>
2395
- (can also be an integer) type that is blessed into a particular class.
2396
-
2397
- Another advanced feature of this example is that we define a mangler
2398
- to modify the symbol resolution for each class. This means we can do
2399
- this when we define a method for Archive:
2400
-
2401
- $ffi->attach( support_filter_all => ['archive_t'] => 'int' );
2402
-
2403
- Rather than this:
2404
-
2405
- $ffi->attach(
2406
- [ archive_read_support_filter_all => 'support_read_filter_all' ] =>
2407
- ['archive_t'] => 'int' );
2408
- );
2409
-
2410
- As nice as C<libarchive> is, note that we have to shoehorn then
2411
- C<archive_free> function name into the Perl convention of using
2412
- C<DESTROY> as the destructor. We can easily do that for just this
2413
- one function with:
2414
-
2415
- $ffi->attach( [ free => 'DESTROY' ] => ['archive_t'] );
2416
-
2417
- The C<libarchive> is a large library with hundreds of methods.
2418
- For comprehensive FFI bindings for C<libarchive> see L<Archive::Libarchive>.
2419
-
2420
- =head2 unix open
2421
-
2422
- =head3 C API
2423
-
2424
- L<Input-output system calls in C|https://www.geeksforgeeks.org/input-output-system-calls-c-create-open-close-read-write/>
2425
-
2426
- =head3 Perl Source
2427
-
2428
- use FFI::Platypus 2.00;
2429
-
2430
- {
2431
- package FD;
2432
-
2433
- use constant O_RDONLY => 0;
2434
- use constant O_WRONLY => 1;
2435
- use constant O_RDWR => 2;
2436
-
2437
- use constant IN => bless \do { my $in=0 }, __PACKAGE__;
2438
- use constant OUT => bless \do { my $out=1 }, __PACKAGE__;
2439
- use constant ERR => bless \do { my $err=2 }, __PACKAGE__;
2440
-
2441
- my $ffi = FFI::Platypus->new( api => 2, lib => [undef]);
2442
-
2443
- $ffi->type('object(FD,int)' => 'fd');
2444
-
2445
- $ffi->attach( [ 'open' => 'new' ] => [ 'string', 'int', 'mode_t' ] => 'fd' => sub {
2446
- my($xsub, $class, $fn, @rest) = @_;
2447
- my $fd = $xsub->($fn, @rest);
2448
- die "error opening $fn $!" if $$fd == -1;
2449
- $fd;
2450
- });
2451
-
2452
- $ffi->attach( write => ['fd', 'string', 'size_t' ] => 'ssize_t' );
2453
- $ffi->attach( read => ['fd', 'string', 'size_t' ] => 'ssize_t' );
2454
- $ffi->attach( close => ['fd'] => 'int' );
2455
- }
2456
-
2457
- my $fd = FD->new("file_handle.txt", FD::O_RDONLY);
2458
-
2459
- my $buffer = "\0" x 10;
2460
-
2461
- while(my $br = $fd->read($buffer, 10))
2462
- {
2463
- FD::OUT->write($buffer, $br);
2464
- }
2465
-
2466
- $fd->close;
2467
-
2468
- =head3 Execute
2469
-
2470
- $ perl file_handle.pl
2471
- Hello World
2472
-
2473
- =head3 Discussion
2474
-
2475
- The Unix file system calls use an integer handle for each open file.
2476
- We can use the same C<object> type that we used for libarchive above,
2477
- except we let platypus know that the underlying type is C<int> instead
2478
- of C<opaque> (the latter being the default for the C<object> type).
2479
- Mainly just for demonstration since Perl has much better IO libraries,
2480
- but now we have an OO interface to the Unix IO functions.
2481
-
2482
- =head2 Varadic Functions (with libcurl)
2483
-
2484
- =head3 C API
2485
-
2486
- =over 4
2487
-
2488
- =item L<curl_easy_init|https://curl.se/libcurl/c/curl_easy_init.html>
2489
-
2490
- =item L<curl_easy_setopt|https://curl.se/libcurl/c/curl_easy_setopt.html>
2491
-
2492
- =item L<curl_easy_perform|https://curl.se/libcurl/c/curl_easy_perform.html>
2493
-
2494
- =item L<curl_easy_cleanup|https://curl.se/libcurl/c/curl_easy_cleanup.html>
2495
-
2496
- =item L<CURLOPT_URL|https://curl.se/libcurl/c/CURLOPT_URL.html>
2497
-
2498
- =back
2499
-
2500
- =head3 Perl Source
2501
-
2502
- use FFI::Platypus 2.00;
2503
- use FFI::CheckLib qw( find_lib_or_die );
2504
- use constant CURLOPT_URL => 10002;
2505
-
2506
- my $ffi = FFI::Platypus->new(
2507
- api => 2,
2508
- lib => find_lib_or_die(lib => 'curl'),
2509
- );
2510
-
2511
- my $curl_handle = $ffi->function( 'curl_easy_init' => [] => 'opaque' )
2512
- ->call;
2513
-
2514
- $ffi->function( 'curl_easy_setopt' => ['opaque', 'enum' ] => ['string'] )
2515
- ->call($curl_handle, CURLOPT_URL, "https://pl.atypus.org" );
2516
-
2517
- $ffi->function( 'curl_easy_perform' => ['opaque' ] => 'enum' )
2518
- ->call($curl_handle);
2519
-
2520
- $ffi->function( 'curl_easy_cleanup' => ['opaque' ] )
2521
- ->call($curl_handle);
2522
-
2523
- =head3 Execute
2524
-
2525
- $ perl curl.pl
2526
- <!doctype html>
2527
- <html lang="en">
2528
- <head>
2529
- <meta charset="utf-8" />
2530
- <title>pl.atypus.org - Home for the Perl Platypus Project</title>
2531
- ...
2532
-
2533
- =head3 Discussion
2534
-
2535
- The L<libcurl|https://curl.se/> library makes extensive use of "varadic" functions.
2536
-
2537
- The C programming language and ABI have the concept of "varadic" functions
2538
- that can take a variable number and variable type of arguments. Assuming
2539
- you have a C<libffi> that supports it (and most modern systems should),
2540
- then you can create bindings to a varadic function by providing two sets
2541
- of array references, one for the fixed arguments (for reasons, C varadic
2542
- functions must have at least one) and one for variable arguments. In
2543
- this example we call C<curl_easy_setopt> as a varadic function.
2544
-
2545
- For functions that have a large or infinite number of possible signatures
2546
- it may be impracticable or impossible to attach them all. You can instead
2547
- do as we did in this example, create a function object using the
2548
- L<function method|/function> and call it immediately. This is not as
2549
- performant either when you create or call as using the L<attach method|/attach>,
2550
- but in some cases the performance penalty may be worth it or unavoidable.
2551
-
2552
- =head2 Callbacks (with libcurl)
2553
-
2554
- =head3 C API
2555
-
2556
- =over 4
2557
-
2558
- =item L<curl_easy_init|https://curl.se/libcurl/c/curl_easy_init.html>
2559
-
2560
- =item L<curl_easy_setopt|https://curl.se/libcurl/c/curl_easy_setopt.html>
2561
-
2562
- =item L<curl_easy_perform|https://curl.se/libcurl/c/curl_easy_perform.html>
2563
-
2564
- =item L<curl_easy_cleanup|https://curl.se/libcurl/c/curl_easy_cleanup.html>
2565
-
2566
- =item L<CURLOPT_URL|https://curl.se/libcurl/c/CURLOPT_URL.html>
2567
-
2568
- =item L<CURLOPT_WRITEFUNCTION|https://curl.se/libcurl/c/CURLOPT_WRITEFUNCTION.html>
2569
-
2570
- =back
2571
-
2572
- =head3 Perl Source
2573
-
2574
- use FFI::Platypus 2.00;
2575
- use FFI::CheckLib qw( find_lib_or_die );
2576
- use FFI::Platypus::Buffer qw( window );
2577
- use constant CURLOPT_URL => 10002;
2578
- use constant CURLOPT_WRITEFUNCTION => 20011;
2579
-
2580
- my $ffi = FFI::Platypus->new(
2581
- api => 2,
2582
- lib => find_lib_or_die(lib => 'curl'),
2583
- );
2584
-
2585
- my $curl_handle = $ffi->function( 'curl_easy_init' => [] => 'opaque' )
2586
- ->call;
2587
-
2588
- $ffi->function( 'curl_easy_setopt' => [ 'opaque', 'enum' ] => ['string'] )
2589
- ->call($curl_handle, CURLOPT_URL, "https://pl.atypus.org" );
2590
-
2591
- my $html;
2592
-
2593
- my $closure = $ffi->closure(sub {
2594
- my($ptr, $len, $num, $user) = @_;
2595
- window(my $buf, $ptr, $len*$num);
2596
- $html .= $buf;
2597
- return $len*$num;
2598
- });
2599
-
2600
- $ffi->function( 'curl_easy_setopt' => [ 'opaque', 'enum' ] => ['(opaque,size_t,size_t,opaque)->size_t'] => 'enum' )
2601
- ->call($curl_handle, CURLOPT_WRITEFUNCTION, $closure);
2602
-
2603
- $ffi->function( 'curl_easy_perform' => [ 'opaque' ] => 'enum' )
2604
- ->call($curl_handle);
2605
-
2606
- $ffi->function( 'curl_easy_cleanup' => [ 'opaque' ] )
2607
- ->call($curl_handle);
2608
-
2609
- if($html =~ /<title>(.*?)<\/title>/) {
2610
- print "$1\n";
2611
- }
2612
-
2613
- =head3 Execute
2614
-
2615
- $ perl curl_callback.pl
2616
- pl.atypus.org - Home for the Perl Platypus Project
2617
-
2618
- =head3 Discussion
2619
-
2620
- This example is similar to the previous one, except instead of letting
2621
- L<libcurl|https://curl.se> write the content body to C<STDOUT>, we give
2622
- it a callback to send the data to instead. The L<closure method|/closure>
2623
- can be used to create a callback function pointer that can be called from
2624
- C. The type for the callback is in the form C<< (arg_type,arg_type,etc)->return_type >>
2625
- where the argument types are in parentheticals with an arrow between the
2626
- argument types and the return type.
2627
-
2628
- Inside the closure or callback we use the L<window function|FFI::Platypus::Buffer/window>
2629
- from L<FFI::Platypus::Buffer> again to avoid an I<extra> copy. We still
2630
- have to copy the buffer to append it to C<$hmtl> but it is at least one
2631
- less copy.
2632
-
2633
- =head2 bundle your own code
2634
-
2635
- =head3 C Source
2636
-
2637
- C<ffi/foo.c>:
2638
-
2639
- #include <ffi_platypus_bundle.h>
2640
- #include <string.h>
2641
-
2642
- typedef struct {
2643
- char *name;
2644
- int value;
2645
- } foo_t;
2646
-
2647
- foo_t*
2648
- foo__new(const char *class_name, const char *name, int value) {
2649
- (void)class_name;
2650
- foo_t *self = malloc( sizeof( foo_t ) );
2651
- self->name = strdup(name);
2652
- self->value = value;
2653
- return self;
2654
- }
2655
-
2656
- const char *
2657
- foo__name(foo_t *self) {
2658
- return self->name;
2659
- }
2660
-
2661
- int
2662
- foo__value(foo_t *self) {
2663
- return self->value;
2664
- }
2665
-
2666
- void
2667
- foo__DESTROY(foo_t *self) {
2668
- free(self->name);
2669
- free(self);
2670
- }
2671
-
2672
- =head3 Perl Source
2673
-
2674
- C<lib/Foo.pm>:
2675
-
2676
- package Foo;
2677
-
2678
- use strict;
2679
- use warnings;
2680
- use FFI::Platypus 2.00;
2681
-
2682
- my $ffi = FFI::Platypus->new( api => 2 );
2683
-
2684
- $ffi->type('object(Foo)' => 'foo_t');
2685
- $ffi->mangler(sub {
2686
- my $name = shift;
2687
- $name =~ s/^/foo__/;
2688
- $name;
2689
- });
2690
-
2691
- $ffi->bundle;
2692
-
2693
- $ffi->attach( new => [ 'string', 'string', 'int' ] => 'foo_t' );
2694
- $ffi->attach( name => [ 'foo_t' ] => 'string' );
2695
- $ffi->attach( value => [ 'foo_t' ] => 'int' );
2696
- $ffi->attach( DESTROY => [ 'foo_t' ] => 'void' );
2697
-
2698
- 1;
2699
-
2700
- C<t/foo.t>:
2701
-
2702
- use Test2::V0;
2703
- use Foo;
2704
-
2705
- my $foo = Foo->new("platypus", 10);
2706
- isa_ok $foo, 'Foo';
2707
- is $foo->name, "platypus";
2708
- is $foo->value, 10;
2709
-
2710
- done_testing;
2711
-
2712
- C<Makefile.PL>:
2713
-
2714
- use ExtUtils::MakeMaker;
2715
- use FFI::Build::MM;
2716
- my $fbmm = FFI::Build::MM->new;
2717
- WriteMakefile(
2718
- $fbmm->mm_args(
2719
- NAME => 'Foo',
2720
- DISTNAME => 'Foo',
2721
- VERSION => '1.00',
2722
- # ...
2723
- )
2724
- );
2725
-
2726
- sub MY::postamble
2727
- {
2728
- $fbmm->mm_postamble;
2729
- }
2730
-
2731
- =head3 Execute
2732
-
2733
- With prove:
2734
-
2735
- $ prove -lvm
2736
- t/foo.t ..
2737
- # Seeded srand with seed '20221105' from local date.
2738
- ok 1 - Foo=SCALAR->isa('Foo')
2739
- ok 2
2740
- ok 3
2741
- 1..3
2742
- ok
2743
- All tests successful.
2744
- Files=1, Tests=3, 0 wallclock secs ( 0.00 usr 0.00 sys + 0.10 cusr 0.00 csys = 0.10 CPU)
2745
- Result: PASS
2746
-
2747
- With L<ExtUtils::MakeMaker>:
2748
-
2749
- $ perl Makefile.PL
2750
- Generating a Unix-style Makefile
2751
- Writing Makefile for Foo
2752
- Writing MYMETA.yml and MYMETA.json
2753
- $ make
2754
- cp lib/Foo.pm blib/lib/Foo.pm
2755
- "/home/ollisg/opt/perl/5.37.5/bin/perl5.37.5" -MFFI::Build::MM=cmd -e fbx_build
2756
- CC ffi/foo.c
2757
- LD blib/lib/auto/share/dist/Foo/lib/libFoo.so
2758
- $ make test
2759
- "/home/ollisg/opt/perl/5.37.5/bin/perl5.37.5" -MFFI::Build::MM=cmd -e fbx_build
2760
- "/home/ollisg/opt/perl/5.37.5/bin/perl5.37.5" -MFFI::Build::MM=cmd -e fbx_test
2761
- PERL_DL_NONLAZY=1 "/home/ollisg/opt/perl/5.37.5/bin/perl5.37.5" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
2762
- t/foo.t .. ok
2763
- All tests successful.
2764
- Files=1, Tests=3, 1 wallclock secs ( 0.00 usr 0.00 sys + 0.03 cusr 0.00 csys = 0.03 CPU)
2765
- Result: PASS
2766
-
2767
- =head3 Discussion
2768
-
2769
- You can bundle your own C code with your Perl extension. There are a number
2770
- of reasons you might want to do this Sometimes you need to optimize a
2771
- tight loop for speed. Or you might need a little bit of glue code for your
2772
- bindings to a library that isn't inherently FFI friendly. Either way
2773
- what you want is the L<FFI::Build> system on the install step and the
2774
- L<FFI::Platypus::Bundle> interface on the runtime step. If you are using
2775
- L<Dist::Zilla> for your distribution, you will also want to check out the
2776
- L<Dist::Zilla::Plugin::FFI::Build> plugin to make this as painless as possible.
2777
-
2778
- One of the nice things about the bundle interface is that it is smart enough to
2779
- work with either L<App::Prove> or L<ExtUtils::MakeMaker>. This means, unlike
2780
- XS, you do not need to explicitly compile your C code in development mode, that
2781
- will be done for you when you call C<< $ffi->bundle >>
2782
-
2783
- =head1 FAQ
2784
-
2785
- =head2 How do I get constants defined as macros in C header files
2786
-
2787
- This turns out to be a challenge for any language calling into C, which
2788
- frequently uses C<#define> macros to define constants like so:
2789
-
2790
- #define FOO_STATIC 1
2791
- #define FOO_DYNAMIC 2
2792
- #define FOO_OTHER 3
2793
-
2794
- As macros are expanded and their definitions are thrown away by the C pre-processor
2795
- there isn't any way to get the name/value mappings from the compiled dynamic
2796
- library.
2797
-
2798
- You can manually create equivalent constants in your Perl source:
2799
-
2800
- use constant FOO_STATIC => 1;
2801
- use constant FOO_DYNAMIC => 2;
2802
- use constant FOO_OTHER => 3;
2803
-
2804
- If there are a lot of these types of constants you might want to consider using
2805
- a tool (L<Convert::Binary::C> can do this) that can extract the constants for you.
2806
-
2807
- See also the "Integer constants" example in L<FFI::Platypus::Type>.
2808
-
2809
- You can also use the new Platypus bundle interface to define Perl constants
2810
- from C space. This is more reliable, but does require a compiler at install
2811
- time. It is recommended mainly for writing bindings against libraries that
2812
- have constants that can vary widely from platform to platform. See
2813
- L<FFI::Platypus::Constant> for details.
2814
-
2815
- =head2 What about enums?
2816
-
2817
- The C enum types are integers. The underlying type is up to the platform, so
2818
- Platypus provides C<enum> and C<senum> types for unsigned and singed enums
2819
- respectively. At least some compilers treat signed and unsigned enums as
2820
- different types. The enum I<values> are essentially the same as macro constants
2821
- described above from an FFI perspective. Thus the process of defining enum values
2822
- is identical to the process of defining macro constants in Perl.
2823
-
2824
- For more details on enumerated types see L<FFI::Platypus::Type/"Enum types">.
2825
-
2826
- There is also a type plugin (L<FFI::Platypus::Type::Enum>) that can be helpful
2827
- in writing interfaces that use enums.
2828
-
2829
- =head2 Memory leaks
2830
-
2831
- There are a couple places where memory is allocated, but never deallocated that may
2832
- look like memory leaks by tools designed to find memory leaks like valgrind. This
2833
- memory is intended to be used for the lifetime of the perl process so there normally
2834
- this isn't a problem unless you are embedding a Perl interpreter which doesn't closely
2835
- match the lifetime of your overall application.
2836
-
2837
- Specifically:
2838
-
2839
- =over 4
2840
-
2841
- =item type cache
2842
-
2843
- some types are cached and not freed. These are needed as long as there are FFI
2844
- functions that could be called.
2845
-
2846
- =item attached functions
2847
-
2848
- Attaching a function as an xsub will definitely allocate memory that won't be freed
2849
- because the xsub could be called at any time, including in C<END> blocks.
2850
-
2851
- =back
2852
-
2853
- The Platypus team plans on adding a hook to free some of this "leaked" memory
2854
- for use cases where Perl and Platypus are embedded in a larger application
2855
- where the lifetime of the Perl process is significantly smaller than the
2856
- overall lifetime of the whole process.
2857
-
2858
- =head2 I get seg faults on some platforms but not others with a library using pthreads.
2859
-
2860
- On some platforms, Perl isn't linked with C<libpthreads> if Perl threads are not
2861
- enabled. On some platforms this doesn't seem to matter, C<libpthreads> can be
2862
- loaded at runtime without much ill-effect. (Linux from my experience doesn't seem
2863
- to mind one way or the other). Some platforms are not happy about this, and about
2864
- the only thing that you can do about it is to build Perl such that it links with
2865
- C<libpthreads> even if it isn't a threaded Perl.
2866
-
2867
- This is not really an FFI issue, but a Perl issue, as you will have the same
2868
- problem writing XS code for the such libraries.
2869
-
2870
- =head2 Doesn't work on Perl 5.10.0.
2871
-
2872
- The first point release of Perl 5.10 was buggy, and is not supported by Platypus.
2873
- Please upgrade to a newer Perl.
2874
-
2875
- =head1 CAVEATS
2876
-
2877
- Platypus and Native Interfaces like libffi rely on the availability of
2878
- dynamic libraries. Things not supported include:
2879
-
2880
- =over 4
2881
-
2882
- =item Systems that lack dynamic library support
2883
-
2884
- Like MS-DOS
2885
-
2886
- =item Systems that are not supported by libffi
2887
-
2888
- Like OpenVMS
2889
-
2890
- =item Languages that do not support using dynamic libraries from other languages
2891
-
2892
- This used to be the case with Google's Go, but is no longer the case. This is
2893
- a problem for C / XS code as well.
2894
-
2895
- =item Languages that do not compile to machine code
2896
-
2897
- Like .NET based languages and Java.
2898
-
2899
- =back
2900
-
2901
- The documentation has a bias toward using FFI / Platypus with C. This
2902
- is my fault, as my background mainly in C/C++ programmer (when I am
2903
- not writing Perl). In many places I use "C" as a short form for "any
2904
- language that can generate machine code and is callable from C". I
2905
- welcome pull requests to the Platypus core to address this issue. In an
2906
- attempt to ease usage of Platypus by non C programmers, I have written a
2907
- number of foreign language plugins for various popular languages (see
2908
- the SEE ALSO below). These plugins come with examples specific to those
2909
- languages, and documentation on common issues related to using those
2910
- languages with FFI. In most cases these are available for easy adoption
2911
- for those with the know-how or the willingness to learn. If your
2912
- language doesn't have a plugin YET, that is just because you haven't
2913
- written it yet.
2914
-
2915
- =head1 SUPPORT
2916
-
2917
- The intent of the C<FFI-Platypus> team is to support the same versions of
2918
- Perl that are supported by the Perl toolchain. As of this writing that
2919
- means 5.16 and better.
2920
-
2921
- IRC: #native on irc.perl.org
2922
-
2923
- L<(click for instant chat room login)|http://chat.mibbit.com/#native@irc.perl.org>
2924
-
2925
- If something does not work the way you think it should, or if you have a
2926
- feature request, please open an issue on this project's GitHub Issue
2927
- tracker:
2928
-
2929
- L<https://github.com/perlFFI/FFI-Platypus/issues>
2930
-
2931
- =head1 CONTRIBUTING
2932
-
2933
- If you have implemented a new feature or fixed a bug then you may make a
2934
- pull request on this project's GitHub repository:
2935
-
2936
- L<https://github.com/PerlFFI/FFI-Platypus/pulls>
2937
-
2938
- This project is developed using L<Dist::Zilla>. The project's git
2939
- repository also comes with the C<Makefile.PL> file necessary
2940
- for building, testing (and even installing if necessary) without
2941
- L<Dist::Zilla>. Please keep in mind though that these files are
2942
- generated so if changes need to be made to those files they should be
2943
- done through the project's C<dist.ini> file. If you do use
2944
- L<Dist::Zilla> and already have the necessary plugins installed, then I
2945
- encourage you to run C<dzil test> before making any pull requests. This
2946
- is not a requirement, however, I am happy to integrate especially
2947
- smaller patches that need tweaking to fit the project standards. I may
2948
- push back and ask you to write a test case or alter the formatting of a
2949
- patch depending on the amount of time I have and the amount of code that
2950
- your patch touches.
2951
-
2952
- This project's GitHub issue tracker listed above is not Write-Only. If
2953
- you want to contribute then feel free to browse through the existing
2954
- issues and see if there is something you feel you might be good at and
2955
- take a whack at the problem. I frequently open issues myself that I
2956
- hope will be accomplished by someone in the future but do not have time
2957
- to immediately implement myself.
2958
-
2959
- Another good area to help out in is documentation. I try to make sure
2960
- that there is good document coverage, that is there should be
2961
- documentation describing all the public features and warnings about
2962
- common pitfalls, but an outsider's or alternate view point on such
2963
- things would be welcome; if you see something confusing or lacks
2964
- sufficient detail I encourage documentation only pull requests to
2965
- improve things.
2966
-
2967
- The Platypus distribution comes with a test library named C<libtest>
2968
- that is normally automatically built by C<./Build test>. If you prefer
2969
- to use C<prove> or run tests directly, you can use the C<./Build
2970
- libtest> command to build it. Example:
2971
-
2972
- % perl Makefile.PL
2973
- % make
2974
- % make ffi-test
2975
- % prove -bv t
2976
- # or an individual test
2977
- % perl -Mblib t/ffi_platypus_memory.t
2978
-
2979
- The build process also respects these environment variables:
2980
-
2981
- =over 4
2982
-
2983
- =item FFI_PLATYPUS_DEBUG_FAKE32
2984
-
2985
- When building Platypus on 32 bit Perls, it will use the L<Math::Int64> C
2986
- API and make L<Math::Int64> a prerequisite. Setting this environment
2987
- variable will force Platypus to build with both of those options on a 64
2988
- bit Perl as well.
2989
-
2990
- % env FFI_PLATYPUS_DEBUG_FAKE32=1 perl Makefile.PL
2991
- DEBUG_FAKE32:
2992
- + making Math::Int64 a prereq
2993
- + Using Math::Int64's C API to manipulate 64 bit values
2994
- Generating a Unix-style Makefile
2995
- Writing Makefile for FFI::Platypus
2996
- Writing MYMETA.yml and MYMETA.json
2997
- %
2998
-
2999
- =item FFI_PLATYPUS_NO_ALLOCA
3000
-
3001
- Platypus uses the non-standard and somewhat controversial C function
3002
- C<alloca> by default on platforms that support it. I believe that
3003
- Platypus uses it responsibly to allocate small amounts of memory for
3004
- argument type parameters, and does not use it to allocate large
3005
- structures like arrays or buffers. If you prefer not to use C<alloca>
3006
- despite these precautions, then you can turn its use off by setting this
3007
- environment variable when you run C<Makefile.PL>:
3008
-
3009
- helix% env FFI_PLATYPUS_NO_ALLOCA=1 perl Makefile.PL
3010
- NO_ALLOCA:
3011
- + alloca() will not be used, even if your platform supports it.
3012
- Generating a Unix-style Makefile
3013
- Writing Makefile for FFI::Platypus
3014
- Writing MYMETA.yml and MYMETA.json
3015
-
3016
- =item V
3017
-
3018
- When building platypus may hide some of the excessive output when
3019
- probing and building, unless you set C<V> to a true value.
3020
-
3021
- % env V=1 perl Makefile.PL
3022
- % make V=1
3023
- ...
3024
-
3025
- =back
3026
-
3027
- =head2 Coding Guidelines
3028
-
3029
- =over 4
3030
-
3031
- =item
3032
-
3033
- Do not hesitate to make code contribution. Making useful contributions
3034
- is more important than following byzantine bureaucratic coding
3035
- regulations. We can always tweak things later.
3036
-
3037
- =item
3038
-
3039
- Please make an effort to follow existing coding style when making pull
3040
- requests.
3041
-
3042
- =item
3043
-
3044
- The intent of the C<FFI-Platypus> team is to support the same versions of
3045
- Perl that are supported by the Perl toolchain. As of this writing that
3046
- means 5.16 and better. As such, please do not include any code that
3047
- requires a newer version of Perl.
3048
-
3049
- =back
3050
-
3051
- =head2 Performance Testing
3052
-
3053
- As Mark Twain was fond of saying there are four types of lies: lies,
3054
- damn lies, statistics and benchmarks. That being said, it can sometimes
3055
- be helpful to compare the runtime performance of Platypus if you are
3056
- making significant changes to the Platypus Core. For that I use
3057
- `FFI-Performance`, which can be found in my GitHub repository here:
3058
-
3059
- =over 4
3060
-
3061
- =item L<https://github.com/Perl5-FFI/FFI-Performance>
3062
-
3063
- =back
3064
-
3065
- =head2 System integrators
3066
-
3067
- This distribution uses L<Alien::FFI> in fallback mode, meaning if
3068
- the system doesn't provide C<pkg-config> and C<libffi> it will attempt
3069
- to download C<libffi> and build it from source. If you are including
3070
- Platypus in a larger system (for example a Linux distribution) you
3071
- only need to make sure to declare C<pkg-config> or C<pkgconf> and
3072
- the development package for C<libffi> as prereqs for this module.
3073
-
3074
- =head1 SEE ALSO
3075
-
3076
- =head2 Extending Platypus
3077
-
3078
- =over 4
3079
-
3080
- =item L<FFI::Platypus::Type>
3081
-
3082
- Type definitions for Platypus.
3083
-
3084
- =item L<FFI::C>
3085
-
3086
- Interface for defining structured data records for use with
3087
- Platypus. It supports C C<struct>, C<union>, nested structures
3088
- and arrays of all of those. It only supports passing these
3089
- types by reference or pointer, so if you need to pass structured
3090
- data by value see L<FFI::Platypus::Record> below.
3091
-
3092
- =item L<FFI::Platypus::Record>
3093
-
3094
- Interface for defining structured data records for use with
3095
- Platypus. Included in the Platypus core. Supports pass by
3096
- value which is uncommon in C, but frequently used in languages
3097
- like Rust and Go. Consider using L<FFI::C> instead if you
3098
- don't need to pass by value.
3099
-
3100
- =item L<FFI::Platypus::API>
3101
-
3102
- The custom types API for Platypus.
3103
-
3104
- =item L<FFI::Platypus::Memory>
3105
-
3106
- Memory functions for FFI.
3107
-
3108
- =back
3109
-
3110
- =head2 Languages
3111
-
3112
- =over 4
3113
-
3114
- =item L<FFI::Platypus::Lang::C>
3115
-
3116
- Documentation and tools for using Platypus with the C programming
3117
- language
3118
-
3119
- =item L<FFI::Platypus::Lang::CPP>
3120
-
3121
- Documentation and tools for using Platypus with the C++ programming
3122
- language
3123
-
3124
- =item L<FFI::Platypus::Lang::Fortran>
3125
-
3126
- Documentation and tools for using Platypus with Fortran
3127
-
3128
- =item L<FFI::Platypus::Lang::Go>
3129
-
3130
- Documentation and tools for using Platypus with Go
3131
-
3132
- =item L<FFI::Platypus::Lang::Pascal>
3133
-
3134
- Documentation and tools for using Platypus with Free Pascal
3135
-
3136
- =item L<FFI::Platypus::Lang::Rust>
3137
-
3138
- Documentation and tools for using Platypus with the Rust programming
3139
- language
3140
-
3141
- =item L<FFI::Platypus::Lang::ASM>
3142
-
3143
- Documentation and tools for using Platypus with the Assembly
3144
-
3145
- =item L<FFI::Platypus::Lang::Win32>
3146
-
3147
- Documentation and tools for using Platypus with the Win32 API.
3148
-
3149
- =item L<FFI::Platypus::Lang::Zig>
3150
-
3151
- Documentation and tools for using Platypus with the Zig programming
3152
- language
3153
-
3154
- =item L<Wasm> and L<Wasm::Wasmtime>
3155
-
3156
- Modules for writing WebAssembly bindings in Perl. This allows you to call
3157
- functions written in any language supported by WebAssembly. These modules
3158
- are also implemented using Platypus.
3159
-
3160
- =back
3161
-
3162
- =head2 Other Tools Related Tools Useful for FFI
3163
-
3164
- =over 4
3165
-
3166
- =item L<FFI::CheckLib>
3167
-
3168
- Find dynamic libraries in a portable way.
3169
-
3170
- =item L<Convert::Binary::C>
3171
-
3172
- A great interface for decoding C data structures, including C<struct>s,
3173
- C<enum>s, C<#define>s and more.
3174
-
3175
- =item L<pack and unpack|perlpacktut>
3176
-
3177
- Native to Perl functions that can be used to decode C C<struct> types.
3178
-
3179
- =item L<C::Scan>
3180
-
3181
- This module can extract constants and other useful objects from C header
3182
- files that may be relevant to an FFI application. One downside is that
3183
- its use may require development packages to be installed.
3184
-
3185
- =back
3186
-
3187
- =head2 Other Foreign Function Interfaces
3188
-
3189
- =over 4
3190
-
3191
- =item L<Dyn>
3192
-
3193
- A wrapper around L<dyncall|https://dyncall.org>, which is itself an alternative to
3194
- L<libffi|https://sourceware.org/libffi/>.
3195
-
3196
- =item L<NativeCall>
3197
-
3198
- Promising interface to Platypus inspired by Raku.
3199
-
3200
- =item L<Win32::API>
3201
-
3202
- Microsoft Windows specific FFI style interface.
3203
-
3204
- =item L<FFI>
3205
-
3206
- Older, simpler, less featureful FFI. It used to be implemented
3207
- using FSF's C<ffcall>. Because C<ffcall> has been unsupported for
3208
- some time, I reimplemented this module using L<FFI::Platypus>.
3209
-
3210
- =item L<C::DynaLib>
3211
-
3212
- Another FFI for Perl that doesn't appear to have worked for a long time.
3213
-
3214
- =item L<C::Blocks>
3215
-
3216
- Embed a tiny C compiler into your Perl scripts.
3217
-
3218
- =item L<P5NCI>
3219
-
3220
- Yet another FFI like interface that does not appear to be supported or
3221
- under development anymore.
3222
-
3223
- =back
3224
-
3225
- =head2 Other
3226
-
3227
- =over 4
3228
-
3229
- =item L<Alien::FFI>
3230
-
3231
- Provides libffi for Platypus during its configuration and build stages.
3232
-
3233
- =back
3234
-
3235
- =head1 ACKNOWLEDGMENTS
3236
-
3237
- In addition to the contributors mentioned below, I would like to
3238
- acknowledge Brock Wilcox (AWWAIID) and Meredith Howard (MHOWARD) whose
3239
- work on C<FFI::Sweet> not only helped me get started with FFI but
3240
- significantly influenced the design of Platypus.
3241
-
3242
- Dan Book, who goes by Grinnz on IRC for answering user questions about
3243
- FFI and Platypus.
3244
-
3245
- In addition I'd like to thank Alessandro Ghedini (ALEXBIO) whose work
3246
- on another Perl FFI library helped drive some of the development ideas
3247
- for L<FFI::Platypus>.
3248
-
3249
- =head1 AUTHOR
3250
-
3251
- Author: Graham Ollis E<lt>plicease@cpan.orgE<gt>
3252
-
3253
- Contributors:
3254
-
3255
- Bakkiaraj Murugesan (bakkiaraj)
3256
-
3257
- Dylan Cali (calid)
3258
-
3259
- pipcet
3260
-
3261
- Zaki Mughal (zmughal)
3262
-
3263
- Fitz Elliott (felliott)
3264
-
3265
- Vickenty Fesunov (vyf)
3266
-
3267
- Gregor Herrmann (gregoa)
3268
-
3269
- Shlomi Fish (shlomif)
3270
-
3271
- Damyan Ivanov
3272
-
3273
- Ilya Pavlov (Ilya33)
3274
-
3275
- Petr Písař (ppisar)
3276
-
3277
- Mohammad S Anwar (MANWAR)
3278
-
3279
- Håkon Hægland (hakonhagland, HAKONH)
3280
-
3281
- Meredith (merrilymeredith, MHOWARD)
3282
-
3283
- Diab Jerius (DJERIUS)
3284
-
3285
- Eric Brine (IKEGAMI)
3286
-
3287
- szTheory
3288
-
3289
- José Joaquín Atria (JJATRIA)
3290
-
3291
- Pete Houston (openstrike, HOUSTON)
3292
-
3293
- Lukas Mai (MAUKE)
3294
-
3295
- =head1 COPYRIGHT AND LICENSE
3296
-
3297
- This software is copyright (c) 2015-2022 by Graham Ollis.
3298
-
3299
- This is free software; you can redistribute it and/or modify it under
3300
- the same terms as the Perl 5 programming language system itself.
3301
-
3302
- =cut