hypertube-binaries 3.0.2 → 3.0.4
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.
- package/Binaries/Clr/Hypertube.Clr.Utils.dll +0 -0
- package/Binaries/Clr/HypertubeClrRuntime.dll +0 -0
- package/Binaries/Jvm/HypertubeJvmRuntime.jar +0 -0
- package/Binaries/Native/Linux/ARM64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/Linux/ARM64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/Linux/ARM64/libConfigs.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeActivationService.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeCppRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeGoRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeJvmRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeNetcoreRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubePhpRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubePythonRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeRubyRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeTcpClient.so +0 -0
- package/Binaries/Native/Linux/ARM64/libHypertubeTcpTlsClient.so +0 -0
- package/Binaries/Native/Linux/ARM64/libUtils.so +0 -0
- package/Binaries/Native/Linux/ARM64/version.txt +1 -1
- package/Binaries/Native/Linux/X64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/Linux/X64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/Linux/X64/libConfigs.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeActivationService.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeCppRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeGoRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeJvmRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeNetcoreRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeNodejs2218RuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeNodejsRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubePhp848RuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubePhpRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubePythonRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeRubyRuntimeNative.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeTcpClient.so +0 -0
- package/Binaries/Native/Linux/X64/libHypertubeTcpTlsClient.so +0 -0
- package/Binaries/Native/Linux/X64/libUtils.so +0 -0
- package/Binaries/Native/Linux/X64/version.txt +1 -1
- package/Binaries/Native/MacOs/ARM64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/MacOs/ARM64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/MacOs/ARM64/libConfigs.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeActivationService.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeCppRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeGoRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeJvmRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeNetcoreRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeNodejs2218RuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeNodejsRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubePythonRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeRubyRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeTcpClient.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libHypertubeTcpTlsClient.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/libUtils.dylib +0 -0
- package/Binaries/Native/MacOs/ARM64/version.txt +1 -1
- package/Binaries/Native/MacOs/X64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/MacOs/X64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/MacOs/X64/libConfigs.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeActivationService.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeCppRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeGoRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeJvmRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeNetcoreRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeNodejs2218RuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeNodejsRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubePhp848RuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubePhpRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubePythonRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeRubyRuntimeNative.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeTcpClient.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libHypertubeTcpTlsClient.dylib +0 -0
- package/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
- package/Binaries/Native/MacOs/X64/version.txt +1 -1
- package/Binaries/Native/Windows/ARM64/Configs.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeActivationService.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeCppRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeGoRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeJvmRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeNetcoreRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubePhpRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubePythonRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeRubyRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeTcpClient.dll +0 -0
- package/Binaries/Native/Windows/ARM64/HypertubeTcpTlsClient.dll +0 -0
- package/Binaries/Native/Windows/ARM64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/Windows/ARM64/Utils.dll +0 -0
- package/Binaries/Native/Windows/ARM64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/Windows/ARM64/version.txt +0 -0
- package/Binaries/Native/Windows/X64/Configs.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeActivationService.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeClrRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeCppRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeGoRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeJvmRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeNetcoreRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeNodejs2218RuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeNodejsRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubePhp848RuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubePhpRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubePythonRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeRubyRuntimeNative.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeTcpClient.dll +0 -0
- package/Binaries/Native/Windows/X64/HypertubeTcpTlsClient.dll +0 -0
- package/Binaries/Native/Windows/X64/NetVersionLatest.runtimeconfig.json +2 -2
- package/Binaries/Native/Windows/X64/Utils.dll +0 -0
- package/Binaries/Native/Windows/X64/_HypertubeNativeErrorLogger_2026-05-06.txt +124 -0
- package/Binaries/Native/Windows/X64/version.txt +1 -1
- package/Binaries/Netcore/Hypertube.Netcore.Core.dll +0 -0
- package/Binaries/Netcore/Hypertube.Netcore.Plugins.dll +0 -0
- package/Binaries/Netcore/Hypertube.Netcore.Utils.dll +0 -0
- package/Binaries/Php/hypertube/core/delegatecache/DelegatesCache.php +62 -62
- package/Binaries/Php/hypertube/core/handler/AbstractHandler.php +61 -61
- package/Binaries/Php/hypertube/core/handler/AddEventListenerHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/ArrayGetItemHandler.php +57 -57
- package/Binaries/Php/hypertube/core/handler/ArrayGetRankHandler.php +50 -50
- package/Binaries/Php/hypertube/core/handler/ArrayGetSizeHandler.php +59 -59
- package/Binaries/Php/hypertube/core/handler/ArrayHandler.php +26 -26
- package/Binaries/Php/hypertube/core/handler/ArrayReferenceHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/ArraySetItemHandler.php +87 -87
- package/Binaries/Php/hypertube/core/handler/AsDtoHandler.php +18 -18
- package/Binaries/Php/hypertube/core/handler/AsKwargsHandler.php +19 -19
- package/Binaries/Php/hypertube/core/handler/AsOutHandler.php +19 -19
- package/Binaries/Php/hypertube/core/handler/AsRefHandler.php +20 -20
- package/Binaries/Php/hypertube/core/handler/CastHandler.php +93 -93
- package/Binaries/Php/hypertube/core/handler/ContextMetadataHandler.php +20 -0
- package/Binaries/Php/hypertube/core/handler/ConvertTypeHandler.php +20 -20
- package/Binaries/Php/hypertube/core/handler/CreateInstanceHandler.php +98 -98
- package/Binaries/Php/hypertube/core/handler/CreateNullHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/DestructReferenceHandler.php +29 -29
- package/Binaries/Php/hypertube/core/handler/DtoPropertyHandler.php +18 -18
- package/Binaries/Php/hypertube/core/handler/EnableNamespaceHandler.php +36 -36
- package/Binaries/Php/hypertube/core/handler/EnableTypeHandler.php +33 -33
- package/Binaries/Php/hypertube/core/handler/ExceptionHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GenerateLibHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetAsyncOperationResultHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetEnumItemHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetEnumNameHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetEnumValueHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetGlobalFieldHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetInstanceFieldHandler.php +55 -55
- package/Binaries/Php/hypertube/core/handler/GetInstanceMethodAsDelegateHandler.php +52 -52
- package/Binaries/Php/hypertube/core/handler/GetModuleHandler.php +15 -15
- package/Binaries/Php/hypertube/core/handler/GetRefValueHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetResultTypeHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/GetStaticFieldHandler.php +81 -81
- package/Binaries/Php/hypertube/core/handler/GetStaticMethodAsDelegateHandler.php +109 -109
- package/Binaries/Php/hypertube/core/handler/GetTypeHandler.php +146 -146
- package/Binaries/Php/hypertube/core/handler/Handler.php +176 -175
- package/Binaries/Php/hypertube/core/handler/HeartBeatHandler.php +20 -20
- package/Binaries/Php/hypertube/core/handler/InvokeDelegateHandler.php +27 -27
- package/Binaries/Php/hypertube/core/handler/InvokeGenericMethodHandler.php +47 -47
- package/Binaries/Php/hypertube/core/handler/InvokeGenericStaticMethodHandler.php +111 -111
- package/Binaries/Php/hypertube/core/handler/InvokeGlobalFunctionHandler.php +48 -48
- package/Binaries/Php/hypertube/core/handler/InvokeInstanceMethodHandler.php +78 -78
- package/Binaries/Php/hypertube/core/handler/InvokeStaticMethodHandler.php +95 -95
- package/Binaries/Php/hypertube/core/handler/LoadLibraryHandler.php +360 -360
- package/Binaries/Php/hypertube/core/handler/OptimizeHandler.php +16 -16
- package/Binaries/Php/hypertube/core/handler/PassByValueHandler.php +103 -103
- package/Binaries/Php/hypertube/core/handler/PassDelegateHandler.php +58 -58
- package/Binaries/Php/hypertube/core/handler/PluginWrapperHandler.php +15 -15
- package/Binaries/Php/hypertube/core/handler/ProjectResultAsDtoHandler.php +68 -68
- package/Binaries/Php/hypertube/core/handler/RegisterForUpdateHandler.php +65 -65
- package/Binaries/Php/hypertube/core/handler/ResolveInstanceHandler.php +27 -27
- package/Binaries/Php/hypertube/core/handler/RetrieveArrayHandler.php +48 -48
- package/Binaries/Php/hypertube/core/handler/SetInstanceFieldHandler.php +54 -54
- package/Binaries/Php/hypertube/core/handler/SetStaticFieldHandler.php +56 -56
- package/Binaries/Php/hypertube/core/handler/ValueForUpdateHandler.php +20 -20
- package/Binaries/Php/hypertube/core/handler/ValueHandler.php +18 -18
- package/Binaries/Php/hypertube/core/handler/loadLibrary/ClasspathScanner.php +66 -66
- package/Binaries/Php/hypertube/core/http2Client/Http2Client.php +50 -0
- package/Binaries/Php/hypertube/core/interpreter/Interpreter.php +126 -123
- package/Binaries/Php/hypertube/core/namespacescache/NamespacesCache.php +88 -88
- package/Binaries/Php/hypertube/core/protocol/CommandDeserializer.php +337 -337
- package/Binaries/Php/hypertube/core/protocol/CommandSerializer.php +112 -112
- package/Binaries/Php/hypertube/core/protocol/TypeDeserializer.php +102 -102
- package/Binaries/Php/hypertube/core/protocol/TypeSerializer.php +188 -188
- package/Binaries/Php/hypertube/core/receiver/Receiver.php +45 -45
- package/Binaries/Php/hypertube/core/referencecache/ReferencesCache.php +68 -68
- package/Binaries/Php/hypertube/core/transmitter/Transmitter.php +47 -47
- package/Binaries/Php/hypertube/core/transmitter/TransmitterWrapper.php +181 -181
- package/Binaries/Php/hypertube/core/typescache/TypesCache.php +60 -60
- package/Binaries/Php/hypertube/core/webSocketClient/WebSocketClient.php +626 -620
- package/Binaries/Php/hypertube/utils/ArrayWrapper.php +122 -122
- package/Binaries/Php/hypertube/utils/Command.php +265 -265
- package/Binaries/Php/hypertube/utils/CommandInterface.php +23 -23
- package/Binaries/Php/hypertube/utils/DynamicMethodFactory.php +93 -93
- package/Binaries/Php/hypertube/utils/Enum.php +87 -87
- package/Binaries/Php/hypertube/utils/ExceptionSerializer.php +81 -81
- package/Binaries/Php/hypertube/utils/RuntimeLogger.php +44 -44
- package/Binaries/Php/hypertube/utils/RuntimeName.php +21 -21
- package/Binaries/Php/hypertube/utils/RuntimeNameHandler.php +72 -72
- package/Binaries/Php/hypertube/utils/StringEncodingMode.php +12 -12
- package/Binaries/Php/hypertube/utils/TypesHandler.php +47 -47
- package/Binaries/Php/hypertube/utils/Uri.php +138 -138
- package/Binaries/Php/hypertube/utils/UtilsArray.php +16 -16
- package/Binaries/Php/hypertube/utils/UtilsConst.php +75 -75
- package/Binaries/Php/hypertube/utils/UtilsSimpleType.php +48 -48
- package/Binaries/Php/hypertube/utils/Uuid.php +47 -47
- package/Binaries/Php/hypertube/utils/connectiondata/ConnectionData.php +84 -0
- package/Binaries/Php/hypertube/utils/connectiondata/Http2ConnectionData.php +43 -0
- package/Binaries/Php/hypertube/utils/connectiondata/IConnectionData.php +19 -15
- package/Binaries/Php/hypertube/utils/connectiondata/InMemoryConnectionData.php +25 -35
- package/Binaries/Php/hypertube/utils/connectiondata/TcpConnectionData.php +91 -77
- package/Binaries/Php/hypertube/utils/connectiondata/WsConnectionData.php +43 -43
- package/Binaries/Php/hypertube/utils/error/UnsupportedPayloadItemTypeError.php +19 -19
- package/Binaries/Php/hypertube/utils/exception/BadMethodCallException.php +14 -14
- package/Binaries/Php/hypertube/utils/exception/DelegateNotFoundException.php +14 -14
- package/Binaries/Php/hypertube/utils/exception/ExceptionThrower.php +121 -121
- package/Binaries/Php/hypertube/utils/exception/FieldNotFoundInClassException.php +41 -41
- package/Binaries/Php/hypertube/utils/exception/HypertubeArgumentsMismatchException.php +17 -17
- package/Binaries/Php/hypertube/utils/exception/InvalidUriException.php +14 -14
- package/Binaries/Php/hypertube/utils/exception/SingletonUnserializeException.php +15 -15
- package/Binaries/Php/hypertube/utils/exception/TypeByteNotSupportedException.php +14 -14
- package/Binaries/Php/hypertube/utils/exception/TypeNotSupportedException.php +16 -16
- package/Binaries/Php/hypertube/utils/exception/TypeSerializationNotSupportedException.php +18 -18
- package/Binaries/Php/hypertube/utils/exception/UnsupportedOperationException.php +10 -10
- package/Binaries/Php/hypertube/utils/exception/enum/EnumNameNotFoundException.php +15 -15
- package/Binaries/Php/hypertube/utils/exception/enum/InvalidEnumValueException.php +15 -15
- package/Binaries/Php/hypertube/utils/messagehelper/MessageHelper.php +102 -102
- package/Binaries/Php/hypertube/utils/type/CommandType.php +67 -66
- package/Binaries/Php/hypertube/utils/type/ConnectionType.php +15 -14
- package/Binaries/Php/hypertube/utils/type/ExceptionType.php +45 -45
- package/Binaries/Php/hypertube/utils/type/JType.php +24 -24
- package/Binaries/Php/hypertube/utils/type/SizeType.php +22 -22
- package/Binaries/Python/hypertube/core/handler/ContextMetadataHandler.py +7 -0
- package/Binaries/Python/hypertube/core/handler/Handler.py +2 -0
- package/Binaries/Python/hypertube/core/http2Client/Http2Client.py +332 -0
- package/Binaries/Python/hypertube/core/interpreter/Interpreter.py +4 -1
- package/Binaries/Python/hypertube/core/webSocketClient/WebSocketClient.py +88 -26
- package/Binaries/Python/hypertube/utils/CommandType.py +2 -1
- package/Binaries/Python/hypertube/utils/ConnectionType.py +1 -0
- package/Binaries/Python/hypertube/utils/connectionData/Http2ConnectionData.py +36 -0
- package/Binaries/Python/hypertube/utils/connectionData/IConnectionData.py +38 -0
- package/Binaries/Python/hypertube/utils/connectionData/InMemoryConnectionData.py +4 -12
- package/Binaries/Python/hypertube/utils/connectionData/TcpConnectionData.py +29 -16
- package/Binaries/Python/hypertube/utils/connectionData/WsConnectionData.py +14 -12
- package/Binaries/Python/hypertube/utils/messageHelper/MessageHelper.py +20 -15
- package/Binaries/Ruby/core/handler/context_metadata_handler.rb +11 -0
- package/Binaries/Ruby/core/handler/handler.rb +3 -0
- package/Binaries/Ruby/core/http2_client/http2_client.rb +69 -0
- package/Binaries/Ruby/core/interpreter/interpreter.rb +7 -4
- package/Binaries/Ruby/core/web_socket_client/web_socket_client.rb +43 -26
- package/Binaries/Ruby/utils/command_type.rb +3 -0
- package/Binaries/Ruby/utils/connection_type.rb +1 -0
- package/Binaries/Ruby/utils/http2_connection_data.rb +59 -0
- package/Binaries/Ruby/utils/tcp_connection_data.rb +61 -9
- package/Binaries/Ruby/utils/ws_connection_data.rb +40 -6
- package/Binaries/version.txt +1 -1
- package/package.json +1 -1
- package/prebuilds/prebuilds-darwin-arm64/HypertubeNodejsRuntimeAddon.node +0 -0
- package/prebuilds/prebuilds-darwin-x64/HypertubeNodejsRuntimeAddon.node +0 -0
- package/prebuilds/prebuilds-win32-arm64/HypertubeNodejsRuntimeAddon.node +0 -0
- package/prebuilds/prebuilds-win32-x64/HypertubeNodejsRuntimeAddon.node +0 -0
- package/Binaries/Native/Linux/ARM64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/ARM64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/ARM64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/ARM64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
- package/Binaries/Native/Linux/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Linux/X64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
- package/Binaries/Native/MacOs/ARM64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/ARM64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/ARM64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/ARM64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
- package/Binaries/Native/MacOs/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/MacOs/X64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
- package/Binaries/Native/Windows/ARM64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/ARM64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/ARM64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/ARM64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
- package/Binaries/Native/Windows/X64/NetVersion31LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/X64/NetVersion60LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/X64/NetVersion70LatestPatch.runtimeconfig.json +0 -10
- package/Binaries/Native/Windows/X64/_HypertubeNativeErrorLogger_2026-04-17.txt +0 -2
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use utils\CommandInterface;
|
|
8
|
-
|
|
9
|
-
final class GetGlobalFieldHandler extends AbstractHandler
|
|
10
|
-
{
|
|
11
|
-
public function process(CommandInterface $command)
|
|
12
|
-
{
|
|
13
|
-
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use utils\CommandInterface;
|
|
8
|
+
|
|
9
|
+
final class GetGlobalFieldHandler extends AbstractHandler
|
|
10
|
+
{
|
|
11
|
+
public function process(CommandInterface $command)
|
|
12
|
+
{
|
|
13
|
+
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use ReflectionClass;
|
|
8
|
-
use ReflectionException;
|
|
9
|
-
use Exception;
|
|
10
|
-
use SebastianBergmann\CodeCoverage\Report\PHP;
|
|
11
|
-
use utils\CommandInterface;
|
|
12
|
-
|
|
13
|
-
final class GetInstanceFieldHandler extends AbstractHandler
|
|
14
|
-
{
|
|
15
|
-
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* @return mixed
|
|
19
|
-
*/
|
|
20
|
-
public function process(CommandInterface $command)
|
|
21
|
-
{
|
|
22
|
-
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
23
|
-
|
|
24
|
-
$objectClass = $command->getPayload()[0];
|
|
25
|
-
$fieldString = (string)$command->getPayload()[1];
|
|
26
|
-
|
|
27
|
-
try {
|
|
28
|
-
$reflection = new ReflectionClass($objectClass);
|
|
29
|
-
if (!$reflection->hasProperty($fieldString)) {
|
|
30
|
-
throw new ReflectionException(sprintf('Property %s not found', $fieldString));
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
$property = $reflection->getProperty($fieldString);
|
|
34
|
-
$property->setAccessible(true);
|
|
35
|
-
|
|
36
|
-
return $property->getValue($objectClass);
|
|
37
|
-
} catch (ReflectionException $e) {
|
|
38
|
-
$reflection = new ReflectionClass($objectClass);
|
|
39
|
-
$properties = $reflection->getProperties();
|
|
40
|
-
|
|
41
|
-
$message = sprintf('Instance field %s not found in class %s . Available fields:' . PHP_EOL,
|
|
42
|
-
$fieldString,
|
|
43
|
-
get_class($objectClass)
|
|
44
|
-
);
|
|
45
|
-
|
|
46
|
-
foreach ($properties as $property) {
|
|
47
|
-
if ($property->isPublic()) {
|
|
48
|
-
$message .= $property->getName() . PHP_EOL;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
throw new Exception($message);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use ReflectionClass;
|
|
8
|
+
use ReflectionException;
|
|
9
|
+
use Exception;
|
|
10
|
+
use SebastianBergmann\CodeCoverage\Report\PHP;
|
|
11
|
+
use utils\CommandInterface;
|
|
12
|
+
|
|
13
|
+
final class GetInstanceFieldHandler extends AbstractHandler
|
|
14
|
+
{
|
|
15
|
+
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @return mixed
|
|
19
|
+
*/
|
|
20
|
+
public function process(CommandInterface $command)
|
|
21
|
+
{
|
|
22
|
+
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
23
|
+
|
|
24
|
+
$objectClass = $command->getPayload()[0];
|
|
25
|
+
$fieldString = (string)$command->getPayload()[1];
|
|
26
|
+
|
|
27
|
+
try {
|
|
28
|
+
$reflection = new ReflectionClass($objectClass);
|
|
29
|
+
if (!$reflection->hasProperty($fieldString)) {
|
|
30
|
+
throw new ReflectionException(sprintf('Property %s not found', $fieldString));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
$property = $reflection->getProperty($fieldString);
|
|
34
|
+
$property->setAccessible(true);
|
|
35
|
+
|
|
36
|
+
return $property->getValue($objectClass);
|
|
37
|
+
} catch (ReflectionException $e) {
|
|
38
|
+
$reflection = new ReflectionClass($objectClass);
|
|
39
|
+
$properties = $reflection->getProperties();
|
|
40
|
+
|
|
41
|
+
$message = sprintf('Instance field %s not found in class %s . Available fields:' . PHP_EOL,
|
|
42
|
+
$fieldString,
|
|
43
|
+
get_class($objectClass)
|
|
44
|
+
);
|
|
45
|
+
|
|
46
|
+
foreach ($properties as $property) {
|
|
47
|
+
if ($property->isPublic()) {
|
|
48
|
+
$message .= $property->getName() . PHP_EOL;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
throw new Exception($message);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use ReflectionClass;
|
|
8
|
-
use ReflectionException;
|
|
9
|
-
use ReflectionMethod;
|
|
10
|
-
use utils\CommandInterface;
|
|
11
|
-
|
|
12
|
-
final class GetInstanceMethodAsDelegateHandler extends AbstractHandler
|
|
13
|
-
{
|
|
14
|
-
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
15
|
-
|
|
16
|
-
public function process(CommandInterface $command): ReflectionMethod
|
|
17
|
-
{
|
|
18
|
-
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
19
|
-
|
|
20
|
-
$objectInstance = $command->getPayload()[0];
|
|
21
|
-
$methodToInvoke = (string) $command->getPayload()[1];
|
|
22
|
-
|
|
23
|
-
$argumentsTypes = array_slice($command->getPayload(), 2);
|
|
24
|
-
|
|
25
|
-
$reflectionClass = new ReflectionClass($objectInstance);
|
|
26
|
-
|
|
27
|
-
try {
|
|
28
|
-
return $reflectionClass->getMethod($methodToInvoke);
|
|
29
|
-
} catch (ReflectionException $e) {
|
|
30
|
-
$methods = $reflectionClass->getMethods(ReflectionMethod::IS_PUBLIC);
|
|
31
|
-
$message = sprintf('Instance method %s with arguments types [%s] not found in class %s. Available methods:' . PHP_EOL,
|
|
32
|
-
$methodToInvoke,
|
|
33
|
-
implode(', ', array_map('gettype', $argumentsTypes)),
|
|
34
|
-
get_class($objectInstance)
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
foreach ($methods as $method) {
|
|
38
|
-
$parameters = $method->getParameters();
|
|
39
|
-
$paramTypes = array_map(function($param) {
|
|
40
|
-
$type = $param->getType();
|
|
41
|
-
|
|
42
|
-
return $type ? $type->getName() : 'mixed';
|
|
43
|
-
}, $parameters);
|
|
44
|
-
|
|
45
|
-
$message .= $method->getName() . ' with arguments [' .
|
|
46
|
-
implode(', ', $paramTypes) . "]\n";
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
throw new ReflectionException($message, 0, $e);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use ReflectionClass;
|
|
8
|
+
use ReflectionException;
|
|
9
|
+
use ReflectionMethod;
|
|
10
|
+
use utils\CommandInterface;
|
|
11
|
+
|
|
12
|
+
final class GetInstanceMethodAsDelegateHandler extends AbstractHandler
|
|
13
|
+
{
|
|
14
|
+
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
15
|
+
|
|
16
|
+
public function process(CommandInterface $command): ReflectionMethod
|
|
17
|
+
{
|
|
18
|
+
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
19
|
+
|
|
20
|
+
$objectInstance = $command->getPayload()[0];
|
|
21
|
+
$methodToInvoke = (string) $command->getPayload()[1];
|
|
22
|
+
|
|
23
|
+
$argumentsTypes = array_slice($command->getPayload(), 2);
|
|
24
|
+
|
|
25
|
+
$reflectionClass = new ReflectionClass($objectInstance);
|
|
26
|
+
|
|
27
|
+
try {
|
|
28
|
+
return $reflectionClass->getMethod($methodToInvoke);
|
|
29
|
+
} catch (ReflectionException $e) {
|
|
30
|
+
$methods = $reflectionClass->getMethods(ReflectionMethod::IS_PUBLIC);
|
|
31
|
+
$message = sprintf('Instance method %s with arguments types [%s] not found in class %s. Available methods:' . PHP_EOL,
|
|
32
|
+
$methodToInvoke,
|
|
33
|
+
implode(', ', array_map('gettype', $argumentsTypes)),
|
|
34
|
+
get_class($objectInstance)
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
foreach ($methods as $method) {
|
|
38
|
+
$parameters = $method->getParameters();
|
|
39
|
+
$paramTypes = array_map(function($param) {
|
|
40
|
+
$type = $param->getType();
|
|
41
|
+
|
|
42
|
+
return $type ? $type->getName() : 'mixed';
|
|
43
|
+
}, $parameters);
|
|
44
|
+
|
|
45
|
+
$message .= $method->getName() . ' with arguments [' .
|
|
46
|
+
implode(', ', $paramTypes) . "]\n";
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
throw new ReflectionException($message, 0, $e);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use utils\CommandInterface;
|
|
8
|
-
|
|
9
|
-
final class GetModuleHandler extends AbstractHandler
|
|
10
|
-
{
|
|
11
|
-
public function process(CommandInterface $command)
|
|
12
|
-
{
|
|
13
|
-
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use utils\CommandInterface;
|
|
8
|
+
|
|
9
|
+
final class GetModuleHandler extends AbstractHandler
|
|
10
|
+
{
|
|
11
|
+
public function process(CommandInterface $command)
|
|
12
|
+
{
|
|
13
|
+
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use utils\CommandInterface;
|
|
8
|
-
|
|
9
|
-
final class GetRefValueHandler extends AbstractHandler
|
|
10
|
-
{
|
|
11
|
-
public function process(CommandInterface $command)
|
|
12
|
-
{
|
|
13
|
-
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use utils\CommandInterface;
|
|
8
|
+
|
|
9
|
+
final class GetRefValueHandler extends AbstractHandler
|
|
10
|
+
{
|
|
11
|
+
public function process(CommandInterface $command)
|
|
12
|
+
{
|
|
13
|
+
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use utils\CommandInterface;
|
|
8
|
-
|
|
9
|
-
final class GetResultTypeHandler extends AbstractHandler
|
|
10
|
-
{
|
|
11
|
-
public function process(CommandInterface $command)
|
|
12
|
-
{
|
|
13
|
-
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use utils\CommandInterface;
|
|
8
|
+
|
|
9
|
+
final class GetResultTypeHandler extends AbstractHandler
|
|
10
|
+
{
|
|
11
|
+
public function process(CommandInterface $command)
|
|
12
|
+
{
|
|
13
|
+
throw new \Exception(__CLASS__ . ' is not implemented in PHP');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
<?php
|
|
2
|
-
|
|
3
|
-
declare(strict_types=1);
|
|
4
|
-
|
|
5
|
-
namespace core\handler;
|
|
6
|
-
|
|
7
|
-
use Exception;
|
|
8
|
-
use ReflectionClass;
|
|
9
|
-
use ReflectionException;
|
|
10
|
-
use utils\CommandInterface;
|
|
11
|
-
|
|
12
|
-
final class GetStaticFieldHandler extends AbstractHandler
|
|
13
|
-
{
|
|
14
|
-
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @return mixed
|
|
18
|
-
*/
|
|
19
|
-
public function process(CommandInterface $command)
|
|
20
|
-
{
|
|
21
|
-
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
22
|
-
|
|
23
|
-
$classToLoad = $command->getPayload()[0];
|
|
24
|
-
$field = (string) $command->getPayload()[1];
|
|
25
|
-
|
|
26
|
-
try {
|
|
27
|
-
$reflectionClass = $this->getReflectionClass($classToLoad);
|
|
28
|
-
|
|
29
|
-
if ($reflectionClass->hasConstant($field)) {
|
|
30
|
-
return $reflectionClass->getConstant($field);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
if (!$reflectionClass->hasProperty($field)) {
|
|
34
|
-
$this->throwFieldNotFoundException($reflectionClass, $field);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
$reflectionProperty = $reflectionClass->getProperty($field);
|
|
38
|
-
if (!$reflectionProperty->isStatic()) {
|
|
39
|
-
$this->throwFieldNotFoundException($reflectionClass, $field);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
$reflectionProperty->setAccessible(true);
|
|
43
|
-
|
|
44
|
-
return $reflectionProperty->getValue();
|
|
45
|
-
} catch (ReflectionException $e) {
|
|
46
|
-
$this->throwFieldNotFoundException($this->getReflectionClass($classToLoad), $field);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* @param mixed $classToLoad
|
|
52
|
-
*/
|
|
53
|
-
private function getReflectionClass($classToLoad): ReflectionClass
|
|
54
|
-
{
|
|
55
|
-
if ($classToLoad instanceof ReflectionClass) {
|
|
56
|
-
return $classToLoad;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
return new ReflectionClass($classToLoad);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
private function throwFieldNotFoundException(ReflectionClass $reflectionClass, string $fieldName): void
|
|
63
|
-
{
|
|
64
|
-
$message = sprintf('Static field %s not found in class %s.
|
|
65
|
-
Available static fields:' . PHP_EOL, $fieldName, $reflectionClass->getName());
|
|
66
|
-
|
|
67
|
-
$constants = $reflectionClass->getConstants();
|
|
68
|
-
foreach ($constants as $name => $value) {
|
|
69
|
-
$message .= $name . ' (constant)' . PHP_EOL;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
$properties = $reflectionClass->getProperties();
|
|
73
|
-
foreach ($properties as $property) {
|
|
74
|
-
if ($property->isStatic()) {
|
|
75
|
-
$message .= $property->getName() . ' (property)' . PHP_EOL;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
throw new Exception($message);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
declare(strict_types=1);
|
|
4
|
+
|
|
5
|
+
namespace core\handler;
|
|
6
|
+
|
|
7
|
+
use Exception;
|
|
8
|
+
use ReflectionClass;
|
|
9
|
+
use ReflectionException;
|
|
10
|
+
use utils\CommandInterface;
|
|
11
|
+
|
|
12
|
+
final class GetStaticFieldHandler extends AbstractHandler
|
|
13
|
+
{
|
|
14
|
+
private const REQUIRED_ARGUMENTS_COUNT = 2;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @return mixed
|
|
18
|
+
*/
|
|
19
|
+
public function process(CommandInterface $command)
|
|
20
|
+
{
|
|
21
|
+
$this->validate($command, self::REQUIRED_ARGUMENTS_COUNT, self::class);
|
|
22
|
+
|
|
23
|
+
$classToLoad = $command->getPayload()[0];
|
|
24
|
+
$field = (string) $command->getPayload()[1];
|
|
25
|
+
|
|
26
|
+
try {
|
|
27
|
+
$reflectionClass = $this->getReflectionClass($classToLoad);
|
|
28
|
+
|
|
29
|
+
if ($reflectionClass->hasConstant($field)) {
|
|
30
|
+
return $reflectionClass->getConstant($field);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
if (!$reflectionClass->hasProperty($field)) {
|
|
34
|
+
$this->throwFieldNotFoundException($reflectionClass, $field);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
$reflectionProperty = $reflectionClass->getProperty($field);
|
|
38
|
+
if (!$reflectionProperty->isStatic()) {
|
|
39
|
+
$this->throwFieldNotFoundException($reflectionClass, $field);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
$reflectionProperty->setAccessible(true);
|
|
43
|
+
|
|
44
|
+
return $reflectionProperty->getValue();
|
|
45
|
+
} catch (ReflectionException $e) {
|
|
46
|
+
$this->throwFieldNotFoundException($this->getReflectionClass($classToLoad), $field);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @param mixed $classToLoad
|
|
52
|
+
*/
|
|
53
|
+
private function getReflectionClass($classToLoad): ReflectionClass
|
|
54
|
+
{
|
|
55
|
+
if ($classToLoad instanceof ReflectionClass) {
|
|
56
|
+
return $classToLoad;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return new ReflectionClass($classToLoad);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
private function throwFieldNotFoundException(ReflectionClass $reflectionClass, string $fieldName): void
|
|
63
|
+
{
|
|
64
|
+
$message = sprintf('Static field %s not found in class %s.
|
|
65
|
+
Available static fields:' . PHP_EOL, $fieldName, $reflectionClass->getName());
|
|
66
|
+
|
|
67
|
+
$constants = $reflectionClass->getConstants();
|
|
68
|
+
foreach ($constants as $name => $value) {
|
|
69
|
+
$message .= $name . ' (constant)' . PHP_EOL;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
$properties = $reflectionClass->getProperties();
|
|
73
|
+
foreach ($properties as $property) {
|
|
74
|
+
if ($property->isStatic()) {
|
|
75
|
+
$message .= $property->getName() . ' (property)' . PHP_EOL;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
throw new Exception($message);
|
|
80
|
+
}
|
|
81
|
+
}
|