From d7610c895bc0fa2b9fc32888dc4b48f5dc25d98b Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Wed, 19 Nov 2025 12:52:24 +0000 Subject: [PATCH 1/5] BridgeJS: Move extern decls in BridgeJSIntrinsics.swift to top-level --- .../JavaScriptKit/BridgeJSInstrincics.swift | 442 ++++++++---------- 1 file changed, 188 insertions(+), 254 deletions(-) diff --git a/Sources/JavaScriptKit/BridgeJSInstrincics.swift b/Sources/JavaScriptKit/BridgeJSInstrincics.swift index 0db1cd2e..b0e5ec39 100644 --- a/Sources/JavaScriptKit/BridgeJSInstrincics.swift +++ b/Sources/JavaScriptKit/BridgeJSInstrincics.swift @@ -167,29 +167,13 @@ extension String { // MARK: ImportTS @_spi(BridgeJS) public consuming func bridgeJSLowerParameter() -> Int32 { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_make_js_string") - func _swift_js_make_js_string(_ ptr: UnsafePointer?, _ len: Int32) -> Int32 - #else - /// Creates a JavaScript string from UTF-8 data in WebAssembly memory - func _swift_js_make_js_string(_ ptr: UnsafePointer?, _ len: Int32) -> Int32 { - _onlyAvailableOnWasm() - } - #endif return self.withUTF8 { b in _swift_js_make_js_string(b.baseAddress.unsafelyUnwrapped, Int32(b.count)) } } @_spi(BridgeJS) public static func bridgeJSLiftReturn(_ bytesCount: Int32) -> String { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_init_memory_with_result") - func _swift_js_init_memory_with_result(_ ptr: UnsafePointer?, _ len: Int32) - #else - /// Initializes WebAssembly memory with result data of JavaScript function call - func _swift_js_init_memory_with_result(_ ptr: UnsafePointer?, _ len: Int32) { - _onlyAvailableOnWasm() - } + #if !arch(wasm32) guard #available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *) else { _onlyAvailableOnWasm() } #endif return String(unsafeUninitializedCapacity: Int(bytesCount)) { b in @@ -201,14 +185,7 @@ extension String { // MARK: ExportSwift @_spi(BridgeJS) public static func bridgeJSLiftParameter(_ bytes: Int32, _ count: Int32) -> String { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_init_memory") - func _swift_js_init_memory(_ sourceId: Int32, _ ptr: UnsafeMutablePointer?) - #else - /// Initializes a part of WebAssembly memory with Uint8Array a JavaScript object - func _swift_js_init_memory(_ sourceId: Int32, _ ptr: UnsafeMutablePointer?) { - _onlyAvailableOnWasm() - } + #if !arch(wasm32) guard #available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *) else { _onlyAvailableOnWasm() } #endif return String(unsafeUninitializedCapacity: Int(count)) { b in @@ -218,15 +195,6 @@ extension String { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_string") - func _swift_js_return_string(_ ptr: UnsafePointer?, _ len: Int32) - #else - /// Write a string to reserved string storage to be returned to JavaScript - func _swift_js_return_string(_ ptr: UnsafePointer?, _ len: Int32) { - _onlyAvailableOnWasm() - } - #endif return self.withUTF8 { ptr in _swift_js_return_string(ptr.baseAddress, Int32(ptr.count)) } @@ -250,16 +218,6 @@ extension JSObject { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Int32 { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_retain") - func _swift_js_retain(_ id: Int32) -> Int32 - #else - /// Retains a JavaScript object reference to ensure the object id - /// remains valid after the function returns - func _swift_js_retain(_ id: Int32) -> Int32 { - _onlyAvailableOnWasm() - } - #endif return _swift_js_retain(Int32(bitPattern: self.id)) } } @@ -475,6 +433,191 @@ where Self: RawRepresentable, RawValue: _BridgedSwiftTypeLoweredIntoSingleWasmCo } #endif +// MARK: Wasm externs used by type lowering/lifting + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_make_js_string") +func _swift_js_make_js_string(_ ptr: UnsafePointer?, _ len: Int32) -> Int32 +#else +/// Creates a JavaScript string from UTF-8 data in WebAssembly memory +func _swift_js_make_js_string(_ ptr: UnsafePointer?, _ len: Int32) -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_init_memory_with_result") +func _swift_js_init_memory_with_result(_ ptr: UnsafePointer?, _ len: Int32) +#else +/// Initializes WebAssembly memory with result data of JavaScript function call +func _swift_js_init_memory_with_result(_ ptr: UnsafePointer?, _ len: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_string") +func _swift_js_return_string(_ ptr: UnsafePointer?, _ len: Int32) +#else +/// Write a string to reserved string storage to be returned to JavaScript +func _swift_js_return_string(_ ptr: UnsafePointer?, _ len: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_retain") +func _swift_js_retain(_ id: Int32) -> Int32 +#else +/// Retains a JavaScript object reference to ensure the object id +/// remains valid after the function returns +func _swift_js_retain(_ id: Int32) -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_bool") +func _swift_js_return_optional_bool(_ isSome: Int32, _ value: Int32) +#else +/// Sets the optional bool for return value storage +func _swift_js_return_optional_bool(_ isSome: Int32, _ value: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_presence") +func _swift_js_get_optional_int_presence() -> Int32 +#else +func _swift_js_get_optional_int_presence() -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_value") +func _swift_js_get_optional_int_value() -> Int32 +#else +func _swift_js_get_optional_int_value() -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_int") +func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) +#else +/// Sets the optional int for return value storage +func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_string") +func _swift_js_get_optional_string() -> Int32 +#else +func _swift_js_get_optional_string() -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_string") +func _swift_js_return_optional_string(_ isSome: Int32, _ ptr: UnsafePointer?, _ len: Int32) +#else +/// Write an optional string to reserved string storage to be returned to JavaScript +func _swift_js_return_optional_string(_ isSome: Int32, _ ptr: UnsafePointer?, _ len: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_object") +func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) +#else +/// Write an optional JSObject to reserved storage to be returned to JavaScript +func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_heap_object_pointer") +func _swift_js_get_optional_heap_object_pointer() -> UnsafeMutableRawPointer +#else +func _swift_js_get_optional_heap_object_pointer() -> UnsafeMutableRawPointer { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_heap_object") +func _swift_js_return_optional_heap_object(_ isSome: Int32, _ pointer: UnsafeMutableRawPointer?) +#else +/// Write an optional Swift heap object to reserved storage to be returned to JavaScript +func _swift_js_return_optional_heap_object(_ isSome: Int32, _ pointer: UnsafeMutableRawPointer?) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_presence") +func _swift_js_get_optional_float_presence() -> Int32 +#else +func _swift_js_get_optional_float_presence() -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_value") +func _swift_js_get_optional_float_value() -> Float32 +#else +func _swift_js_get_optional_float_value() -> Float32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_float") +func _swift_js_return_optional_float(_ isSome: Int32, _ value: Float32) +#else +/// Sets the optional float for return value storage +func _swift_js_return_optional_float(_ isSome: Int32, _ value: Float32) { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_presence") +func _swift_js_get_optional_double_presence() -> Int32 +#else +func _swift_js_get_optional_double_presence() -> Int32 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_value") +func _swift_js_get_optional_double_value() -> Float64 +#else +func _swift_js_get_optional_double_value() -> Float64 { + _onlyAvailableOnWasm() +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "bjs", name: "swift_js_return_optional_double") +func _swift_js_return_optional_double(_ isSome: Int32, _ value: Float64) +#else +/// Sets the optional double for return value storage +func _swift_js_return_optional_double(_ isSome: Int32, _ value: Float64) { + _onlyAvailableOnWasm() +} +#endif + extension Optional where Wrapped == Bool { // MARK: ImportTS @@ -516,16 +659,6 @@ extension Optional where Wrapped == Bool { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_bool") - func _swift_js_return_optional_bool(_ isSome: Int32, _ value: Int32) - #else - /// Sets the optional bool for return value storage - func _swift_js_return_optional_bool(_ isSome: Int32, _ value: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_bool(0, 0) @@ -563,20 +696,6 @@ extension Optional where Wrapped == Int { } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Int? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_presence") - func _swift_js_get_optional_int_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_value") - func _swift_js_get_optional_int_value() -> Int32 - #else - func _swift_js_get_optional_int_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_int_value() -> Int32 { - _onlyAvailableOnWasm() - } - #endif - let isSome = _swift_js_get_optional_int_presence() if isSome == 0 { return nil @@ -586,16 +705,6 @@ extension Optional where Wrapped == Int { } @_spi(BridgeJS) public func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_int") - func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) - #else - /// Sets the optional int for return value storage - func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch self { case .none: _swift_js_return_optional_int(0, 0) @@ -628,15 +737,6 @@ extension Optional where Wrapped == String { } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> String? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_string") - func _swift_js_get_optional_string() -> Int32 - #else - func _swift_js_get_optional_string() -> Int32 { - _onlyAvailableOnWasm() - } - #endif - let length = _swift_js_get_optional_string() if length < 0 { return nil @@ -646,16 +746,6 @@ extension Optional where Wrapped == String { } @_spi(BridgeJS) public func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_string") - func _swift_js_return_optional_string(_ isSome: Int32, _ ptr: UnsafePointer?, _ len: Int32) - #else - /// Write an optional string to reserved string storage to be returned to JavaScript - func _swift_js_return_optional_string(_ isSome: Int32, _ ptr: UnsafePointer?, _ len: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch self { case .none: _swift_js_return_optional_string(0, nil, 0) @@ -689,16 +779,6 @@ extension Optional where Wrapped == JSObject { } @_spi(BridgeJS) public func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_object") - func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) - #else - /// Write an optional JSObject to reserved storage to be returned to JavaScript - func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch self { case .none: _swift_js_return_optional_object(0, 0) @@ -721,16 +801,6 @@ extension Optional where Wrapped: _BridgedSwiftProtocolWrapper { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_object") - func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) - #else - /// Write an optional protocol wrapper to reserved storage to be returned to JavaScript - func _swift_js_return_optional_object(_ isSome: Int32, _ objectId: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_object(0, 0) @@ -815,15 +885,6 @@ extension Optional where Wrapped: _BridgedSwiftHeapObject { } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_heap_object_pointer") - func _swift_js_get_optional_heap_object_pointer() -> UnsafeMutableRawPointer - #else - func _swift_js_get_optional_heap_object_pointer() -> UnsafeMutableRawPointer { - _onlyAvailableOnWasm() - } - #endif - let pointer = _swift_js_get_optional_heap_object_pointer() if pointer == UnsafeMutableRawPointer(bitPattern: 0) { return nil @@ -833,16 +894,6 @@ extension Optional where Wrapped: _BridgedSwiftHeapObject { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_heap_object") - func _swift_js_return_optional_heap_object(_ isSome: Int32, _ pointer: UnsafeMutableRawPointer?) - #else - /// Write an optional Swift heap object to reserved storage to be returned to JavaScript - func _swift_js_return_optional_heap_object(_ isSome: Int32, _ pointer: UnsafeMutableRawPointer?) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_heap_object(0, nil) @@ -869,20 +920,6 @@ extension Optional where Wrapped == Float { } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Float? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_presence") - func _swift_js_get_optional_float_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_value") - func _swift_js_get_optional_float_value() -> Float32 - #else - func _swift_js_get_optional_float_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_float_value() -> Float32 { - _onlyAvailableOnWasm() - } - #endif - let isSome = _swift_js_get_optional_float_presence() if isSome == 0 { return nil @@ -892,16 +929,6 @@ extension Optional where Wrapped == Float { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_float") - func _swift_js_return_optional_float(_ isSome: Int32, _ value: Float32) - #else - /// Sets the optional float for return value storage - func _swift_js_return_optional_float(_ isSome: Int32, _ value: Float32) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_float(0, 0.0) @@ -929,20 +956,6 @@ extension Optional where Wrapped == Double { } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Double? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_presence") - func _swift_js_get_optional_double_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_value") - func _swift_js_get_optional_double_value() -> Float64 - #else - func _swift_js_get_optional_double_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_double_value() -> Float64 { - _onlyAvailableOnWasm() - } - #endif - let isSome = _swift_js_get_optional_double_presence() if isSome == 0 { return nil @@ -952,16 +965,6 @@ extension Optional where Wrapped == Double { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_double") - func _swift_js_return_optional_double(_ isSome: Int32, _ value: Float64) - #else - /// Sets the optional double for return value storage - func _swift_js_return_optional_double(_ isSome: Int32, _ value: Float64) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_double(0, 0.0) @@ -1001,16 +1004,6 @@ extension Optional where Wrapped: _BridgedSwiftCaseEnum { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_return_optional_int") - func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) - #else - /// Sets the optional int for return value storage - func _swift_js_return_optional_int(_ isSome: Int32, _ value: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_return_optional_int(0, 0) @@ -1062,15 +1055,6 @@ extension Optional where Wrapped: _BridgedSwiftEnumNoPayload, Wrapped: RawRepres } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_string") - func _swift_js_get_optional_string() -> Int32 - #else - func _swift_js_get_optional_string() -> Int32 { - _onlyAvailableOnWasm() - } - #endif - let length = _swift_js_get_optional_string() if length < 0 { return nil @@ -1103,20 +1087,6 @@ extension Optional where Wrapped: _BridgedSwiftEnumNoPayload, Wrapped: RawRepres } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_presence") - func _swift_js_get_optional_int_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_int_value") - func _swift_js_get_optional_int_value() -> Int32 - #else - func _swift_js_get_optional_int_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_int_value() -> Int32 { - _onlyAvailableOnWasm() - } - #endif - let isSome = _swift_js_get_optional_int_presence() if isSome == 0 { return nil @@ -1164,21 +1134,8 @@ extension Optional where Wrapped: _BridgedSwiftEnumNoPayload, Wrapped: RawRepres let optionalRawValue = Float?.bridgeJSLiftParameter(isSome, wrappedValue) return optionalRawValue.flatMap { Wrapped(rawValue: $0) } } - @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_presence") - func _swift_js_get_optional_float_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_float_value") - func _swift_js_get_optional_float_value() -> Float32 - #else - func _swift_js_get_optional_float_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_float_value() -> Float32 { - _onlyAvailableOnWasm() - } - #endif + @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { let isSome = _swift_js_get_optional_float_presence() if isSome == 0 { return nil @@ -1214,20 +1171,6 @@ extension Optional where Wrapped: _BridgedSwiftEnumNoPayload, Wrapped: RawRepres } @_spi(BridgeJS) public static func bridgeJSLiftReturnFromSideChannel() -> Wrapped? { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_presence") - func _swift_js_get_optional_double_presence() -> Int32 - @_extern(wasm, module: "bjs", name: "swift_js_get_optional_double_value") - func _swift_js_get_optional_double_value() -> Float64 - #else - func _swift_js_get_optional_double_presence() -> Int32 { - _onlyAvailableOnWasm() - } - func _swift_js_get_optional_double_value() -> Float64 { - _onlyAvailableOnWasm() - } - #endif - let isSome = _swift_js_get_optional_double_presence() if isSome == 0 { return nil @@ -1274,15 +1217,6 @@ extension Optional where Wrapped: _BridgedSwiftAssociatedValueEnum { } @_spi(BridgeJS) public consuming func bridgeJSLowerReturn() -> Void { - #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "swift_js_push_tag") - func _swift_js_push_tag(_ tag: Int32) - #else - func _swift_js_push_tag(_ tag: Int32) { - _onlyAvailableOnWasm() - } - #endif - switch consume self { case .none: _swift_js_push_tag(-1) // Use -1 as sentinel for null From ad8e34a6222da01fae516d07607a962b49dc4e20 Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Thu, 27 Nov 2025 03:18:59 +0000 Subject: [PATCH 2/5] BridgeJS: Move all `@_extern(wasm)` declarations to top-level When generating `@_extern(wasm)` function declarations in the BridgeJS plugin, we now need to ensure that they are placed at the top level of the module, rather than nested within other declarations because of the restrictions of the main branch Swift compiler. --- .../Sources/BridgeJSCore/ExportSwift.swift | 130 +++++++++++------- .../Sources/BridgeJSCore/ImportTS.swift | 8 +- 2 files changed, 84 insertions(+), 54 deletions(-) diff --git a/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift b/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift index 07b103b6..b061716d 100644 --- a/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift +++ b/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift @@ -1497,12 +1497,12 @@ public class ExportSwift { } for signature in closureSignatures.sorted(by: { $0.mangleName < $1.mangleName }) { - decls.append(try closureCodegen.renderClosureHelper(signature: signature)) + decls.append(contentsOf: try closureCodegen.renderClosureHelper(signature: signature)) decls.append(try closureCodegen.renderClosureInvokeHandler(signature: signature)) } for proto in exportedProtocols { - decls.append(try renderProtocolWrapper(protocol: proto)) + decls.append(contentsOf: try renderProtocolWrapper(protocol: proto)) } for enumDef in exportedEnums { @@ -1547,6 +1547,7 @@ public class ExportSwift { var parameters: [Parameter] = [] var abiParameterSignatures: [(name: String, type: WasmCoreType)] = [] var abiReturnType: WasmCoreType? + var externDecls: [DeclSyntax] = [] let effects: Effects init(effects: Effects) { @@ -1839,7 +1840,7 @@ public class ExportSwift { return lines.isEmpty ? "" : lines.joined(separator: "\n") + "\n" } - func renderClosureHelper(signature: ClosureSignature) throws -> DeclSyntax { + func renderClosureHelper(signature: ClosureSignature) throws -> [DeclSyntax] { let mangledName = signature.mangleName let helperName = "_BJS_Closure_\(mangledName)" let boxClassName = "_BJS_ClosureBox_\(mangledName)" @@ -1899,25 +1900,31 @@ public class ExportSwift { invokeReturnType = "Void" } + let externName = "invoke_js_callback_\(signature.moduleName)_\(mangledName)" + let returnLifting: String if signature.returnType == .void { - returnLifting = "_invoke(\(invokeCallArgs.joined(separator: ", ")))" + returnLifting = "\(externName)(\(invokeCallArgs.joined(separator: ", ")))" } else if case .optional = signature.returnType { returnLifting = """ - _invoke(\(invokeCallArgs.joined(separator: ", "))) + \(externName)(\(invokeCallArgs.joined(separator: ", "))) return \(signature.returnType.swiftType).bridgeJSLiftReturnFromSideChannel() """ } else { returnLifting = """ - let resultId = _invoke(\(invokeCallArgs.joined(separator: ", "))) + let resultId = \(externName)(\(invokeCallArgs.joined(separator: ", "))) return \(signature.returnType.swiftType).bridgeJSLiftReturn(resultId) """ } - let externName = "invoke_js_callback_\(signature.moduleName)_\(mangledName)" let optionalLoweringCode = try generateOptionalParameterLowering(signature: signature) - return """ + let externDecl: DeclSyntax = """ + @_extern(wasm, module: "bjs", name: "\(raw: externName)") + fileprivate func \(raw: externName)(\(raw: invokeSignature)) -> \(raw: invokeReturnType) + """ + + let boxDecl: DeclSyntax = """ private final class \(raw: boxClassName): _BridgedSwiftClosureBox { let closure: \(raw: closureType) init(_ closure: @escaping \(raw: closureType)) { @@ -1935,16 +1942,15 @@ public class ExportSwift { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] \(raw: signature.parameters.indices.map { "param\($0)" }.joined(separator: ", ")) in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "\(raw: externName)") - func _invoke(\(raw: invokeSignature)) -> \(raw: invokeReturnType) \(raw: optionalLoweringCode)\(raw: returnLifting) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } """ + return [externDecl, boxDecl] } func renderClosureInvokeHandler(signature: ClosureSignature) throws -> DeclSyntax { @@ -2051,28 +2057,28 @@ public class ExportSwift { func renderAssociatedValueEnumHelpers(_ enumDef: ExportedEnum) -> DeclSyntax { let typeName = enumDef.swiftCallName return """ - extension \(raw: typeName): _BridgedSwiftAssociatedValueEnum { + extension \(raw: typeName): _BridgedSwiftAssociatedValueEnum { private static func _bridgeJSLiftFromCaseId(_ caseId: Int32) -> \(raw: typeName) { switch caseId { \(raw: generateStackLiftSwitchCases(enumDef: enumDef).joined(separator: "\n")) default: fatalError("Unknown \(raw: typeName) case ID: \\(caseId)") } } - + // MARK: Protocol Export - + @_spi(BridgeJS) @_transparent public consuming func bridgeJSLowerParameter() -> Int32 { switch self { \(raw: generateLowerParameterSwitchCases(enumDef: enumDef).joined(separator: "\n")) } } - + @_spi(BridgeJS) @_transparent public static func bridgeJSLiftReturn(_ caseId: Int32) -> \(raw: typeName) { return _bridgeJSLiftFromCaseId(caseId) } - + // MARK: ExportSwift - + @_spi(BridgeJS) @_transparent public static func bridgeJSLiftParameter(_ caseId: Int32) -> \(raw: typeName) { return _bridgeJSLiftFromCaseId(caseId) } @@ -2460,7 +2466,7 @@ public class ExportSwift { } // Generate ConvertibleToJSValue extension - decls.append(renderConvertibleToJSValueExtension(klass: klass)) + decls.append(contentsOf: renderConvertibleToJSValueExtension(klass: klass)) return decls } @@ -2501,36 +2507,40 @@ public class ExportSwift { /// } /// } /// ``` - func renderConvertibleToJSValueExtension(klass: ExportedClass) -> DeclSyntax { + func renderConvertibleToJSValueExtension(klass: ExportedClass) -> [DeclSyntax] { let wrapFunctionName = "_bjs_\(klass.name)_wrap" let externFunctionName = "bjs_\(klass.name)_wrap" // If the class has an explicit access control, we need to add it to the extension declaration. let accessControl = klass.explicitAccessControl.map { "\($0) " } ?? "" - return """ + let extensionDecl: DeclSyntax = """ extension \(raw: klass.swiftCallName): ConvertibleToJSValue, _BridgedSwiftHeapObject { \(raw: accessControl)var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: externFunctionName)") - func \(raw: wrapFunctionName)(_: UnsafeMutableRawPointer) -> Int32 - #else - func \(raw: wrapFunctionName)(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: \(raw: wrapFunctionName)(Unmanaged.passRetained(self).toOpaque())))) } } """ + let externDecl: DeclSyntax = """ + #if arch(wasm32) + @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: externFunctionName)") + fileprivate func \(raw: wrapFunctionName)(_: UnsafeMutableRawPointer) -> Int32 + #else + fileprivate func \(raw: wrapFunctionName)(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") + } + #endif + """ + return [extensionDecl, externDecl] } /// Creates a struct that wraps a JSObject and implements protocol methods /// by calling `@_extern(wasm)` functions that forward to JavaScript via JSObject ID - func renderProtocolWrapper(protocol proto: ExportedProtocol) throws -> DeclSyntax { + func renderProtocolWrapper(protocol proto: ExportedProtocol) throws -> [DeclSyntax] { let wrapperName = "Any\(proto.name)" let protocolName = proto.name var methodDecls: [DeclSyntax] = [] + var externDecls: [DeclSyntax] = [] for method in proto.methods { var swiftParams: [String] = [] @@ -2617,10 +2627,16 @@ public class ExportSwift { """ } } + + externDecls.append( + """ + @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: method.abiName)") + fileprivate func _extern_\(raw: method.name)(\(raw: externParams.joined(separator: ", ")))\(raw: externReturnType) + """ + ) + let methodImplementation: DeclSyntax = """ func \(raw: method.name)(\(raw: swiftParams.joined(separator: ", ")))\(raw: returnTypeStr) { - @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: method.abiName)") - func _extern_\(raw: method.name)(\(raw: externParams.joined(separator: ", ")))\(raw: externReturnType) \(raw: callCode) } """ @@ -2631,34 +2647,36 @@ public class ExportSwift { var propertyDecls: [DeclSyntax] = [] for property in proto.properties { - let propertyImpl = try renderProtocolProperty( + let (propertyImpl, propertyExternDecls) = try renderProtocolProperty( property: property, protocolName: protocolName, moduleName: moduleName ) propertyDecls.append(propertyImpl) + externDecls.append(contentsOf: propertyExternDecls) } let allDecls = (methodDecls + propertyDecls).map { $0.description }.joined(separator: "\n\n") - return """ + let structDecl: DeclSyntax = """ struct \(raw: wrapperName): \(raw: protocolName), _BridgedSwiftProtocolWrapper { let jsObject: JSObject - + \(raw: allDecls) - + static func bridgeJSLiftParameter(_ value: Int32) -> Self { return \(raw: wrapperName)(jsObject: JSObject(id: UInt32(bitPattern: value))) } } """ + return [structDecl] + externDecls } private func renderProtocolProperty( property: ExportedProtocolProperty, protocolName: String, moduleName: String - ) throws -> DeclSyntax { + ) throws -> (propertyDecl: DeclSyntax, externDecls: [DeclSyntax]) { let getterAbiName = ABINameGenerator.generateABIName( baseName: property.name, operation: "get", @@ -2679,33 +2697,39 @@ public class ExportSwift { // Optional case/raw enums use side-channel reading (Void return) getterReturnType = "" getterBody = """ - _extern_get(this: Int32(bitPattern: jsObject.id)) + \(getterAbiName)(this: Int32(bitPattern: jsObject.id)) return \(property.type.swiftType).bridgeJSLiftReturnFromSideChannel() """ } else if let abiType = liftingInfo.valueToLift { getterReturnType = " -> \(abiType.swiftType)" getterBody = """ - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = \(getterAbiName)(this: Int32(bitPattern: jsObject.id)) return \(property.type.swiftType).bridgeJSLiftReturn(ret) """ } else { getterReturnType = "" getterBody = """ - _extern_get(this: Int32(bitPattern: jsObject.id)) + \(getterAbiName)(this: Int32(bitPattern: jsObject.id)) return \(property.type.swiftType).bridgeJSLiftReturn() """ } + let getterExternDecl: DeclSyntax = """ + @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: getterAbiName)") + fileprivate func \(raw: getterAbiName)(this: Int32)\(raw: getterReturnType) + """ + if property.isReadonly { - return """ + return ( + """ var \(raw: property.name): \(raw: property.type.swiftType) { get { - @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: getterAbiName)") - func _extern_get(this: Int32)\(raw: getterReturnType) \(raw: getterBody) } } - """ + """, + [getterExternDecl] + ) } else { let loweringInfo = try property.type.loweringParameterInfo(context: .exportSwift) @@ -2720,28 +2744,32 @@ public class ExportSwift { let wrappedParam = loweringInfo.loweredParameters[1].name setterBody = """ let (\(isSomeParam), \(wrappedParam)) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), \(isSomeParam): \(isSomeParam), \(wrappedParam): \(wrappedParam)) + \(setterAbiName)(this: Int32(bitPattern: jsObject.id), \(isSomeParam): \(isSomeParam), \(wrappedParam): \(wrappedParam)) """ } else { let paramName = loweringInfo.loweredParameters[0].name setterBody = - "_extern_set(this: Int32(bitPattern: jsObject.id), \(paramName): newValue.bridgeJSLowerParameter())" + "\(setterAbiName)(this: Int32(bitPattern: jsObject.id), \(paramName): newValue.bridgeJSLowerParameter())" } - return """ + let setterExternDecl: DeclSyntax = """ + @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: setterAbiName)") + fileprivate func \(raw: setterAbiName)(\(raw: setterParams)) + """ + + return ( + """ var \(raw: property.name): \(raw: property.type.swiftType) { get { - @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: getterAbiName)") - func _extern_get(this: Int32)\(raw: getterReturnType) \(raw: getterBody) } set { - @_extern(wasm, module: "\(raw: moduleName)", name: "\(raw: setterAbiName)") - func _extern_set(\(raw: setterParams)) \(raw: setterBody) } } - """ + """, + [getterExternDecl, setterExternDecl] + ) } } } diff --git a/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift b/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift index af4a59c9..39a735f0 100644 --- a/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift +++ b/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift @@ -175,7 +175,6 @@ public struct ImportTS { ) ), body: CodeBlockSyntax { - self.renderImportDecl() body } ) @@ -200,7 +199,6 @@ public struct ImportTS { effectSpecifiers: ImportTS.buildFunctionEffect(throws: true, async: false) ), bodyBuilder: { - self.renderImportDecl() body } ) @@ -228,6 +226,7 @@ public struct ImportTS { } builder.call(returnType: function.returnType) try builder.liftReturnValue(returnType: function.returnType) + topLevelDecls.append(builder.renderImportDecl()) return [ builder.renderThunkDecl( name: function.name, @@ -249,6 +248,7 @@ public struct ImportTS { } builder.call(returnType: method.returnType) try builder.liftReturnValue(returnType: method.returnType) + topLevelDecls.append(builder.renderImportDecl()) return [ builder.renderThunkDecl( name: method.name, @@ -266,6 +266,7 @@ public struct ImportTS { } builder.call(returnType: .jsObject(name)) builder.assignThis(returnType: .jsObject(name)) + topLevelDecls.append(builder.renderImportDecl()) return [ builder.renderConstructorDecl(parameters: constructor.parameters) ] @@ -279,11 +280,11 @@ public struct ImportTS { try builder.lowerParameter(param: Parameter(label: nil, name: "self", type: .jsObject(name))) builder.call(returnType: property.type) try builder.liftReturnValue(returnType: property.type) + topLevelDecls.append(builder.renderImportDecl()) return AccessorDeclSyntax( accessorSpecifier: .keyword(.get), effectSpecifiers: Self.buildAccessorEffect(throws: true, async: false), body: CodeBlockSyntax { - builder.renderImportDecl() builder.body } ) @@ -298,6 +299,7 @@ public struct ImportTS { try builder.lowerParameter(param: Parameter(label: nil, name: "self", type: .jsObject(name))) try builder.lowerParameter(param: newValue) builder.call(returnType: .void) + topLevelDecls.append(builder.renderImportDecl()) return builder.renderThunkDecl( name: "set\(property.name.capitalizedFirstLetter)", parameters: [newValue], From c4c3ad8a490796decb9853c992a6670ed1853c68 Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Thu, 27 Nov 2025 03:29:03 +0000 Subject: [PATCH 3/5] BridgeJS: Update snapshot tests --- .../ExportSwiftTests/DefaultParameters.swift | 53 ++-- .../ExportSwiftTests/EnumNamespace.swift | 53 ++-- .../ExportSwiftTests/Namespaces.swift | 53 ++-- .../ExportSwiftTests/Optionals.swift | 36 +-- .../ExportSwiftTests/PropertyTypes.swift | 19 +- .../ExportSwiftTests/Protocol.swift | 243 ++++++++++-------- .../ExportSwiftTests/StaticFunctions.swift | 19 +- .../ExportSwiftTests/StaticProperties.swift | 19 +- .../ExportSwiftTests/SwiftClass.swift | 53 ++-- .../ExportSwiftTests/SwiftClosure.swift | 153 ++++++----- .../ImportTSTests/ArrayParameter.swift | 51 ++-- .../__Snapshots__/ImportTSTests/Async.swift | 119 +++++---- .../ImportTSTests/Interface.swift | 51 ++-- .../ImportTSTests/InvalidPropertyNames.swift | 187 +++++++------- .../ImportTSTests/MultipleImportedTypes.swift | 238 +++++++++-------- .../ImportTSTests/PrimitiveParameters.swift | 17 +- .../ImportTSTests/PrimitiveReturn.swift | 34 +-- .../ImportTSTests/StringParameter.swift | 34 +-- .../ImportTSTests/StringReturn.swift | 17 +- .../ImportTSTests/TS2SkeletonLike.swift | 119 +++++---- .../ImportTSTests/TypeAlias.swift | 17 +- .../ImportTSTests/TypeScriptClass.swift | 102 ++++---- .../VoidParameterVoidReturn.swift | 17 +- 23 files changed, 915 insertions(+), 789 deletions(-) diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/DefaultParameters.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/DefaultParameters.swift index 675f7bfb..525782c4 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/DefaultParameters.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/DefaultParameters.swift @@ -206,18 +206,19 @@ public func _bjs_DefaultGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension DefaultGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_DefaultGreeter_wrap") - func _bjs_DefaultGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_DefaultGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_DefaultGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_DefaultGreeter_wrap") +fileprivate func _bjs_DefaultGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_DefaultGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_EmptyGreeter_init") @_cdecl("bjs_EmptyGreeter_init") public func _bjs_EmptyGreeter_init() -> UnsafeMutableRawPointer { @@ -237,18 +238,19 @@ public func _bjs_EmptyGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension EmptyGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_EmptyGreeter_wrap") - func _bjs_EmptyGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_EmptyGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_EmptyGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_EmptyGreeter_wrap") +fileprivate func _bjs_EmptyGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_EmptyGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_ConstructorDefaults_init") @_cdecl("bjs_ConstructorDefaults_init") public func _bjs_ConstructorDefaults_init(nameBytes: Int32, nameLength: Int32, count: Int32, enabled: Int32, status: Int32, tagIsSome: Int32, tagBytes: Int32, tagLength: Int32) -> UnsafeMutableRawPointer { @@ -384,14 +386,15 @@ public func _bjs_ConstructorDefaults_deinit(pointer: UnsafeMutableRawPointer) { extension ConstructorDefaults: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_ConstructorDefaults_wrap") - func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_ConstructorDefaults_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_ConstructorDefaults_wrap") +fileprivate func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/EnumNamespace.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/EnumNamespace.swift index ca201f3d..cf497750 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/EnumNamespace.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/EnumNamespace.swift @@ -120,18 +120,19 @@ public func _bjs_Converter_deinit(pointer: UnsafeMutableRawPointer) { extension Utils.Converter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Converter_wrap") - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Converter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Converter_wrap") +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_HTTPServer_init") @_cdecl("bjs_HTTPServer_init") public func _bjs_HTTPServer_init() -> UnsafeMutableRawPointer { @@ -161,18 +162,19 @@ public func _bjs_HTTPServer_deinit(pointer: UnsafeMutableRawPointer) { extension Networking.API.HTTPServer: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_HTTPServer_wrap") - func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_HTTPServer_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_HTTPServer_wrap") +fileprivate func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_TestServer_init") @_cdecl("bjs_TestServer_init") public func _bjs_TestServer_init() -> UnsafeMutableRawPointer { @@ -202,14 +204,15 @@ public func _bjs_TestServer_deinit(pointer: UnsafeMutableRawPointer) { extension Internal.TestServer: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_TestServer_wrap") - func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_TestServer_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_TestServer_wrap") +fileprivate func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Namespaces.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Namespaces.swift index f868fa11..3e771446 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Namespaces.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Namespaces.swift @@ -58,18 +58,19 @@ public func _bjs_Greeter_deinit(pointer: UnsafeMutableRawPointer) { extension Greeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Greeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_Converter_init") @_cdecl("bjs_Converter_init") public func _bjs_Converter_init() -> UnsafeMutableRawPointer { @@ -100,18 +101,19 @@ public func _bjs_Converter_deinit(pointer: UnsafeMutableRawPointer) { extension Converter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Converter_wrap") - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Converter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Converter_wrap") +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_UUID_uuidString") @_cdecl("bjs_UUID_uuidString") public func _bjs_UUID_uuidString(_self: UnsafeMutableRawPointer) -> Void { @@ -131,14 +133,15 @@ public func _bjs_UUID_deinit(pointer: UnsafeMutableRawPointer) { extension UUID: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_UUID_wrap") - func _bjs_UUID_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_UUID_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_UUID_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_UUID_wrap") +fileprivate func _bjs_UUID_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_UUID_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Optionals.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Optionals.swift index 9cd9e1f6..0834943e 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Optionals.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Optionals.swift @@ -232,18 +232,19 @@ public func _bjs_Greeter_deinit(pointer: UnsafeMutableRawPointer) { extension Greeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Greeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_OptionalPropertyHolder_init") @_cdecl("bjs_OptionalPropertyHolder_init") public func _bjs_OptionalPropertyHolder_init() -> UnsafeMutableRawPointer { @@ -326,14 +327,15 @@ public func _bjs_OptionalPropertyHolder_deinit(pointer: UnsafeMutableRawPointer) extension OptionalPropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_OptionalPropertyHolder_wrap") - func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_OptionalPropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_OptionalPropertyHolder_wrap") +fileprivate func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/PropertyTypes.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/PropertyTypes.swift index 822e5846..f622e3ac 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/PropertyTypes.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/PropertyTypes.swift @@ -334,14 +334,15 @@ public func _bjs_PropertyHolder_deinit(pointer: UnsafeMutableRawPointer) { extension PropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_PropertyHolder_wrap") - func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_PropertyHolder_wrap") +fileprivate func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Protocol.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Protocol.swift index d68ef81d..ef6160d2 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Protocol.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/Protocol.swift @@ -10,235 +10,169 @@ struct AnyMyViewControllerDelegate: MyViewControllerDelegate, _BridgedSwiftProto let jsObject: JSObject func onSomethingHappened() { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onSomethingHappened") - func _extern_onSomethingHappened(this: Int32) _extern_onSomethingHappened(this: Int32(bitPattern: jsObject.id)) } func onValueChanged(_ value: String) { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onValueChanged") - func _extern_onValueChanged(this: Int32, value: Int32) _extern_onValueChanged(this: Int32(bitPattern: jsObject.id), value: value.bridgeJSLowerParameter()) } func onCountUpdated(count: Int) -> Bool { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onCountUpdated") - func _extern_onCountUpdated(this: Int32, count: Int32) -> Int32 let ret = _extern_onCountUpdated(this: Int32(bitPattern: jsObject.id), count: count.bridgeJSLowerParameter()) return Bool.bridgeJSLiftReturn(ret) } func onLabelUpdated(_ prefix: String, _ suffix: String) { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onLabelUpdated") - func _extern_onLabelUpdated(this: Int32, prefix: Int32, suffix: Int32) _extern_onLabelUpdated(this: Int32(bitPattern: jsObject.id), prefix: prefix.bridgeJSLowerParameter(), suffix: suffix.bridgeJSLowerParameter()) } func isCountEven() -> Bool { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_isCountEven") - func _extern_isCountEven(this: Int32) -> Int32 let ret = _extern_isCountEven(this: Int32(bitPattern: jsObject.id)) return Bool.bridgeJSLiftReturn(ret) } func onHelperUpdated(_ helper: Helper) { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onHelperUpdated") - func _extern_onHelperUpdated(this: Int32, helper: UnsafeMutableRawPointer) _extern_onHelperUpdated(this: Int32(bitPattern: jsObject.id), helper: helper.bridgeJSLowerParameter()) } func createHelper() -> Helper { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createHelper") - func _extern_createHelper(this: Int32) -> UnsafeMutableRawPointer let ret = _extern_createHelper(this: Int32(bitPattern: jsObject.id)) return Helper.bridgeJSLiftReturn(ret) } func onOptionalHelperUpdated(_ helper: Optional) { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onOptionalHelperUpdated") - func _extern_onOptionalHelperUpdated(this: Int32, helperIsSome: Int32, helperPointer: UnsafeMutableRawPointer) let (helperIsSome, helperPointer) = helper.bridgeJSLowerParameterWithPresence() _extern_onOptionalHelperUpdated(this: Int32(bitPattern: jsObject.id), helperIsSome: helperIsSome, helperPointer: helperPointer) } func createOptionalHelper() -> Optional { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createOptionalHelper") - func _extern_createOptionalHelper(this: Int32) -> UnsafeMutableRawPointer let ret = _extern_createOptionalHelper(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } func createEnum() -> ExampleEnum { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createEnum") - func _extern_createEnum(this: Int32) -> Int32 let ret = _extern_createEnum(this: Int32(bitPattern: jsObject.id)) return ExampleEnum.bridgeJSLiftReturn(ret) } func handleResult(_ result: Result) { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_handleResult") - func _extern_handleResult(this: Int32, result: Int32) _extern_handleResult(this: Int32(bitPattern: jsObject.id), result: result.bridgeJSLowerParameter()) } func getResult() -> Result { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_getResult") - func _extern_getResult(this: Int32) -> Int32 let ret = _extern_getResult(this: Int32(bitPattern: jsObject.id)) return Result.bridgeJSLiftReturn(ret) } var eventCount: Int { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_eventCount_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_eventCount_get(this: Int32(bitPattern: jsObject.id)) return Int.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_eventCount_set") - func _extern_set(this: Int32, value: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) + bjs_MyViewControllerDelegate_eventCount_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) } } var delegateName: String { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_delegateName_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_delegateName_get(this: Int32(bitPattern: jsObject.id)) return String.bridgeJSLiftReturn(ret) } } var optionalName: Optional { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalName_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_MyViewControllerDelegate_optionalName_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalName_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_MyViewControllerDelegate_optionalName_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var optionalRawEnum: Optional { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalRawEnum_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_MyViewControllerDelegate_optionalRawEnum_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalRawEnum_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_MyViewControllerDelegate_optionalRawEnum_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var rawStringEnum: ExampleEnum { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_rawStringEnum_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_rawStringEnum_get(this: Int32(bitPattern: jsObject.id)) return ExampleEnum.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_rawStringEnum_set") - func _extern_set(this: Int32, value: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) + bjs_MyViewControllerDelegate_rawStringEnum_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) } } var result: Result { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_result_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_result_get(this: Int32(bitPattern: jsObject.id)) return Result.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_result_set") - func _extern_set(this: Int32, caseId: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), caseId: newValue.bridgeJSLowerParameter()) + bjs_MyViewControllerDelegate_result_set(this: Int32(bitPattern: jsObject.id), caseId: newValue.bridgeJSLowerParameter()) } } var optionalResult: Optional { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalResult_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_optionalResult_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalResult_set") - func _extern_set(this: Int32, isSome: Int32, caseId: Int32) let (isSome, caseId) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, caseId: caseId) + bjs_MyViewControllerDelegate_optionalResult_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, caseId: caseId) } } var direction: Direction { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_direction_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_direction_get(this: Int32(bitPattern: jsObject.id)) return Direction.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_direction_set") - func _extern_set(this: Int32, value: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) + bjs_MyViewControllerDelegate_direction_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) } } var directionOptional: Optional { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_directionOptional_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_directionOptional_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_directionOptional_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_MyViewControllerDelegate_directionOptional_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var priority: Priority { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priority_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_MyViewControllerDelegate_priority_get(this: Int32(bitPattern: jsObject.id)) return Priority.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priority_set") - func _extern_set(this: Int32, value: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) + bjs_MyViewControllerDelegate_priority_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) } } var priorityOptional: Optional { get { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priorityOptional_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_MyViewControllerDelegate_priorityOptional_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priorityOptional_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_MyViewControllerDelegate_priorityOptional_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } @@ -247,6 +181,105 @@ struct AnyMyViewControllerDelegate: MyViewControllerDelegate, _BridgedSwiftProto } } +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onSomethingHappened") +fileprivate func _extern_onSomethingHappened(this: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onValueChanged") +fileprivate func _extern_onValueChanged(this: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onCountUpdated") +fileprivate func _extern_onCountUpdated(this: Int32, count: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onLabelUpdated") +fileprivate func _extern_onLabelUpdated(this: Int32, prefix: Int32, suffix: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_isCountEven") +fileprivate func _extern_isCountEven(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onHelperUpdated") +fileprivate func _extern_onHelperUpdated(this: Int32, helper: UnsafeMutableRawPointer) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createHelper") +fileprivate func _extern_createHelper(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_onOptionalHelperUpdated") +fileprivate func _extern_onOptionalHelperUpdated(this: Int32, helperIsSome: Int32, helperPointer: UnsafeMutableRawPointer) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createOptionalHelper") +fileprivate func _extern_createOptionalHelper(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_createEnum") +fileprivate func _extern_createEnum(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_handleResult") +fileprivate func _extern_handleResult(this: Int32, result: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_getResult") +fileprivate func _extern_getResult(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_eventCount_get") +fileprivate func bjs_MyViewControllerDelegate_eventCount_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_eventCount_set") +fileprivate func bjs_MyViewControllerDelegate_eventCount_set(this: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_delegateName_get") +fileprivate func bjs_MyViewControllerDelegate_delegateName_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalName_get") +fileprivate func bjs_MyViewControllerDelegate_optionalName_get(this: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalName_set") +fileprivate func bjs_MyViewControllerDelegate_optionalName_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalRawEnum_get") +fileprivate func bjs_MyViewControllerDelegate_optionalRawEnum_get(this: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalRawEnum_set") +fileprivate func bjs_MyViewControllerDelegate_optionalRawEnum_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_rawStringEnum_get") +fileprivate func bjs_MyViewControllerDelegate_rawStringEnum_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_rawStringEnum_set") +fileprivate func bjs_MyViewControllerDelegate_rawStringEnum_set(this: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_result_get") +fileprivate func bjs_MyViewControllerDelegate_result_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_result_set") +fileprivate func bjs_MyViewControllerDelegate_result_set(this: Int32, caseId: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalResult_get") +fileprivate func bjs_MyViewControllerDelegate_optionalResult_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_optionalResult_set") +fileprivate func bjs_MyViewControllerDelegate_optionalResult_set(this: Int32, isSome: Int32, caseId: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_direction_get") +fileprivate func bjs_MyViewControllerDelegate_direction_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_direction_set") +fileprivate func bjs_MyViewControllerDelegate_direction_set(this: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_directionOptional_get") +fileprivate func bjs_MyViewControllerDelegate_directionOptional_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_directionOptional_set") +fileprivate func bjs_MyViewControllerDelegate_directionOptional_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priority_get") +fileprivate func bjs_MyViewControllerDelegate_priority_get(this: Int32) -> Int32 + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priority_set") +fileprivate func bjs_MyViewControllerDelegate_priority_set(this: Int32, value: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priorityOptional_get") +fileprivate func bjs_MyViewControllerDelegate_priorityOptional_get(this: Int32) + +@_extern(wasm, module: "TestModule", name: "bjs_MyViewControllerDelegate_priorityOptional_set") +fileprivate func bjs_MyViewControllerDelegate_priorityOptional_set(this: Int32, isSome: Int32, value: Int32) + extension Direction: _BridgedSwiftCaseEnum { @_spi(BridgeJS) @_transparent public consuming func bridgeJSLowerParameter() -> Int32 { return bridgeJSRawValue @@ -399,18 +432,19 @@ public func _bjs_Helper_deinit(pointer: UnsafeMutableRawPointer) { extension Helper: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Helper_wrap") - func _bjs_Helper_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Helper_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Helper_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Helper_wrap") +fileprivate func _bjs_Helper_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Helper_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_MyViewController_init") @_cdecl("bjs_MyViewController_init") public func _bjs_MyViewController_init(delegate: Int32) -> UnsafeMutableRawPointer { @@ -536,14 +570,15 @@ public func _bjs_MyViewController_deinit(pointer: UnsafeMutableRawPointer) { extension MyViewController: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_MyViewController_wrap") - func _bjs_MyViewController_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_MyViewController_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_MyViewController_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_MyViewController_wrap") +fileprivate func _bjs_MyViewController_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_MyViewController_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticFunctions.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticFunctions.swift index 7aa91b91..81ea282f 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticFunctions.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticFunctions.swift @@ -179,14 +179,15 @@ public func _bjs_MathUtils_deinit(pointer: UnsafeMutableRawPointer) { extension MathUtils: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_MathUtils_wrap") - func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_MathUtils_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_MathUtils_wrap") +fileprivate func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticProperties.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticProperties.swift index 72d561a0..e34f26f8 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticProperties.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/StaticProperties.swift @@ -325,14 +325,15 @@ public func _bjs_PropertyClass_deinit(pointer: UnsafeMutableRawPointer) { extension PropertyClass: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_PropertyClass_wrap") - func _bjs_PropertyClass_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PropertyClass_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PropertyClass_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_PropertyClass_wrap") +fileprivate func _bjs_PropertyClass_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PropertyClass_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClass.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClass.swift index 81f5ccf4..097f73a9 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClass.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClass.swift @@ -77,18 +77,19 @@ public func _bjs_Greeter_deinit(pointer: UnsafeMutableRawPointer) { extension Greeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Greeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Greeter_wrap") +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PublicGreeter_deinit") @_cdecl("bjs_PublicGreeter_deinit") public func _bjs_PublicGreeter_deinit(pointer: UnsafeMutableRawPointer) { @@ -97,18 +98,19 @@ public func _bjs_PublicGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension PublicGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { public var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_PublicGreeter_wrap") - func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PublicGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_PublicGreeter_wrap") +fileprivate func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PackageGreeter_deinit") @_cdecl("bjs_PackageGreeter_deinit") public func _bjs_PackageGreeter_deinit(pointer: UnsafeMutableRawPointer) { @@ -117,14 +119,15 @@ public func _bjs_PackageGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension PackageGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { package var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_PackageGreeter_wrap") - func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PackageGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_PackageGreeter_wrap") +fileprivate func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClosure.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClosure.swift index 4b1b404f..c036a797 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClosure.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ExportSwiftTests/SwiftClosure.swift @@ -6,6 +6,9 @@ @_spi(BridgeJS) import JavaScriptKit +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule10HttpStatusO_Si") +fileprivate func invoke_js_callback_TestModule_10TestModule10HttpStatusO_Si(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule10HttpStatusO_Si: _BridgedSwiftClosureBox { let closure: (HttpStatus) -> Int init(_ closure: @escaping (HttpStatus) -> Int) { @@ -23,13 +26,11 @@ private enum _BJS_Closure_10TestModule10HttpStatusO_Si { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule10HttpStatusO_Si") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule10HttpStatusO_Si(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Int.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -46,6 +47,9 @@ public func _invoke_swift_closure_TestModule_10TestModule10HttpStatusO_Si(boxPtr #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule5ThemeO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModule5ThemeO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule5ThemeO_SS: _BridgedSwiftClosureBox { let closure: (Theme) -> String init(_ closure: @escaping (Theme) -> String) { @@ -63,13 +67,11 @@ private enum _BJS_Closure_10TestModule5ThemeO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule5ThemeO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule5ThemeO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -86,6 +88,9 @@ public func _invoke_swift_closure_TestModule_10TestModule5ThemeO_SS(boxPtr: Unsa #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule5ThemeO_Sb") +fileprivate func invoke_js_callback_TestModule_10TestModule5ThemeO_Sb(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule5ThemeO_Sb: _BridgedSwiftClosureBox { let closure: (Theme) -> Bool init(_ closure: @escaping (Theme) -> Bool) { @@ -103,13 +108,11 @@ private enum _BJS_Closure_10TestModule5ThemeO_Sb { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule5ThemeO_Sb") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule5ThemeO_Sb(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Bool.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -126,6 +129,9 @@ public func _invoke_swift_closure_TestModule_10TestModule5ThemeO_Sb(boxPtr: Unsa #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule6PersonC_SS") +fileprivate func invoke_js_callback_TestModule_10TestModule6PersonC_SS(_: Int32, _: UnsafeMutableRawPointer) -> Int32 + private final class _BJS_ClosureBox_10TestModule6PersonC_SS: _BridgedSwiftClosureBox { let closure: (Person) -> String init(_ closure: @escaping (Person) -> String) { @@ -143,13 +149,11 @@ private enum _BJS_Closure_10TestModule6PersonC_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule6PersonC_SS") - func _invoke(_: Int32, _: UnsafeMutableRawPointer) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule6PersonC_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -166,6 +170,9 @@ public func _invoke_swift_closure_TestModule_10TestModule6PersonC_SS(boxPtr: Uns #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9APIResultO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModule9APIResultO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule9APIResultO_SS: _BridgedSwiftClosureBox { let closure: (APIResult) -> String init(_ closure: @escaping (APIResult) -> String) { @@ -183,13 +190,11 @@ private enum _BJS_Closure_10TestModule9APIResultO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9APIResultO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule9APIResultO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -206,6 +211,9 @@ public func _invoke_swift_closure_TestModule_10TestModule9APIResultO_SS(boxPtr: #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9DirectionO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModule9DirectionO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule9DirectionO_SS: _BridgedSwiftClosureBox { let closure: (Direction) -> String init(_ closure: @escaping (Direction) -> String) { @@ -223,13 +231,11 @@ private enum _BJS_Closure_10TestModule9DirectionO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9DirectionO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule9DirectionO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -246,6 +252,9 @@ public func _invoke_swift_closure_TestModule_10TestModule9DirectionO_SS(boxPtr: #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9DirectionO_Sb") +fileprivate func invoke_js_callback_TestModule_10TestModule9DirectionO_Sb(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModule9DirectionO_Sb: _BridgedSwiftClosureBox { let closure: (Direction) -> Bool init(_ closure: @escaping (Direction) -> Bool) { @@ -263,13 +272,11 @@ private enum _BJS_Closure_10TestModule9DirectionO_Sb { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModule9DirectionO_Sb") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModule9DirectionO_Sb(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Bool.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -286,6 +293,9 @@ public func _invoke_swift_closure_TestModule_10TestModule9DirectionO_Sb(boxPtr: #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSS_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSS_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSS_SS: _BridgedSwiftClosureBox { let closure: (String) -> String init(_ closure: @escaping (String) -> String) { @@ -303,13 +313,11 @@ private enum _BJS_Closure_10TestModuleSS_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSS_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_TestModule_10TestModuleSS_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -326,6 +334,9 @@ public func _invoke_swift_closure_TestModule_10TestModuleSS_SS(boxPtr: UnsafeMut #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq5ThemeO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSq5ThemeO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSq5ThemeO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -343,14 +354,12 @@ private enum _BJS_Closure_10TestModuleSq5ThemeO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq5ThemeO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_TestModule_10TestModuleSq5ThemeO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -367,6 +376,9 @@ public func _invoke_swift_closure_TestModule_10TestModuleSq5ThemeO_SS(boxPtr: Un #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq6PersonCSqSSSqSd_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSq6PersonCSqSSSqSd_SS(_: Int32, _: Int32, _: UnsafeMutableRawPointer, _: Int32, _: Int32, _: Int32, _: Float64) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSq6PersonCSqSSSqSd_SS: _BridgedSwiftClosureBox { let closure: (Optional, Optional, Optional) -> String init(_ closure: @escaping (Optional, Optional, Optional) -> String) { @@ -384,16 +396,14 @@ private enum _BJS_Closure_10TestModuleSq6PersonCSqSSSqSd_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0, param1, param2 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq6PersonCSqSSSqSd_SS") - func _invoke(_: Int32, _: Int32, _: UnsafeMutableRawPointer, _: Int32, _: Int32, _: Int32, _: Float64) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithRetain() let (param1IsSome, param1Value) = param1.bridgeJSLowerParameterWithPresence() let (param2IsSome, param2Value) = param2.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value, param1IsSome, param1Value, param2IsSome, param2Value) +let resultId = invoke_js_callback_TestModule_10TestModuleSq6PersonCSqSSSqSd_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value, param1IsSome, param1Value, param2IsSome, param2Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -410,6 +420,9 @@ public func _invoke_swift_closure_TestModule_10TestModuleSq6PersonCSqSSSqSd_SS(b #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq6PersonC_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSq6PersonC_SS(_: Int32, _: Int32, _: UnsafeMutableRawPointer) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSq6PersonC_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -427,14 +440,12 @@ private enum _BJS_Closure_10TestModuleSq6PersonC_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq6PersonC_SS") - func _invoke(_: Int32, _: Int32, _: UnsafeMutableRawPointer) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithRetain() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_TestModule_10TestModuleSq6PersonC_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -451,6 +462,9 @@ public func _invoke_swift_closure_TestModule_10TestModuleSq6PersonC_SS(boxPtr: U #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq9APIResultO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSq9APIResultO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSq9APIResultO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -468,14 +482,12 @@ private enum _BJS_Closure_10TestModuleSq9APIResultO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq9APIResultO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_TestModule_10TestModuleSq9APIResultO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -492,6 +504,9 @@ public func _invoke_swift_closure_TestModule_10TestModuleSq9APIResultO_SS(boxPtr #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq9DirectionO_SS") +fileprivate func invoke_js_callback_TestModule_10TestModuleSq9DirectionO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_10TestModuleSq9DirectionO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -509,14 +524,12 @@ private enum _BJS_Closure_10TestModuleSq9DirectionO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_TestModule_10TestModuleSq9DirectionO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_TestModule_10TestModuleSq9DirectionO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -684,18 +697,19 @@ public func _bjs_Person_deinit(pointer: UnsafeMutableRawPointer) { extension Person: ConvertibleToJSValue, _BridgedSwiftHeapObject { public var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_Person_wrap") - func _bjs_Person_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Person_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Person_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_Person_wrap") +fileprivate func _bjs_Person_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Person_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_TestProcessor_init") @_cdecl("bjs_TestProcessor_init") public func _bjs_TestProcessor_init(transform: Int32) -> UnsafeMutableRawPointer { @@ -902,14 +916,15 @@ public func _bjs_TestProcessor_deinit(pointer: UnsafeMutableRawPointer) { extension TestProcessor: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "TestModule", name: "bjs_TestProcessor_wrap") - func _bjs_TestProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_TestProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_TestProcessor_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "TestModule", name: "bjs_TestProcessor_wrap") +fileprivate func _bjs_TestProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_TestProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift index 96fac13d..6a624246 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift @@ -6,45 +6,48 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkArray") +func bjs_checkArray(_ a: Int32) -> Void +#else +func bjs_checkArray(_ a: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkArray(_ a: JSObject) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkArray") - func bjs_checkArray(_ a: Int32) -> Void - #else - func bjs_checkArray(_ a: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkArray(a.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkArrayWithLength") +func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void +#else +func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkArrayWithLength(_ a: JSObject, _ b: Double) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkArrayWithLength") - func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void - #else - func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkArrayWithLength(a.bridgeJSLowerParameter(), b.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkArray") +func bjs_checkArray(_ a: Int32) -> Void +#else +func bjs_checkArray(_ a: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkArray(_ a: JSObject) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkArray") - func bjs_checkArray(_ a: Int32) -> Void - #else - func bjs_checkArray(_ a: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkArray(a.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift index a8ecf8d5..36ad4cd3 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncReturnVoid") +func bjs_asyncReturnVoid() -> Int32 +#else +func bjs_asyncReturnVoid() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncReturnVoid() throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncReturnVoid") - func bjs_asyncReturnVoid() -> Int32 - #else - func bjs_asyncReturnVoid() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncReturnVoid() if let error = _swift_js_take_exception() { throw error @@ -22,15 +23,16 @@ func asyncReturnVoid() throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripInt") +func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 +#else +func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripInt(_ v: Double) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripInt") - func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 - #else - func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripInt(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -38,15 +40,16 @@ func asyncRoundTripInt(_ v: Double) throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripString") +func bjs_asyncRoundTripString(_ v: Int32) -> Int32 +#else +func bjs_asyncRoundTripString(_ v: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripString(_ v: String) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripString") - func bjs_asyncRoundTripString(_ v: Int32) -> Int32 - #else - func bjs_asyncRoundTripString(_ v: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripString(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -54,15 +57,16 @@ func asyncRoundTripString(_ v: String) throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripBool") +func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 +#else +func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripBool(_ v: Bool) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripBool") - func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 - #else - func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripBool(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -70,15 +74,16 @@ func asyncRoundTripBool(_ v: Bool) throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripFloat") +func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 +#else +func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripFloat(_ v: Double) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripFloat") - func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 - #else - func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripFloat(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -86,15 +91,16 @@ func asyncRoundTripFloat(_ v: Double) throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripDouble") +func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 +#else +func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripDouble(_ v: Double) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripDouble") - func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 - #else - func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripDouble(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -102,15 +108,16 @@ func asyncRoundTripDouble(_ v: Double) throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_asyncRoundTripJSObject") +func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 +#else +func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func asyncRoundTripJSObject(_ v: JSObject) throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripJSObject") - func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 - #else - func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_asyncRoundTripJSObject(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift index 68f14808..e0571d5f 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_returnAnimatable") +func bjs_returnAnimatable() -> Int32 +#else +func bjs_returnAnimatable() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func returnAnimatable() throws(JSException) -> Animatable { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_returnAnimatable") - func bjs_returnAnimatable() -> Int32 - #else - func bjs_returnAnimatable() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_returnAnimatable() if let error = _swift_js_take_exception() { throw error @@ -22,6 +23,24 @@ func returnAnimatable() throws(JSException) -> Animatable { return Animatable.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Animatable_animate") +func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 +#else +func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Animatable_getAnimations") +func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 +#else +func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct Animatable: _JSBridgedClass { let jsObject: JSObject @@ -30,14 +49,6 @@ struct Animatable: _JSBridgedClass { } func animate(_ keyframes: JSObject, _ options: JSObject) throws(JSException) -> JSObject { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Animatable_animate") - func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 - #else - func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Animatable_animate(self.bridgeJSLowerParameter(), keyframes.bridgeJSLowerParameter(), options.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -46,14 +57,6 @@ struct Animatable: _JSBridgedClass { } func getAnimations(_ options: JSObject) throws(JSException) -> JSObject { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Animatable_getAnimations") - func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 - #else - func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Animatable_getAnimations(self.bridgeJSLowerParameter(), options.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift index 7e35f921..2d04f47e 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createArrayBuffer") +func bjs_createArrayBuffer() -> Int32 +#else +func bjs_createArrayBuffer() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createArrayBuffer() throws(JSException) -> ArrayBufferLike { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createArrayBuffer") - func bjs_createArrayBuffer() -> Int32 - #else - func bjs_createArrayBuffer() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createArrayBuffer() if let error = _swift_js_take_exception() { throw error @@ -22,15 +23,16 @@ func createArrayBuffer() throws(JSException) -> ArrayBufferLike { return ArrayBufferLike.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createWeirdObject") +func bjs_createWeirdObject() -> Int32 +#else +func bjs_createWeirdObject() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createWeirdObject() throws(JSException) -> WeirdNaming { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createWeirdObject") - func bjs_createWeirdObject() -> Int32 - #else - func bjs_createWeirdObject() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createWeirdObject() if let error = _swift_js_take_exception() { throw error @@ -38,6 +40,24 @@ func createWeirdObject() throws(JSException) -> WeirdNaming { return WeirdNaming.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_byteLength_get") +func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 +#else +func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_slice") +func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 +#else +func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct ArrayBufferLike: _JSBridgedClass { let jsObject: JSObject @@ -47,14 +67,6 @@ struct ArrayBufferLike: _JSBridgedClass { var byteLength: Double { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_byteLength_get") - func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 - #else - func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_ArrayBufferLike_byteLength_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -64,14 +76,6 @@ struct ArrayBufferLike: _JSBridgedClass { } func slice(_ begin: Double, _ end: Double) throws(JSException) -> ArrayBufferLike { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_slice") - func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 - #else - func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_ArrayBufferLike_slice(self.bridgeJSLowerParameter(), begin.bridgeJSLowerParameter(), end.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -81,6 +85,69 @@ struct ArrayBufferLike: _JSBridgedClass { } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_get") +func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 +#else +func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_set") +func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void +#else +func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_get") +func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 +#else +func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_set") +func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void +#else +func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_get") +func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 +#else +func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_set") +func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void +#else +func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_WeirdNaming_as") +func bjs_WeirdNaming_as(_ self: Int32) -> Void +#else +func bjs_WeirdNaming_as(_ self: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + struct WeirdNaming: _JSBridgedClass { let jsObject: JSObject @@ -90,14 +157,6 @@ struct WeirdNaming: _JSBridgedClass { var normalProperty: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_get") - func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 - #else - func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_WeirdNaming_normalProperty_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -107,14 +166,6 @@ struct WeirdNaming: _JSBridgedClass { } func setNormalProperty(_ newValue: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_set") - func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void - #else - func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_WeirdNaming_normalProperty_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -123,14 +174,6 @@ struct WeirdNaming: _JSBridgedClass { var `for`: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_get") - func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 - #else - func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_WeirdNaming_for_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -140,14 +183,6 @@ struct WeirdNaming: _JSBridgedClass { } func setFor(_ newValue: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_set") - func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void - #else - func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_WeirdNaming_for_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -156,14 +191,6 @@ struct WeirdNaming: _JSBridgedClass { var `Any`: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_get") - func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 - #else - func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_WeirdNaming_Any_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -173,14 +200,6 @@ struct WeirdNaming: _JSBridgedClass { } func setAny(_ newValue: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_set") - func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void - #else - func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_WeirdNaming_Any_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -188,14 +207,6 @@ struct WeirdNaming: _JSBridgedClass { } func `as`() throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_as") - func bjs_WeirdNaming_as(_ self: Int32) -> Void - #else - func bjs_WeirdNaming_as(_ self: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_WeirdNaming_as(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift index 810df368..28838215 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createDatabaseConnection") +func bjs_createDatabaseConnection(_ config: Int32) -> Int32 +#else +func bjs_createDatabaseConnection(_ config: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createDatabaseConnection(_ config: JSObject) throws(JSException) -> DatabaseConnection { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createDatabaseConnection") - func bjs_createDatabaseConnection(_ config: Int32) -> Int32 - #else - func bjs_createDatabaseConnection(_ config: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createDatabaseConnection(config.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -22,15 +23,16 @@ func createDatabaseConnection(_ config: JSObject) throws(JSException) -> Databas return DatabaseConnection.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createLogger") +func bjs_createLogger(_ level: Int32) -> Int32 +#else +func bjs_createLogger(_ level: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createLogger(_ level: String) throws(JSException) -> Logger { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createLogger") - func bjs_createLogger(_ level: Int32) -> Int32 - #else - func bjs_createLogger(_ level: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createLogger(level.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -38,15 +40,16 @@ func createLogger(_ level: String) throws(JSException) -> Logger { return Logger.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_getConfigManager") +func bjs_getConfigManager() -> Int32 +#else +func bjs_getConfigManager() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func getConfigManager() throws(JSException) -> ConfigManager { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_getConfigManager") - func bjs_getConfigManager() -> Int32 - #else - func bjs_getConfigManager() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_getConfigManager() if let error = _swift_js_take_exception() { throw error @@ -54,6 +57,51 @@ func getConfigManager() throws(JSException) -> ConfigManager { return ConfigManager.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_isConnected_get") +func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 +#else +func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_get") +func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 +#else +func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_set") +func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void +#else +func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connect") +func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void +#else +func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_execute") +func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 +#else +func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct DatabaseConnection: _JSBridgedClass { let jsObject: JSObject @@ -63,14 +111,6 @@ struct DatabaseConnection: _JSBridgedClass { var isConnected: Bool { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_isConnected_get") - func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 - #else - func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_DatabaseConnection_isConnected_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -81,14 +121,6 @@ struct DatabaseConnection: _JSBridgedClass { var connectionTimeout: Double { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_get") - func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 - #else - func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_DatabaseConnection_connectionTimeout_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -98,14 +130,6 @@ struct DatabaseConnection: _JSBridgedClass { } func setConnectionTimeout(_ newValue: Double) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_set") - func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void - #else - func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_DatabaseConnection_connectionTimeout_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -113,14 +137,6 @@ struct DatabaseConnection: _JSBridgedClass { } func connect(_ url: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connect") - func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void - #else - func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_DatabaseConnection_connect(self.bridgeJSLowerParameter(), url.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -128,14 +144,6 @@ struct DatabaseConnection: _JSBridgedClass { } func execute(_ query: String) throws(JSException) -> JSObject { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_execute") - func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 - #else - func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_DatabaseConnection_execute(self.bridgeJSLowerParameter(), query.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -145,6 +153,33 @@ struct DatabaseConnection: _JSBridgedClass { } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Logger_level_get") +func bjs_Logger_level_get(_ self: Int32) -> Int32 +#else +func bjs_Logger_level_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Logger_log") +func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void +#else +func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Logger_error") +func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void +#else +func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + struct Logger: _JSBridgedClass { let jsObject: JSObject @@ -154,14 +189,6 @@ struct Logger: _JSBridgedClass { var level: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Logger_level_get") - func bjs_Logger_level_get(_ self: Int32) -> Int32 - #else - func bjs_Logger_level_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Logger_level_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -171,14 +198,6 @@ struct Logger: _JSBridgedClass { } func log(_ message: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Logger_log") - func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void - #else - func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_Logger_log(self.bridgeJSLowerParameter(), message.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -186,14 +205,6 @@ struct Logger: _JSBridgedClass { } func error(_ message: String, _ error: JSObject) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Logger_error") - func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void - #else - func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_Logger_error(self.bridgeJSLowerParameter(), message.bridgeJSLowerParameter(), error.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -202,6 +213,33 @@ struct Logger: _JSBridgedClass { } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_ConfigManager_configPath_get") +func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 +#else +func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_ConfigManager_get") +func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 +#else +func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_ConfigManager_set") +func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void +#else +func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + struct ConfigManager: _JSBridgedClass { let jsObject: JSObject @@ -211,14 +249,6 @@ struct ConfigManager: _JSBridgedClass { var configPath: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_ConfigManager_configPath_get") - func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 - #else - func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_ConfigManager_configPath_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -228,14 +258,6 @@ struct ConfigManager: _JSBridgedClass { } func get(_ key: String) throws(JSException) -> JSObject { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_ConfigManager_get") - func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 - #else - func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_ConfigManager_get(self.bridgeJSLowerParameter(), key.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -244,14 +266,6 @@ struct ConfigManager: _JSBridgedClass { } func set(_ key: String, _ value: JSObject) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_ConfigManager_set") - func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void - #else - func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_ConfigManager_set(self.bridgeJSLowerParameter(), key.bridgeJSLowerParameter(), value.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift index 30f66a26..00d220ea 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_check") +func bjs_check(_ a: Float64, _ b: Int32) -> Void +#else +func bjs_check(_ a: Float64, _ b: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func check(_ a: Double, _ b: Bool) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_check") - func bjs_check(_ a: Float64, _ b: Int32) -> Void - #else - func bjs_check(_ a: Float64, _ b: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_check(a.bridgeJSLowerParameter(), b.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift index 29ba81c6..b3325062 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkNumber") +func bjs_checkNumber() -> Float64 +#else +func bjs_checkNumber() -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + func checkNumber() throws(JSException) -> Double { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkNumber") - func bjs_checkNumber() -> Float64 - #else - func bjs_checkNumber() -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_checkNumber() if let error = _swift_js_take_exception() { throw error @@ -22,15 +23,16 @@ func checkNumber() throws(JSException) -> Double { return Double.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkBoolean") +func bjs_checkBoolean() -> Int32 +#else +func bjs_checkBoolean() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func checkBoolean() throws(JSException) -> Bool { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkBoolean") - func bjs_checkBoolean() -> Int32 - #else - func bjs_checkBoolean() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_checkBoolean() if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift index 99215a30..fdaf7c49 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift @@ -6,30 +6,32 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkString") +func bjs_checkString(_ a: Int32) -> Void +#else +func bjs_checkString(_ a: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkString(_ a: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkString") - func bjs_checkString(_ a: Int32) -> Void - #else - func bjs_checkString(_ a: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkString(a.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkStringWithLength") +func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void +#else +func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkStringWithLength(_ a: String, _ b: Double) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkStringWithLength") - func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void - #else - func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkStringWithLength(a.bridgeJSLowerParameter(), b.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift index 05bb8aea..9edc42cf 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkString") +func bjs_checkString() -> Int32 +#else +func bjs_checkString() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func checkString() throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkString") - func bjs_checkString() -> Int32 - #else - func bjs_checkString() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_checkString() if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift index 0b17f13b..23e8ea7d 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createTS2Skeleton") +func bjs_createTS2Skeleton() -> Int32 +#else +func bjs_createTS2Skeleton() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createTS2Skeleton() throws(JSException) -> TypeScriptProcessor { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createTS2Skeleton") - func bjs_createTS2Skeleton() -> Int32 - #else - func bjs_createTS2Skeleton() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createTS2Skeleton() if let error = _swift_js_take_exception() { throw error @@ -22,15 +23,16 @@ func createTS2Skeleton() throws(JSException) -> TypeScriptProcessor { return TypeScriptProcessor.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_createCodeGenerator") +func bjs_createCodeGenerator(_ format: Int32) -> Int32 +#else +func bjs_createCodeGenerator(_ format: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createCodeGenerator(_ format: String) throws(JSException) -> CodeGenerator { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_createCodeGenerator") - func bjs_createCodeGenerator(_ format: Int32) -> Int32 - #else - func bjs_createCodeGenerator(_ format: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createCodeGenerator(format.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -38,6 +40,33 @@ func createCodeGenerator(_ format: String) throws(JSException) -> CodeGenerator return CodeGenerator.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_version_get") +func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 +#else +func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_convert") +func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 +#else +func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_validate") +func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 +#else +func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct TypeScriptProcessor: _JSBridgedClass { let jsObject: JSObject @@ -47,14 +76,6 @@ struct TypeScriptProcessor: _JSBridgedClass { var version: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_version_get") - func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 - #else - func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_TypeScriptProcessor_version_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -64,14 +85,6 @@ struct TypeScriptProcessor: _JSBridgedClass { } func convert(_ ts: String) throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_convert") - func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 - #else - func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_TypeScriptProcessor_convert(self.bridgeJSLowerParameter(), ts.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -80,14 +93,6 @@ struct TypeScriptProcessor: _JSBridgedClass { } func validate(_ ts: String) throws(JSException) -> Bool { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_validate") - func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 - #else - func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_TypeScriptProcessor_validate(self.bridgeJSLowerParameter(), ts.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -97,6 +102,24 @@ struct TypeScriptProcessor: _JSBridgedClass { } +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_CodeGenerator_outputFormat_get") +func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 +#else +func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_CodeGenerator_generate") +func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 +#else +func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct CodeGenerator: _JSBridgedClass { let jsObject: JSObject @@ -106,14 +129,6 @@ struct CodeGenerator: _JSBridgedClass { var outputFormat: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_CodeGenerator_outputFormat_get") - func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 - #else - func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_CodeGenerator_outputFormat_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -123,14 +138,6 @@ struct CodeGenerator: _JSBridgedClass { } func generate(_ input: JSObject) throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_CodeGenerator_generate") - func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 - #else - func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_CodeGenerator_generate(self.bridgeJSLowerParameter(), input.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift index d8b18463..d007caf6 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_checkSimple") +func bjs_checkSimple(_ a: Float64) -> Void +#else +func bjs_checkSimple(_ a: Float64) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func checkSimple(_ a: Double) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_checkSimple") - func bjs_checkSimple(_ a: Float64) -> Void - #else - func bjs_checkSimple(_ a: Float64) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_checkSimple(a.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift index 455b38bc..7fe7133d 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift @@ -6,6 +6,60 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_init") +func bjs_Greeter_init(_ name: Int32) -> Int32 +#else +func bjs_Greeter_init(_ name: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_name_get") +func bjs_Greeter_name_get(_ self: Int32) -> Int32 +#else +func bjs_Greeter_name_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_name_set") +func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void +#else +func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_age_get") +func bjs_Greeter_age_get(_ self: Int32) -> Float64 +#else +func bjs_Greeter_age_get(_ self: Int32) -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_greet") +func bjs_Greeter_greet(_ self: Int32) -> Int32 +#else +func bjs_Greeter_greet(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_Greeter_changeName") +func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void +#else +func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + struct Greeter: _JSBridgedClass { let jsObject: JSObject @@ -14,14 +68,6 @@ struct Greeter: _JSBridgedClass { } init(_ name: String) throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_init") - func bjs_Greeter_init(_ name: Int32) -> Int32 - #else - func bjs_Greeter_init(_ name: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Greeter_init(name.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -31,14 +77,6 @@ struct Greeter: _JSBridgedClass { var name: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_name_get") - func bjs_Greeter_name_get(_ self: Int32) -> Int32 - #else - func bjs_Greeter_name_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Greeter_name_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -48,14 +86,6 @@ struct Greeter: _JSBridgedClass { } func setName(_ newValue: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_name_set") - func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void - #else - func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_Greeter_name_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -64,14 +94,6 @@ struct Greeter: _JSBridgedClass { var age: Double { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_age_get") - func bjs_Greeter_age_get(_ self: Int32) -> Float64 - #else - func bjs_Greeter_age_get(_ self: Int32) -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Greeter_age_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -81,14 +103,6 @@ struct Greeter: _JSBridgedClass { } func greet() throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_greet") - func bjs_Greeter_greet(_ self: Int32) -> Int32 - #else - func bjs_Greeter_greet(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_Greeter_greet(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -97,14 +111,6 @@ struct Greeter: _JSBridgedClass { } func changeName(_ name: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_Greeter_changeName") - func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void - #else - func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_Greeter_changeName(self.bridgeJSLowerParameter(), name.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift index ae7ae0e8..a5ac5afc 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Check", name: "bjs_check") +func bjs_check() -> Void +#else +func bjs_check() -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func check() throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Check", name: "bjs_check") - func bjs_check() -> Void - #else - func bjs_check() -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_check() if let error = _swift_js_take_exception() { throw error From eddc81f3ba8b8096b10f4c67342fb64a8820837f Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Thu, 27 Nov 2025 03:29:16 +0000 Subject: [PATCH 4/5] BridgeJS: Utilities/bridge-js-generate.sh --- .../Generated/BridgeJS.ExportSwift.swift | 53 +- .../Sources/Generated/BridgeJS.ImportTS.swift | 51 +- .../Generated/BridgeJS.ExportSwift.swift | 36 +- .../Generated/BridgeJS.ImportTS.swift | 34 +- .../Generated/BridgeJS.ExportSwift.swift | 641 ++++++++++-------- .../Generated/BridgeJS.ImportTS.swift | 255 +++---- 6 files changed, 580 insertions(+), 490 deletions(-) diff --git a/Benchmarks/Sources/Generated/BridgeJS.ExportSwift.swift b/Benchmarks/Sources/Generated/BridgeJS.ExportSwift.swift index ab0cbb19..8fb5c97d 100644 --- a/Benchmarks/Sources/Generated/BridgeJS.ExportSwift.swift +++ b/Benchmarks/Sources/Generated/BridgeJS.ExportSwift.swift @@ -362,18 +362,19 @@ public func _bjs_EnumRoundtrip_deinit(pointer: UnsafeMutableRawPointer) { extension EnumRoundtrip: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_EnumRoundtrip_wrap") - func _bjs_EnumRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_EnumRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_EnumRoundtrip_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_EnumRoundtrip_wrap") +fileprivate func _bjs_EnumRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_EnumRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_ComplexResultRoundtrip_init") @_cdecl("bjs_ComplexResultRoundtrip_init") public func _bjs_ComplexResultRoundtrip_init() -> UnsafeMutableRawPointer { @@ -491,18 +492,19 @@ public func _bjs_ComplexResultRoundtrip_deinit(pointer: UnsafeMutableRawPointer) extension ComplexResultRoundtrip: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_ComplexResultRoundtrip_wrap") - func _bjs_ComplexResultRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_ComplexResultRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_ComplexResultRoundtrip_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_ComplexResultRoundtrip_wrap") +fileprivate func _bjs_ComplexResultRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_ComplexResultRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_StringRoundtrip_init") @_cdecl("bjs_StringRoundtrip_init") public func _bjs_StringRoundtrip_init() -> UnsafeMutableRawPointer { @@ -543,14 +545,15 @@ public func _bjs_StringRoundtrip_deinit(pointer: UnsafeMutableRawPointer) { extension StringRoundtrip: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_StringRoundtrip_wrap") - func _bjs_StringRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_StringRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_StringRoundtrip_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_StringRoundtrip_wrap") +fileprivate func _bjs_StringRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_StringRoundtrip_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift b/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift index bc7f0b17..721f089d 100644 --- a/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift +++ b/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift @@ -6,45 +6,48 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoop") +func bjs_benchmarkHelperNoop() -> Void +#else +func bjs_benchmarkHelperNoop() -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func benchmarkHelperNoop() throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoop") - func bjs_benchmarkHelperNoop() -> Void - #else - func bjs_benchmarkHelperNoop() -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_benchmarkHelperNoop() if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoopWithNumber") +func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void +#else +func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func benchmarkHelperNoopWithNumber(_ n: Double) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoopWithNumber") - func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void - #else - func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_benchmarkHelperNoopWithNumber(n.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkRunner") +func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void +#else +func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func benchmarkRunner(_ name: String, _ body: JSObject) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkRunner") - func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void - #else - func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_benchmarkRunner(name.bridgeJSLowerParameter(), body.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ExportSwift.swift b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ExportSwift.swift index 9e4515f5..be683415 100644 --- a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ExportSwift.swift +++ b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ExportSwift.swift @@ -50,18 +50,19 @@ public func _bjs_PlayBridgeJS_deinit(pointer: UnsafeMutableRawPointer) { extension PlayBridgeJS: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "PlayBridgeJS", name: "bjs_PlayBridgeJS_wrap") - func _bjs_PlayBridgeJS_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PlayBridgeJS_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PlayBridgeJS_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "PlayBridgeJS", name: "bjs_PlayBridgeJS_wrap") +fileprivate func _bjs_PlayBridgeJS_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PlayBridgeJS_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PlayBridgeJSOutput_outputJs") @_cdecl("bjs_PlayBridgeJSOutput_outputJs") public func _bjs_PlayBridgeJSOutput_outputJs(_self: UnsafeMutableRawPointer) -> Void { @@ -114,14 +115,15 @@ public func _bjs_PlayBridgeJSOutput_deinit(pointer: UnsafeMutableRawPointer) { extension PlayBridgeJSOutput: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "PlayBridgeJS", name: "bjs_PlayBridgeJSOutput_wrap") - func _bjs_PlayBridgeJSOutput_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PlayBridgeJSOutput_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PlayBridgeJSOutput_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "PlayBridgeJS", name: "bjs_PlayBridgeJSOutput_wrap") +fileprivate func _bjs_PlayBridgeJSOutput_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PlayBridgeJSOutput_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift index 4d35ef74..5864feb5 100644 --- a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift +++ b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift @@ -6,15 +6,16 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "PlayBridgeJS", name: "bjs_createTS2Skeleton") +func bjs_createTS2Skeleton() -> Int32 +#else +func bjs_createTS2Skeleton() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func createTS2Skeleton() throws(JSException) -> TS2Skeleton { - #if arch(wasm32) - @_extern(wasm, module: "PlayBridgeJS", name: "bjs_createTS2Skeleton") - func bjs_createTS2Skeleton() -> Int32 - #else - func bjs_createTS2Skeleton() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_createTS2Skeleton() if let error = _swift_js_take_exception() { throw error @@ -22,6 +23,15 @@ func createTS2Skeleton() throws(JSException) -> TS2Skeleton { return TS2Skeleton.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "PlayBridgeJS", name: "bjs_TS2Skeleton_convert") +func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 +#else +func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + struct TS2Skeleton: _JSBridgedClass { let jsObject: JSObject @@ -30,14 +40,6 @@ struct TS2Skeleton: _JSBridgedClass { } func convert(_ ts: String) throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "PlayBridgeJS", name: "bjs_TS2Skeleton_convert") - func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 - #else - func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_TS2Skeleton_convert(self.bridgeJSLowerParameter(), ts.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error diff --git a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ExportSwift.swift b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ExportSwift.swift index 2e739499..572890b0 100644 --- a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ExportSwift.swift +++ b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ExportSwift.swift @@ -6,6 +6,9 @@ @_spi(BridgeJS) import JavaScriptKit +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests10HttpStatusO_Si") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests10HttpStatusO_Si(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests10HttpStatusO_Si: _BridgedSwiftClosureBox { let closure: (HttpStatus) -> Int init(_ closure: @escaping (HttpStatus) -> Int) { @@ -23,13 +26,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests10HttpStatusO_Si { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests10HttpStatusO_Si") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests10HttpStatusO_Si(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Int.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -46,6 +47,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests10H #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests5ThemeO_SS: _BridgedSwiftClosureBox { let closure: (Theme) -> String init(_ closure: @escaping (Theme) -> String) { @@ -63,13 +67,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests5ThemeO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -86,6 +88,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5Th #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_Sb") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_Sb(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests5ThemeO_Sb: _BridgedSwiftClosureBox { let closure: (Theme) -> Bool init(_ closure: @escaping (Theme) -> Bool) { @@ -103,13 +108,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests5ThemeO_Sb { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_Sb") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5ThemeO_Sb(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Bool.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -126,6 +129,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests5Th #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests7GreeterC_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests7GreeterC_SS(_: Int32, _: UnsafeMutableRawPointer) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests7GreeterC_SS: _BridgedSwiftClosureBox { let closure: (Greeter) -> String init(_ closure: @escaping (Greeter) -> String) { @@ -143,13 +149,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests7GreeterC_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests7GreeterC_SS") - func _invoke(_: Int32, _: UnsafeMutableRawPointer) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests7GreeterC_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -166,6 +170,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests7Gr #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9APIResultO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9APIResultO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests9APIResultO_SS: _BridgedSwiftClosureBox { let closure: (APIResult) -> String init(_ closure: @escaping (APIResult) -> String) { @@ -183,13 +190,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests9APIResultO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9APIResultO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9APIResultO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -206,6 +211,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9AP #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests9DirectionO_SS: _BridgedSwiftClosureBox { let closure: (Direction) -> String init(_ closure: @escaping (Direction) -> String) { @@ -223,13 +231,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests9DirectionO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -246,6 +252,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9Di #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_Sb") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_Sb(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTests9DirectionO_Sb: _BridgedSwiftClosureBox { let closure: (Direction) -> Bool init(_ closure: @escaping (Direction) -> Bool) { @@ -263,13 +272,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTests9DirectionO_Sb { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_Sb") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9DirectionO_Sb(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Bool.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -286,6 +293,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTests9Di #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_7GreeterC") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_7GreeterC(_: Int32, _: Int32) -> UnsafeMutableRawPointer + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSS_7GreeterC: _BridgedSwiftClosureBox { let closure: (String) -> Greeter init(_ closure: @escaping (String) -> Greeter) { @@ -303,13 +313,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSS_7GreeterC { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_7GreeterC") - func _invoke(_: Int32, _: Int32) -> UnsafeMutableRawPointer - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_7GreeterC(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Greeter.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -326,6 +334,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_ #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_SS(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSS_SS: _BridgedSwiftClosureBox { let closure: (String) -> String init(_ closure: @escaping (String) -> String) { @@ -343,13 +354,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSS_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_SS") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -366,6 +375,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSS_ #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSiSSSd_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSiSSSd_SS(_: Int32, _: Int32, _: Int32, _: Float64) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSiSSSd_SS: _BridgedSwiftClosureBox { let closure: (Int, String, Double) -> String init(_ closure: @escaping (Int, String, Double) -> String) { @@ -383,13 +395,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSiSSSd_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0, param1, param2 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSiSSSd_SS") - func _invoke(_: Int32, _: Int32, _: Int32, _: Float64) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter(), param1.bridgeJSLowerParameter(), param2.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSiSSSd_SS(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter(), param1.bridgeJSLowerParameter(), param2.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -406,6 +416,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSiS #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSi_Si") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSi_Si(_: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSi_Si: _BridgedSwiftClosureBox { let closure: (Int) -> Int init(_ closure: @escaping (Int) -> Int) { @@ -423,13 +436,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSi_Si { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSi_Si") - func _invoke(_: Int32, _: Int32) -> Int32 - let resultId = _invoke(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) + let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSi_Si(callback.bridgeJSLowerParameter(), param0.bridgeJSLowerParameter()) return Int.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -446,6 +457,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSi_ #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq5ThemeO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq5ThemeO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSq5ThemeO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -463,14 +477,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSq5ThemeO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq5ThemeO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq5ThemeO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -487,6 +499,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq5 #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq7GreeterC_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq7GreeterC_SS(_: Int32, _: Int32, _: UnsafeMutableRawPointer) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSq7GreeterC_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -504,14 +519,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSq7GreeterC_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq7GreeterC_SS") - func _invoke(_: Int32, _: Int32, _: UnsafeMutableRawPointer) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithRetain() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq7GreeterC_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -528,6 +541,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq7 #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9APIResultO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9APIResultO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSq9APIResultO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -545,14 +561,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSq9APIResultO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9APIResultO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9APIResultO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -569,6 +583,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9 #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9DirectionO_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9DirectionO_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSq9DirectionO_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -586,14 +603,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSq9DirectionO_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9DirectionO_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9DirectionO_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -610,6 +625,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSq9 #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSS_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSS_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSqSS_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -627,14 +645,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSqSS_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSS_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSS_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -651,6 +667,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqS #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSi_SS") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSi_SS(_: Int32, _: Int32, _: Int32) -> Int32 + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsSqSi_SS: _BridgedSwiftClosureBox { let closure: (Optional) -> String init(_ closure: @escaping (Optional) -> String) { @@ -668,14 +687,12 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsSqSi_SS { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] param0 in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSi_SS") - func _invoke(_: Int32, _: Int32, _: Int32) -> Int32 let (param0IsSome, param0Value) = param0.bridgeJSLowerParameterWithPresence() -let resultId = _invoke(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) +let resultId = invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqSi_SS(callback.bridgeJSLowerParameter(), param0IsSome, param0Value) return String.bridgeJSLiftReturn(resultId) #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -692,6 +709,9 @@ public func _invoke_swift_closure_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsSqS #endif } +@_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsy_Sq7GreeterC") +fileprivate func invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsy_Sq7GreeterC(_: Int32) -> Void + private final class _BJS_ClosureBox_20BridgeJSRuntimeTestsy_Sq7GreeterC: _BridgedSwiftClosureBox { let closure: () -> Optional init(_ closure: @escaping () -> Optional) { @@ -709,13 +729,11 @@ private enum _BJS_Closure_20BridgeJSRuntimeTestsy_Sq7GreeterC { let callback = JSObject.bridgeJSLiftParameter(callbackId) return { [callback] in #if arch(wasm32) - @_extern(wasm, module: "bjs", name: "invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsy_Sq7GreeterC") - func _invoke(_: Int32) -> Void - _invoke(callback.bridgeJSLowerParameter()) + invoke_js_callback_BridgeJSRuntimeTests_20BridgeJSRuntimeTestsy_Sq7GreeterC(callback.bridgeJSLowerParameter()) return Optional.bridgeJSLiftReturnFromSideChannel() #else fatalError("Only available on WebAssembly") - #endif + #endif } } } @@ -736,220 +754,160 @@ struct AnyDataProcessor: DataProcessor, _BridgedSwiftProtocolWrapper { let jsObject: JSObject func increment(by amount: Int) { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_increment") - func _extern_increment(this: Int32, amount: Int32) _extern_increment(this: Int32(bitPattern: jsObject.id), amount: amount.bridgeJSLowerParameter()) } func getValue() -> Int { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getValue") - func _extern_getValue(this: Int32) -> Int32 let ret = _extern_getValue(this: Int32(bitPattern: jsObject.id)) return Int.bridgeJSLiftReturn(ret) } func setLabelElements(_ labelPrefix: String, _ labelSuffix: String) { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_setLabelElements") - func _extern_setLabelElements(this: Int32, labelPrefix: Int32, labelSuffix: Int32) _extern_setLabelElements(this: Int32(bitPattern: jsObject.id), labelPrefix: labelPrefix.bridgeJSLowerParameter(), labelSuffix: labelSuffix.bridgeJSLowerParameter()) } func getLabel() -> String { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getLabel") - func _extern_getLabel(this: Int32) -> Int32 let ret = _extern_getLabel(this: Int32(bitPattern: jsObject.id)) return String.bridgeJSLiftReturn(ret) } func isEven() -> Bool { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_isEven") - func _extern_isEven(this: Int32) -> Int32 let ret = _extern_isEven(this: Int32(bitPattern: jsObject.id)) return Bool.bridgeJSLiftReturn(ret) } func processGreeter(_ greeter: Greeter) -> String { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_processGreeter") - func _extern_processGreeter(this: Int32, greeter: UnsafeMutableRawPointer) -> Int32 let ret = _extern_processGreeter(this: Int32(bitPattern: jsObject.id), greeter: greeter.bridgeJSLowerParameter()) return String.bridgeJSLiftReturn(ret) } func createGreeter() -> Greeter { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_createGreeter") - func _extern_createGreeter(this: Int32) -> UnsafeMutableRawPointer let ret = _extern_createGreeter(this: Int32(bitPattern: jsObject.id)) return Greeter.bridgeJSLiftReturn(ret) } func processOptionalGreeter(_ greeter: Optional) -> String { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_processOptionalGreeter") - func _extern_processOptionalGreeter(this: Int32, greeterIsSome: Int32, greeterPointer: UnsafeMutableRawPointer) -> Int32 let (greeterIsSome, greeterPointer) = greeter.bridgeJSLowerParameterWithPresence() let ret = _extern_processOptionalGreeter(this: Int32(bitPattern: jsObject.id), greeterIsSome: greeterIsSome, greeterPointer: greeterPointer) return String.bridgeJSLiftReturn(ret) } func createOptionalGreeter() -> Optional { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_createOptionalGreeter") - func _extern_createOptionalGreeter(this: Int32) -> UnsafeMutableRawPointer let ret = _extern_createOptionalGreeter(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } func handleAPIResult(_ result: Optional) { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_handleAPIResult") - func _extern_handleAPIResult(this: Int32, resultIsSome: Int32, resultCaseId: Int32) let (resultIsSome, resultCaseId) = result.bridgeJSLowerParameterWithPresence() _extern_handleAPIResult(this: Int32(bitPattern: jsObject.id), resultIsSome: resultIsSome, resultCaseId: resultCaseId) } func getAPIResult() -> Optional { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getAPIResult") - func _extern_getAPIResult(this: Int32) -> Int32 let ret = _extern_getAPIResult(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } var count: Int { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_count_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_count_get(this: Int32(bitPattern: jsObject.id)) return Int.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_count_set") - func _extern_set(this: Int32, value: Int32) - _extern_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) + bjs_DataProcessor_count_set(this: Int32(bitPattern: jsObject.id), value: newValue.bridgeJSLowerParameter()) } } var name: String { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_name_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_name_get(this: Int32(bitPattern: jsObject.id)) return String.bridgeJSLiftReturn(ret) } } var optionalTag: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTag_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_DataProcessor_optionalTag_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTag_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_DataProcessor_optionalTag_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var optionalCount: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalCount_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_DataProcessor_optionalCount_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalCount_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_DataProcessor_optionalCount_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var direction: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_direction_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_direction_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_direction_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_DataProcessor_direction_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var optionalTheme: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTheme_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_DataProcessor_optionalTheme_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTheme_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_DataProcessor_optionalTheme_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var httpStatus: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_httpStatus_get") - func _extern_get(this: Int32) - _extern_get(this: Int32(bitPattern: jsObject.id)) + bjs_DataProcessor_httpStatus_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturnFromSideChannel() } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_httpStatus_set") - func _extern_set(this: Int32, isSome: Int32, value: Int32) let (isSome, value) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) + bjs_DataProcessor_httpStatus_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, value: value) } } var apiResult: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_apiResult_get") - func _extern_get(this: Int32) -> Int32 - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_apiResult_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_apiResult_set") - func _extern_set(this: Int32, isSome: Int32, caseId: Int32) let (isSome, caseId) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, caseId: caseId) + bjs_DataProcessor_apiResult_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, caseId: caseId) } } var helper: Greeter { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_helper_get") - func _extern_get(this: Int32) -> UnsafeMutableRawPointer - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_helper_get(this: Int32(bitPattern: jsObject.id)) return Greeter.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_helper_set") - func _extern_set(this: Int32, pointer: UnsafeMutableRawPointer) - _extern_set(this: Int32(bitPattern: jsObject.id), pointer: newValue.bridgeJSLowerParameter()) + bjs_DataProcessor_helper_set(this: Int32(bitPattern: jsObject.id), pointer: newValue.bridgeJSLowerParameter()) } } var optionalHelper: Optional { get { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalHelper_get") - func _extern_get(this: Int32) -> UnsafeMutableRawPointer - let ret = _extern_get(this: Int32(bitPattern: jsObject.id)) + let ret = bjs_DataProcessor_optionalHelper_get(this: Int32(bitPattern: jsObject.id)) return Optional.bridgeJSLiftReturn(ret) } set { - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalHelper_set") - func _extern_set(this: Int32, isSome: Int32, pointer: UnsafeMutableRawPointer) let (isSome, pointer) = newValue.bridgeJSLowerParameterWithPresence() - _extern_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, pointer: pointer) + bjs_DataProcessor_optionalHelper_set(this: Int32(bitPattern: jsObject.id), isSome: isSome, pointer: pointer) } } @@ -958,6 +916,96 @@ struct AnyDataProcessor: DataProcessor, _BridgedSwiftProtocolWrapper { } } +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_increment") +fileprivate func _extern_increment(this: Int32, amount: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getValue") +fileprivate func _extern_getValue(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_setLabelElements") +fileprivate func _extern_setLabelElements(this: Int32, labelPrefix: Int32, labelSuffix: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getLabel") +fileprivate func _extern_getLabel(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_isEven") +fileprivate func _extern_isEven(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_processGreeter") +fileprivate func _extern_processGreeter(this: Int32, greeter: UnsafeMutableRawPointer) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_createGreeter") +fileprivate func _extern_createGreeter(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_processOptionalGreeter") +fileprivate func _extern_processOptionalGreeter(this: Int32, greeterIsSome: Int32, greeterPointer: UnsafeMutableRawPointer) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_createOptionalGreeter") +fileprivate func _extern_createOptionalGreeter(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_handleAPIResult") +fileprivate func _extern_handleAPIResult(this: Int32, resultIsSome: Int32, resultCaseId: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_getAPIResult") +fileprivate func _extern_getAPIResult(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_count_get") +fileprivate func bjs_DataProcessor_count_get(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_count_set") +fileprivate func bjs_DataProcessor_count_set(this: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_name_get") +fileprivate func bjs_DataProcessor_name_get(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTag_get") +fileprivate func bjs_DataProcessor_optionalTag_get(this: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTag_set") +fileprivate func bjs_DataProcessor_optionalTag_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalCount_get") +fileprivate func bjs_DataProcessor_optionalCount_get(this: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalCount_set") +fileprivate func bjs_DataProcessor_optionalCount_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_direction_get") +fileprivate func bjs_DataProcessor_direction_get(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_direction_set") +fileprivate func bjs_DataProcessor_direction_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTheme_get") +fileprivate func bjs_DataProcessor_optionalTheme_get(this: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalTheme_set") +fileprivate func bjs_DataProcessor_optionalTheme_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_httpStatus_get") +fileprivate func bjs_DataProcessor_httpStatus_get(this: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_httpStatus_set") +fileprivate func bjs_DataProcessor_httpStatus_set(this: Int32, isSome: Int32, value: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_apiResult_get") +fileprivate func bjs_DataProcessor_apiResult_get(this: Int32) -> Int32 + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_apiResult_set") +fileprivate func bjs_DataProcessor_apiResult_set(this: Int32, isSome: Int32, caseId: Int32) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_helper_get") +fileprivate func bjs_DataProcessor_helper_get(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_helper_set") +fileprivate func bjs_DataProcessor_helper_set(this: Int32, pointer: UnsafeMutableRawPointer) + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalHelper_get") +fileprivate func bjs_DataProcessor_optionalHelper_get(this: Int32) -> UnsafeMutableRawPointer + +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessor_optionalHelper_set") +fileprivate func bjs_DataProcessor_optionalHelper_set(this: Int32, isSome: Int32, pointer: UnsafeMutableRawPointer) + extension Direction: _BridgedSwiftCaseEnum { @_spi(BridgeJS) @_transparent public consuming func bridgeJSLowerParameter() -> Int32 { return bridgeJSRawValue @@ -3377,18 +3425,19 @@ public func _bjs_Greeter_deinit(pointer: UnsafeMutableRawPointer) { extension Greeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { public var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Greeter_wrap") - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Greeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Greeter_wrap") +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_Calculator_square") @_cdecl("bjs_Calculator_square") public func _bjs_Calculator_square(_self: UnsafeMutableRawPointer, value: Int32) -> Int32 { @@ -3419,18 +3468,19 @@ public func _bjs_Calculator_deinit(pointer: UnsafeMutableRawPointer) { extension Calculator: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Calculator_wrap") - func _bjs_Calculator_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Calculator_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Calculator_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Calculator_wrap") +fileprivate func _bjs_Calculator_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Calculator_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_InternalGreeter_deinit") @_cdecl("bjs_InternalGreeter_deinit") public func _bjs_InternalGreeter_deinit(pointer: UnsafeMutableRawPointer) { @@ -3439,18 +3489,19 @@ public func _bjs_InternalGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension InternalGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { internal var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_InternalGreeter_wrap") - func _bjs_InternalGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_InternalGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_InternalGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_InternalGreeter_wrap") +fileprivate func _bjs_InternalGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_InternalGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PublicGreeter_deinit") @_cdecl("bjs_PublicGreeter_deinit") public func _bjs_PublicGreeter_deinit(pointer: UnsafeMutableRawPointer) { @@ -3459,18 +3510,19 @@ public func _bjs_PublicGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension PublicGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { public var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PublicGreeter_wrap") - func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PublicGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PublicGreeter_wrap") +fileprivate func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PublicGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PackageGreeter_deinit") @_cdecl("bjs_PackageGreeter_deinit") public func _bjs_PackageGreeter_deinit(pointer: UnsafeMutableRawPointer) { @@ -3479,18 +3531,19 @@ public func _bjs_PackageGreeter_deinit(pointer: UnsafeMutableRawPointer) { extension PackageGreeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { package var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PackageGreeter_wrap") - func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PackageGreeter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PackageGreeter_wrap") +fileprivate func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PackageGreeter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_Converter_init") @_cdecl("bjs_Converter_init") public func _bjs_Converter_init() -> UnsafeMutableRawPointer { @@ -3521,18 +3574,19 @@ public func _bjs_Converter_deinit(pointer: UnsafeMutableRawPointer) { extension Utils.Converter: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Converter_wrap") - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_Converter_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_Converter_wrap") +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_Converter_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_HTTPServer_init") @_cdecl("bjs_HTTPServer_init") public func _bjs_HTTPServer_init() -> UnsafeMutableRawPointer { @@ -3562,18 +3616,19 @@ public func _bjs_HTTPServer_deinit(pointer: UnsafeMutableRawPointer) { extension Networking.API.HTTPServer: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_HTTPServer_wrap") - func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_HTTPServer_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_HTTPServer_wrap") +fileprivate func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_HTTPServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_TestServer_init") @_cdecl("bjs_TestServer_init") public func _bjs_TestServer_init() -> UnsafeMutableRawPointer { @@ -3603,18 +3658,19 @@ public func _bjs_TestServer_deinit(pointer: UnsafeMutableRawPointer) { extension Internal.TestServer: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_TestServer_wrap") - func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_TestServer_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_TestServer_wrap") +fileprivate func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_TestServer_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_OptionalPropertyHolder_init") @_cdecl("bjs_OptionalPropertyHolder_init") public func _bjs_OptionalPropertyHolder_init(optionalNameIsSome: Int32, optionalNameBytes: Int32, optionalNameLength: Int32) -> UnsafeMutableRawPointer { @@ -3697,18 +3753,19 @@ public func _bjs_OptionalPropertyHolder_deinit(pointer: UnsafeMutableRawPointer) extension OptionalPropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_OptionalPropertyHolder_wrap") - func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_OptionalPropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_OptionalPropertyHolder_wrap") +fileprivate func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_OptionalPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_SimplePropertyHolder_init") @_cdecl("bjs_SimplePropertyHolder_init") public func _bjs_SimplePropertyHolder_init(value: Int32) -> UnsafeMutableRawPointer { @@ -3749,18 +3806,19 @@ public func _bjs_SimplePropertyHolder_deinit(pointer: UnsafeMutableRawPointer) { extension SimplePropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_SimplePropertyHolder_wrap") - func _bjs_SimplePropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_SimplePropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_SimplePropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_SimplePropertyHolder_wrap") +fileprivate func _bjs_SimplePropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_SimplePropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_PropertyHolder_init") @_cdecl("bjs_PropertyHolder_init") public func _bjs_PropertyHolder_init(intValue: Int32, floatValue: Float32, doubleValue: Float64, boolValue: Int32, stringValueBytes: Int32, stringValueLength: Int32, jsObject: Int32, sibling: UnsafeMutableRawPointer) -> UnsafeMutableRawPointer { @@ -4067,18 +4125,19 @@ public func _bjs_PropertyHolder_deinit(pointer: UnsafeMutableRawPointer) { extension PropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PropertyHolder_wrap") - func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_PropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_PropertyHolder_wrap") +fileprivate func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_PropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_MathUtils_static_add") @_cdecl("bjs_MathUtils_static_add") public func _bjs_MathUtils_static_add(a: Int32, b: Int32) -> Int32 { @@ -4109,18 +4168,19 @@ public func _bjs_MathUtils_deinit(pointer: UnsafeMutableRawPointer) { extension MathUtils: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_MathUtils_wrap") - func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_MathUtils_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_MathUtils_wrap") +fileprivate func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_MathUtils_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_ConstructorDefaults_init") @_cdecl("bjs_ConstructorDefaults_init") public func _bjs_ConstructorDefaults_init(nameBytes: Int32, nameLength: Int32, count: Int32, enabled: Int32, status: Int32, tagIsSome: Int32, tagBytes: Int32, tagLength: Int32) -> UnsafeMutableRawPointer { @@ -4256,18 +4316,19 @@ public func _bjs_ConstructorDefaults_deinit(pointer: UnsafeMutableRawPointer) { extension ConstructorDefaults: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_ConstructorDefaults_wrap") - func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_ConstructorDefaults_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_ConstructorDefaults_wrap") +fileprivate func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_ConstructorDefaults_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_StaticPropertyHolder_init") @_cdecl("bjs_StaticPropertyHolder_init") public func _bjs_StaticPropertyHolder_init() -> UnsafeMutableRawPointer { @@ -4498,18 +4559,19 @@ public func _bjs_StaticPropertyHolder_deinit(pointer: UnsafeMutableRawPointer) { extension StaticPropertyHolder: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_StaticPropertyHolder_wrap") - func _bjs_StaticPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_StaticPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_StaticPropertyHolder_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_StaticPropertyHolder_wrap") +fileprivate func _bjs_StaticPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_StaticPropertyHolder_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_DataProcessorManager_init") @_cdecl("bjs_DataProcessorManager_init") public func _bjs_DataProcessorManager_init(processor: Int32) -> UnsafeMutableRawPointer { @@ -4784,18 +4846,19 @@ public func _bjs_DataProcessorManager_deinit(pointer: UnsafeMutableRawPointer) { extension DataProcessorManager: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessorManager_wrap") - func _bjs_DataProcessorManager_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_DataProcessorManager_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_DataProcessorManager_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_DataProcessorManager_wrap") +fileprivate func _bjs_DataProcessorManager_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_DataProcessorManager_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_SwiftDataProcessor_init") @_cdecl("bjs_SwiftDataProcessor_init") public func _bjs_SwiftDataProcessor_init() -> UnsafeMutableRawPointer { @@ -5133,18 +5196,19 @@ public func _bjs_SwiftDataProcessor_deinit(pointer: UnsafeMutableRawPointer) { extension SwiftDataProcessor: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_SwiftDataProcessor_wrap") - func _bjs_SwiftDataProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_SwiftDataProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_SwiftDataProcessor_wrap(Unmanaged.passRetained(self).toOpaque())))) } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_SwiftDataProcessor_wrap") +fileprivate func _bjs_SwiftDataProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_SwiftDataProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + @_expose(wasm, "bjs_TextProcessor_init") @_cdecl("bjs_TextProcessor_init") public func _bjs_TextProcessor_init(transform: Int32) -> UnsafeMutableRawPointer { @@ -5384,14 +5448,15 @@ public func _bjs_TextProcessor_deinit(pointer: UnsafeMutableRawPointer) { extension TextProcessor: ConvertibleToJSValue, _BridgedSwiftHeapObject { var jsValue: JSValue { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_TextProcessor_wrap") - func _bjs_TextProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 - #else - func _bjs_TextProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif return .object(JSObject(id: UInt32(bitPattern: _bjs_TextProcessor_wrap(Unmanaged.passRetained(self).toOpaque())))) } -} \ No newline at end of file +} + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_TextProcessor_wrap") +fileprivate func _bjs_TextProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 +#else +fileprivate func _bjs_TextProcessor_wrap(_: UnsafeMutableRawPointer) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif \ No newline at end of file diff --git a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift index 19bc82fc..0936983e 100644 --- a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift +++ b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift @@ -6,30 +6,32 @@ @_spi(BridgeJS) import JavaScriptKit +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripVoid") +func bjs_jsRoundTripVoid() -> Void +#else +func bjs_jsRoundTripVoid() -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func jsRoundTripVoid() throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripVoid") - func bjs_jsRoundTripVoid() -> Void - #else - func bjs_jsRoundTripVoid() -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_jsRoundTripVoid() if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripNumber") +func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 +#else +func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + func jsRoundTripNumber(_ v: Double) throws(JSException) -> Double { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripNumber") - func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 - #else - func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsRoundTripNumber(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -37,15 +39,16 @@ func jsRoundTripNumber(_ v: Double) throws(JSException) -> Double { return Double.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripBool") +func bjs_jsRoundTripBool(_ v: Int32) -> Int32 +#else +func bjs_jsRoundTripBool(_ v: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func jsRoundTripBool(_ v: Bool) throws(JSException) -> Bool { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripBool") - func bjs_jsRoundTripBool(_ v: Int32) -> Int32 - #else - func bjs_jsRoundTripBool(_ v: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsRoundTripBool(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -53,15 +56,16 @@ func jsRoundTripBool(_ v: Bool) throws(JSException) -> Bool { return Bool.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripString") +func bjs_jsRoundTripString(_ v: Int32) -> Int32 +#else +func bjs_jsRoundTripString(_ v: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func jsRoundTripString(_ v: String) throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripString") - func bjs_jsRoundTripString(_ v: Int32) -> Int32 - #else - func bjs_jsRoundTripString(_ v: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsRoundTripString(v.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -69,30 +73,32 @@ func jsRoundTripString(_ v: String) throws(JSException) -> String { return String.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrVoid") +func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void +#else +func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + func jsThrowOrVoid(_ shouldThrow: Bool) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrVoid") - func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void - #else - func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_jsThrowOrVoid(shouldThrow.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error } } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrNumber") +func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 +#else +func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 { + fatalError("Only available on WebAssembly") +} +#endif + func jsThrowOrNumber(_ shouldThrow: Bool) throws(JSException) -> Double { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrNumber") - func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 - #else - func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsThrowOrNumber(shouldThrow.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -100,15 +106,16 @@ func jsThrowOrNumber(_ shouldThrow: Bool) throws(JSException) -> Double { return Double.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrBool") +func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 +#else +func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func jsThrowOrBool(_ shouldThrow: Bool) throws(JSException) -> Bool { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrBool") - func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 - #else - func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsThrowOrBool(shouldThrow.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -116,15 +123,16 @@ func jsThrowOrBool(_ shouldThrow: Bool) throws(JSException) -> Bool { return Bool.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrString") +func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 +#else +func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func jsThrowOrString(_ shouldThrow: Bool) throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrString") - func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 - #else - func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_jsThrowOrString(shouldThrow.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -132,15 +140,16 @@ func jsThrowOrString(_ shouldThrow: Bool) throws(JSException) -> String { return String.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_runAsyncWorks") +func bjs_runAsyncWorks() -> Int32 +#else +func bjs_runAsyncWorks() -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + func runAsyncWorks() throws(JSException) -> JSPromise { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_runAsyncWorks") - func bjs_runAsyncWorks() -> Int32 - #else - func bjs_runAsyncWorks() -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_runAsyncWorks() if let error = _swift_js_take_exception() { throw error @@ -148,6 +157,60 @@ func runAsyncWorks() throws(JSException) -> JSPromise { return JSPromise.bridgeJSLiftReturn(ret) } +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_init") +func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 +#else +func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_get") +func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 +#else +func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_set") +func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void +#else +func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_prefix_get") +func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 +#else +func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_greet") +func bjs_JsGreeter_greet(_ self: Int32) -> Int32 +#else +func bjs_JsGreeter_greet(_ self: Int32) -> Int32 { + fatalError("Only available on WebAssembly") +} +#endif + +#if arch(wasm32) +@_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_changeName") +func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void +#else +func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void { + fatalError("Only available on WebAssembly") +} +#endif + struct JsGreeter: _JSBridgedClass { let jsObject: JSObject @@ -156,14 +219,6 @@ struct JsGreeter: _JSBridgedClass { } init(_ name: String, _ prefix: String) throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_init") - func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 - #else - func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_JsGreeter_init(name.bridgeJSLowerParameter(), prefix.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -173,14 +228,6 @@ struct JsGreeter: _JSBridgedClass { var name: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_get") - func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 - #else - func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_JsGreeter_name_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -190,14 +237,6 @@ struct JsGreeter: _JSBridgedClass { } func setName(_ newValue: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_set") - func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void - #else - func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_JsGreeter_name_set(self.bridgeJSLowerParameter(), newValue.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -206,14 +245,6 @@ struct JsGreeter: _JSBridgedClass { var prefix: String { get throws(JSException) { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_prefix_get") - func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 - #else - func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_JsGreeter_prefix_get(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -223,14 +254,6 @@ struct JsGreeter: _JSBridgedClass { } func greet() throws(JSException) -> String { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_greet") - func bjs_JsGreeter_greet(_ self: Int32) -> Int32 - #else - func bjs_JsGreeter_greet(_ self: Int32) -> Int32 { - fatalError("Only available on WebAssembly") - } - #endif let ret = bjs_JsGreeter_greet(self.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error @@ -239,14 +262,6 @@ struct JsGreeter: _JSBridgedClass { } func changeName(_ name: String) throws(JSException) -> Void { - #if arch(wasm32) - @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_changeName") - func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void - #else - func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void { - fatalError("Only available on WebAssembly") - } - #endif bjs_JsGreeter_changeName(self.bridgeJSLowerParameter(), name.bridgeJSLowerParameter()) if let error = _swift_js_take_exception() { throw error From 6716b0789720c7f4be6fbef0c3e838f63fca818d Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Thu, 27 Nov 2025 03:46:12 +0000 Subject: [PATCH 5/5] BridgeJS: Ensure extern func decl won't be visible outside of the generated file --- .../Sources/Generated/BridgeJS.ImportTS.swift | 12 ++-- .../Generated/BridgeJS.ImportTS.swift | 8 +-- .../Sources/BridgeJSCore/ExportSwift.swift | 4 +- .../Sources/BridgeJSCore/ImportTS.swift | 3 + .../ImportTSTests/ArrayParameter.swift | 12 ++-- .../__Snapshots__/ImportTSTests/Async.swift | 28 ++++----- .../ImportTSTests/Interface.swift | 12 ++-- .../ImportTSTests/InvalidPropertyNames.swift | 44 +++++++------- .../ImportTSTests/MultipleImportedTypes.swift | 56 ++++++++--------- .../ImportTSTests/PrimitiveParameters.swift | 4 +- .../ImportTSTests/PrimitiveReturn.swift | 8 +-- .../ImportTSTests/StringParameter.swift | 8 +-- .../ImportTSTests/StringReturn.swift | 4 +- .../ImportTSTests/TS2SkeletonLike.swift | 28 ++++----- .../ImportTSTests/TypeAlias.swift | 4 +- .../ImportTSTests/TypeScriptClass.swift | 24 ++++---- .../VoidParameterVoidReturn.swift | 4 +- .../Generated/BridgeJS.ImportTS.swift | 60 +++++++++---------- 18 files changed, 163 insertions(+), 160 deletions(-) diff --git a/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift b/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift index 721f089d..e885569d 100644 --- a/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift +++ b/Benchmarks/Sources/Generated/BridgeJS.ImportTS.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoop") -func bjs_benchmarkHelperNoop() -> Void +fileprivate func bjs_benchmarkHelperNoop() -> Void #else -func bjs_benchmarkHelperNoop() -> Void { +fileprivate func bjs_benchmarkHelperNoop() -> Void { fatalError("Only available on WebAssembly") } #endif @@ -24,9 +24,9 @@ func benchmarkHelperNoop() throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkHelperNoopWithNumber") -func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void +fileprivate func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void #else -func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void { +fileprivate func bjs_benchmarkHelperNoopWithNumber(_ n: Float64) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -40,9 +40,9 @@ func benchmarkHelperNoopWithNumber(_ n: Double) throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "Benchmarks", name: "bjs_benchmarkRunner") -func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void +fileprivate func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void #else -func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void { +fileprivate func bjs_benchmarkRunner(_ name: Int32, _ body: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift index 5864feb5..fca5dcb2 100644 --- a/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift +++ b/Examples/PlayBridgeJS/Sources/PlayBridgeJS/Generated/BridgeJS.ImportTS.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "PlayBridgeJS", name: "bjs_createTS2Skeleton") -func bjs_createTS2Skeleton() -> Int32 +fileprivate func bjs_createTS2Skeleton() -> Int32 #else -func bjs_createTS2Skeleton() -> Int32 { +fileprivate func bjs_createTS2Skeleton() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func createTS2Skeleton() throws(JSException) -> TS2Skeleton { #if arch(wasm32) @_extern(wasm, module: "PlayBridgeJS", name: "bjs_TS2Skeleton_convert") -func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 +fileprivate func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 #else -func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 { +fileprivate func bjs_TS2Skeleton_convert(_ self: Int32, _ ts: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift b/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift index b061716d..0938bfcf 100644 --- a/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift +++ b/Plugins/BridgeJS/Sources/BridgeJSCore/ExportSwift.swift @@ -2501,11 +2501,11 @@ public class ExportSwift { /// ```swift /// extension Greeter: ConvertibleToJSValue, _BridgedSwiftHeapObject { /// var jsValue: JSValue { - /// @_extern(wasm, module: "MyModule", name: "bjs_Greeter_wrap") - /// func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 /// return JSObject(id: UInt32(bitPattern: _bjs_Greeter_wrap(Unmanaged.passRetained(self).toOpaque()))) /// } /// } + /// @_extern(wasm, module: "MyModule", name: "bjs_Greeter_wrap") + /// fileprivate func _bjs_Greeter_wrap(_: UnsafeMutableRawPointer) -> Int32 /// ``` func renderConvertibleToJSValueExtension(klass: ExportedClass) -> [DeclSyntax] { let wrapFunctionName = "_bjs_\(klass.name)_wrap" diff --git a/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift b/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift index 39a735f0..00ef5399 100644 --- a/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift +++ b/Plugins/BridgeJS/Sources/BridgeJSCore/ImportTS.swift @@ -116,6 +116,9 @@ public struct ImportTS { func renderImportDecl() -> DeclSyntax { let baseDecl = FunctionDeclSyntax( + modifiers: DeclModifierListSyntax(itemsBuilder: { + DeclModifierSyntax(name: .keyword(.fileprivate)).with(\.trailingTrivia, .space) + }), funcKeyword: .keyword(.func).with(\.trailingTrivia, .space), name: .identifier(abiName), signature: FunctionSignatureSyntax( diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift index 6a624246..1806d8aa 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/ArrayParameter.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkArray") -func bjs_checkArray(_ a: Int32) -> Void +fileprivate func bjs_checkArray(_ a: Int32) -> Void #else -func bjs_checkArray(_ a: Int32) -> Void { +fileprivate func bjs_checkArray(_ a: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -24,9 +24,9 @@ func checkArray(_ a: JSObject) throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkArrayWithLength") -func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void +fileprivate func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void #else -func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void { +fileprivate func bjs_checkArrayWithLength(_ a: Int32, _ b: Float64) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -40,9 +40,9 @@ func checkArrayWithLength(_ a: JSObject, _ b: Double) throws(JSException) -> Voi #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkArray") -func bjs_checkArray(_ a: Int32) -> Void +fileprivate func bjs_checkArray(_ a: Int32) -> Void #else -func bjs_checkArray(_ a: Int32) -> Void { +fileprivate func bjs_checkArray(_ a: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift index 36ad4cd3..5e564aa3 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Async.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncReturnVoid") -func bjs_asyncReturnVoid() -> Int32 +fileprivate func bjs_asyncReturnVoid() -> Int32 #else -func bjs_asyncReturnVoid() -> Int32 { +fileprivate func bjs_asyncReturnVoid() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func asyncReturnVoid() throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripInt") -func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 +fileprivate func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 #else -func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 { +fileprivate func bjs_asyncRoundTripInt(_ v: Float64) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -42,9 +42,9 @@ func asyncRoundTripInt(_ v: Double) throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripString") -func bjs_asyncRoundTripString(_ v: Int32) -> Int32 +fileprivate func bjs_asyncRoundTripString(_ v: Int32) -> Int32 #else -func bjs_asyncRoundTripString(_ v: Int32) -> Int32 { +fileprivate func bjs_asyncRoundTripString(_ v: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -59,9 +59,9 @@ func asyncRoundTripString(_ v: String) throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripBool") -func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 +fileprivate func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 #else -func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 { +fileprivate func bjs_asyncRoundTripBool(_ v: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -76,9 +76,9 @@ func asyncRoundTripBool(_ v: Bool) throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripFloat") -func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 +fileprivate func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 #else -func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 { +fileprivate func bjs_asyncRoundTripFloat(_ v: Float64) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -93,9 +93,9 @@ func asyncRoundTripFloat(_ v: Double) throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripDouble") -func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 +fileprivate func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 #else -func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 { +fileprivate func bjs_asyncRoundTripDouble(_ v: Float64) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -110,9 +110,9 @@ func asyncRoundTripDouble(_ v: Double) throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_asyncRoundTripJSObject") -func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 +fileprivate func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 #else -func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 { +fileprivate func bjs_asyncRoundTripJSObject(_ v: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift index e0571d5f..12e04e05 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/Interface.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_returnAnimatable") -func bjs_returnAnimatable() -> Int32 +fileprivate func bjs_returnAnimatable() -> Int32 #else -func bjs_returnAnimatable() -> Int32 { +fileprivate func bjs_returnAnimatable() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,18 +25,18 @@ func returnAnimatable() throws(JSException) -> Animatable { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Animatable_animate") -func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 +fileprivate func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 #else -func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 { +fileprivate func bjs_Animatable_animate(_ self: Int32, _ keyframes: Int32, _ options: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Animatable_getAnimations") -func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 +fileprivate func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 #else -func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 { +fileprivate func bjs_Animatable_getAnimations(_ self: Int32, _ options: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift index 2d04f47e..9fa2feaf 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/InvalidPropertyNames.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createArrayBuffer") -func bjs_createArrayBuffer() -> Int32 +fileprivate func bjs_createArrayBuffer() -> Int32 #else -func bjs_createArrayBuffer() -> Int32 { +fileprivate func bjs_createArrayBuffer() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func createArrayBuffer() throws(JSException) -> ArrayBufferLike { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createWeirdObject") -func bjs_createWeirdObject() -> Int32 +fileprivate func bjs_createWeirdObject() -> Int32 #else -func bjs_createWeirdObject() -> Int32 { +fileprivate func bjs_createWeirdObject() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -42,18 +42,18 @@ func createWeirdObject() throws(JSException) -> WeirdNaming { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_byteLength_get") -func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 +fileprivate func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 #else -func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 { +fileprivate func bjs_ArrayBufferLike_byteLength_get(_ self: Int32) -> Float64 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_ArrayBufferLike_slice") -func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 +fileprivate func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 #else -func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 { +fileprivate func bjs_ArrayBufferLike_slice(_ self: Int32, _ begin: Float64, _ end: Float64) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -87,63 +87,63 @@ struct ArrayBufferLike: _JSBridgedClass { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_get") -func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 +fileprivate func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 #else -func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 { +fileprivate func bjs_WeirdNaming_normalProperty_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_normalProperty_set") -func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void +fileprivate func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void #else -func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void { +fileprivate func bjs_WeirdNaming_normalProperty_set(_ self: Int32, _ newValue: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_get") -func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 +fileprivate func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 #else -func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 { +fileprivate func bjs_WeirdNaming_for_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_for_set") -func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void +fileprivate func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void #else -func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void { +fileprivate func bjs_WeirdNaming_for_set(_ self: Int32, _ newValue: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_get") -func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 +fileprivate func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 #else -func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 { +fileprivate func bjs_WeirdNaming_Any_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_Any_set") -func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void +fileprivate func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void #else -func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void { +fileprivate func bjs_WeirdNaming_Any_set(_ self: Int32, _ newValue: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_WeirdNaming_as") -func bjs_WeirdNaming_as(_ self: Int32) -> Void +fileprivate func bjs_WeirdNaming_as(_ self: Int32) -> Void #else -func bjs_WeirdNaming_as(_ self: Int32) -> Void { +fileprivate func bjs_WeirdNaming_as(_ self: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift index 28838215..3102cd6e 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/MultipleImportedTypes.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createDatabaseConnection") -func bjs_createDatabaseConnection(_ config: Int32) -> Int32 +fileprivate func bjs_createDatabaseConnection(_ config: Int32) -> Int32 #else -func bjs_createDatabaseConnection(_ config: Int32) -> Int32 { +fileprivate func bjs_createDatabaseConnection(_ config: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func createDatabaseConnection(_ config: JSObject) throws(JSException) -> Databas #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createLogger") -func bjs_createLogger(_ level: Int32) -> Int32 +fileprivate func bjs_createLogger(_ level: Int32) -> Int32 #else -func bjs_createLogger(_ level: Int32) -> Int32 { +fileprivate func bjs_createLogger(_ level: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -42,9 +42,9 @@ func createLogger(_ level: String) throws(JSException) -> Logger { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_getConfigManager") -func bjs_getConfigManager() -> Int32 +fileprivate func bjs_getConfigManager() -> Int32 #else -func bjs_getConfigManager() -> Int32 { +fileprivate func bjs_getConfigManager() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -59,45 +59,45 @@ func getConfigManager() throws(JSException) -> ConfigManager { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_isConnected_get") -func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 +fileprivate func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 #else -func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 { +fileprivate func bjs_DatabaseConnection_isConnected_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_get") -func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 +fileprivate func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 #else -func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 { +fileprivate func bjs_DatabaseConnection_connectionTimeout_get(_ self: Int32) -> Float64 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connectionTimeout_set") -func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void +fileprivate func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void #else -func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void { +fileprivate func bjs_DatabaseConnection_connectionTimeout_set(_ self: Int32, _ newValue: Float64) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_connect") -func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void +fileprivate func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void #else -func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void { +fileprivate func bjs_DatabaseConnection_connect(_ self: Int32, _ url: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_DatabaseConnection_execute") -func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 +fileprivate func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 #else -func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 { +fileprivate func bjs_DatabaseConnection_execute(_ self: Int32, _ query: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -155,27 +155,27 @@ struct DatabaseConnection: _JSBridgedClass { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Logger_level_get") -func bjs_Logger_level_get(_ self: Int32) -> Int32 +fileprivate func bjs_Logger_level_get(_ self: Int32) -> Int32 #else -func bjs_Logger_level_get(_ self: Int32) -> Int32 { +fileprivate func bjs_Logger_level_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Logger_log") -func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void +fileprivate func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void #else -func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void { +fileprivate func bjs_Logger_log(_ self: Int32, _ message: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Logger_error") -func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void +fileprivate func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void #else -func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void { +fileprivate func bjs_Logger_error(_ self: Int32, _ message: Int32, _ error: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -215,27 +215,27 @@ struct Logger: _JSBridgedClass { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_ConfigManager_configPath_get") -func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 +fileprivate func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 #else -func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 { +fileprivate func bjs_ConfigManager_configPath_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_ConfigManager_get") -func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 +fileprivate func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 #else -func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 { +fileprivate func bjs_ConfigManager_get(_ self: Int32, _ key: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_ConfigManager_set") -func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void +fileprivate func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void #else -func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void { +fileprivate func bjs_ConfigManager_set(_ self: Int32, _ key: Int32, _ value: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift index 00d220ea..2643eaa0 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveParameters.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_check") -func bjs_check(_ a: Float64, _ b: Int32) -> Void +fileprivate func bjs_check(_ a: Float64, _ b: Int32) -> Void #else -func bjs_check(_ a: Float64, _ b: Int32) -> Void { +fileprivate func bjs_check(_ a: Float64, _ b: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift index b3325062..6424329b 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/PrimitiveReturn.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkNumber") -func bjs_checkNumber() -> Float64 +fileprivate func bjs_checkNumber() -> Float64 #else -func bjs_checkNumber() -> Float64 { +fileprivate func bjs_checkNumber() -> Float64 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func checkNumber() throws(JSException) -> Double { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkBoolean") -func bjs_checkBoolean() -> Int32 +fileprivate func bjs_checkBoolean() -> Int32 #else -func bjs_checkBoolean() -> Int32 { +fileprivate func bjs_checkBoolean() -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift index fdaf7c49..68b341ca 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringParameter.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkString") -func bjs_checkString(_ a: Int32) -> Void +fileprivate func bjs_checkString(_ a: Int32) -> Void #else -func bjs_checkString(_ a: Int32) -> Void { +fileprivate func bjs_checkString(_ a: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -24,9 +24,9 @@ func checkString(_ a: String) throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkStringWithLength") -func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void +fileprivate func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void #else -func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void { +fileprivate func bjs_checkStringWithLength(_ a: Int32, _ b: Float64) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift index 9edc42cf..638eedb0 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/StringReturn.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkString") -func bjs_checkString() -> Int32 +fileprivate func bjs_checkString() -> Int32 #else -func bjs_checkString() -> Int32 { +fileprivate func bjs_checkString() -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift index 23e8ea7d..2e4331c7 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TS2SkeletonLike.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createTS2Skeleton") -func bjs_createTS2Skeleton() -> Int32 +fileprivate func bjs_createTS2Skeleton() -> Int32 #else -func bjs_createTS2Skeleton() -> Int32 { +fileprivate func bjs_createTS2Skeleton() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -25,9 +25,9 @@ func createTS2Skeleton() throws(JSException) -> TypeScriptProcessor { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_createCodeGenerator") -func bjs_createCodeGenerator(_ format: Int32) -> Int32 +fileprivate func bjs_createCodeGenerator(_ format: Int32) -> Int32 #else -func bjs_createCodeGenerator(_ format: Int32) -> Int32 { +fileprivate func bjs_createCodeGenerator(_ format: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -42,27 +42,27 @@ func createCodeGenerator(_ format: String) throws(JSException) -> CodeGenerator #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_version_get") -func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 +fileprivate func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 #else -func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 { +fileprivate func bjs_TypeScriptProcessor_version_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_convert") -func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 +fileprivate func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 #else -func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 { +fileprivate func bjs_TypeScriptProcessor_convert(_ self: Int32, _ ts: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_TypeScriptProcessor_validate") -func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 +fileprivate func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 #else -func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 { +fileprivate func bjs_TypeScriptProcessor_validate(_ self: Int32, _ ts: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -104,18 +104,18 @@ struct TypeScriptProcessor: _JSBridgedClass { #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_CodeGenerator_outputFormat_get") -func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 +fileprivate func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 #else -func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 { +fileprivate func bjs_CodeGenerator_outputFormat_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_CodeGenerator_generate") -func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 +fileprivate func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 #else -func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 { +fileprivate func bjs_CodeGenerator_generate(_ self: Int32, _ input: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift index d007caf6..e539e65d 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeAlias.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_checkSimple") -func bjs_checkSimple(_ a: Float64) -> Void +fileprivate func bjs_checkSimple(_ a: Float64) -> Void #else -func bjs_checkSimple(_ a: Float64) -> Void { +fileprivate func bjs_checkSimple(_ a: Float64) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift index 7fe7133d..148419de 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/TypeScriptClass.swift @@ -8,54 +8,54 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_init") -func bjs_Greeter_init(_ name: Int32) -> Int32 +fileprivate func bjs_Greeter_init(_ name: Int32) -> Int32 #else -func bjs_Greeter_init(_ name: Int32) -> Int32 { +fileprivate func bjs_Greeter_init(_ name: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_name_get") -func bjs_Greeter_name_get(_ self: Int32) -> Int32 +fileprivate func bjs_Greeter_name_get(_ self: Int32) -> Int32 #else -func bjs_Greeter_name_get(_ self: Int32) -> Int32 { +fileprivate func bjs_Greeter_name_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_name_set") -func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void +fileprivate func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void #else -func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { +fileprivate func bjs_Greeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_age_get") -func bjs_Greeter_age_get(_ self: Int32) -> Float64 +fileprivate func bjs_Greeter_age_get(_ self: Int32) -> Float64 #else -func bjs_Greeter_age_get(_ self: Int32) -> Float64 { +fileprivate func bjs_Greeter_age_get(_ self: Int32) -> Float64 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_greet") -func bjs_Greeter_greet(_ self: Int32) -> Int32 +fileprivate func bjs_Greeter_greet(_ self: Int32) -> Int32 #else -func bjs_Greeter_greet(_ self: Int32) -> Int32 { +fileprivate func bjs_Greeter_greet(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_Greeter_changeName") -func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void +fileprivate func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void #else -func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void { +fileprivate func bjs_Greeter_changeName(_ self: Int32, _ name: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift index a5ac5afc..51167847 100644 --- a/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift +++ b/Plugins/BridgeJS/Tests/BridgeJSToolTests/__Snapshots__/ImportTSTests/VoidParameterVoidReturn.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "Check", name: "bjs_check") -func bjs_check() -> Void +fileprivate func bjs_check() -> Void #else -func bjs_check() -> Void { +fileprivate func bjs_check() -> Void { fatalError("Only available on WebAssembly") } #endif diff --git a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift index 0936983e..e75febb8 100644 --- a/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift +++ b/Tests/BridgeJSRuntimeTests/Generated/BridgeJS.ImportTS.swift @@ -8,9 +8,9 @@ #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripVoid") -func bjs_jsRoundTripVoid() -> Void +fileprivate func bjs_jsRoundTripVoid() -> Void #else -func bjs_jsRoundTripVoid() -> Void { +fileprivate func bjs_jsRoundTripVoid() -> Void { fatalError("Only available on WebAssembly") } #endif @@ -24,9 +24,9 @@ func jsRoundTripVoid() throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripNumber") -func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 +fileprivate func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 #else -func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 { +fileprivate func bjs_jsRoundTripNumber(_ v: Float64) -> Float64 { fatalError("Only available on WebAssembly") } #endif @@ -41,9 +41,9 @@ func jsRoundTripNumber(_ v: Double) throws(JSException) -> Double { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripBool") -func bjs_jsRoundTripBool(_ v: Int32) -> Int32 +fileprivate func bjs_jsRoundTripBool(_ v: Int32) -> Int32 #else -func bjs_jsRoundTripBool(_ v: Int32) -> Int32 { +fileprivate func bjs_jsRoundTripBool(_ v: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -58,9 +58,9 @@ func jsRoundTripBool(_ v: Bool) throws(JSException) -> Bool { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsRoundTripString") -func bjs_jsRoundTripString(_ v: Int32) -> Int32 +fileprivate func bjs_jsRoundTripString(_ v: Int32) -> Int32 #else -func bjs_jsRoundTripString(_ v: Int32) -> Int32 { +fileprivate func bjs_jsRoundTripString(_ v: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -75,9 +75,9 @@ func jsRoundTripString(_ v: String) throws(JSException) -> String { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrVoid") -func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void +fileprivate func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void #else -func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void { +fileprivate func bjs_jsThrowOrVoid(_ shouldThrow: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif @@ -91,9 +91,9 @@ func jsThrowOrVoid(_ shouldThrow: Bool) throws(JSException) -> Void { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrNumber") -func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 +fileprivate func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 #else -func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 { +fileprivate func bjs_jsThrowOrNumber(_ shouldThrow: Int32) -> Float64 { fatalError("Only available on WebAssembly") } #endif @@ -108,9 +108,9 @@ func jsThrowOrNumber(_ shouldThrow: Bool) throws(JSException) -> Double { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrBool") -func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 +fileprivate func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 #else -func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 { +fileprivate func bjs_jsThrowOrBool(_ shouldThrow: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -125,9 +125,9 @@ func jsThrowOrBool(_ shouldThrow: Bool) throws(JSException) -> Bool { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_jsThrowOrString") -func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 +fileprivate func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 #else -func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 { +fileprivate func bjs_jsThrowOrString(_ shouldThrow: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -142,9 +142,9 @@ func jsThrowOrString(_ shouldThrow: Bool) throws(JSException) -> String { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_runAsyncWorks") -func bjs_runAsyncWorks() -> Int32 +fileprivate func bjs_runAsyncWorks() -> Int32 #else -func bjs_runAsyncWorks() -> Int32 { +fileprivate func bjs_runAsyncWorks() -> Int32 { fatalError("Only available on WebAssembly") } #endif @@ -159,54 +159,54 @@ func runAsyncWorks() throws(JSException) -> JSPromise { #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_init") -func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 +fileprivate func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 #else -func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 { +fileprivate func bjs_JsGreeter_init(_ name: Int32, _ prefix: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_get") -func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 +fileprivate func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 #else -func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 { +fileprivate func bjs_JsGreeter_name_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_name_set") -func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void +fileprivate func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void #else -func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { +fileprivate func bjs_JsGreeter_name_set(_ self: Int32, _ newValue: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_prefix_get") -func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 +fileprivate func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 #else -func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 { +fileprivate func bjs_JsGreeter_prefix_get(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_greet") -func bjs_JsGreeter_greet(_ self: Int32) -> Int32 +fileprivate func bjs_JsGreeter_greet(_ self: Int32) -> Int32 #else -func bjs_JsGreeter_greet(_ self: Int32) -> Int32 { +fileprivate func bjs_JsGreeter_greet(_ self: Int32) -> Int32 { fatalError("Only available on WebAssembly") } #endif #if arch(wasm32) @_extern(wasm, module: "BridgeJSRuntimeTests", name: "bjs_JsGreeter_changeName") -func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void +fileprivate func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void #else -func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void { +fileprivate func bjs_JsGreeter_changeName(_ self: Int32, _ name: Int32) -> Void { fatalError("Only available on WebAssembly") } #endif