From 7c0d9b5073eb94c778d86bf3bf670170b2f6e8b9 Mon Sep 17 00:00:00 2001 From: Doug Gregor Date: Mon, 28 Oct 2024 12:03:51 -0700 Subject: [PATCH 1/2] Java2Swift: Don't omit "extends" clause when it's extending JavaObject There's no reason to skip this; be more regular about it. --- Sources/Java2SwiftLib/JavaClassTranslator.swift | 5 +---- Tests/Java2SwiftTests/Java2SwiftTests.swift | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/Sources/Java2SwiftLib/JavaClassTranslator.swift b/Sources/Java2SwiftLib/JavaClassTranslator.swift index 59477f3f..232c9338 100644 --- a/Sources/Java2SwiftLib/JavaClassTranslator.swift +++ b/Sources/Java2SwiftLib/JavaClassTranslator.swift @@ -110,10 +110,7 @@ struct JavaClassTranslator { self.nestedClasses = translator.nestedClasses[fullName] ?? [] // Superclass. - if !javaClass.isInterface(), - let javaSuperclass = javaClass.getSuperclass(), - javaSuperclass.getName() != "java.lang.Object" - { + if !javaClass.isInterface(), let javaSuperclass = javaClass.getSuperclass() { do { self.swiftSuperclass = try translator.getSwiftTypeName(javaSuperclass).swiftName } catch { diff --git a/Tests/Java2SwiftTests/Java2SwiftTests.swift b/Tests/Java2SwiftTests/Java2SwiftTests.swift index d1e19551..85240305 100644 --- a/Tests/Java2SwiftTests/Java2SwiftTests.swift +++ b/Tests/Java2SwiftTests/Java2SwiftTests.swift @@ -69,7 +69,7 @@ class Java2SwiftTests: XCTestCase { expectedChunks: [ "import JavaKit", """ - @JavaClass("java.lang.Class") + @JavaClass("java.lang.Class", extends: JavaObject.self) public struct MyJavaClass { """, """ From 91e4a6b3d090706ac3556a357b0e88dceb20fd3b Mon Sep 17 00:00:00 2001 From: Doug Gregor Date: Mon, 28 Oct 2024 12:07:03 -0700 Subject: [PATCH 2/2] Regenerate JavaKit generated sources --- Sources/JavaKit/generated/JavaBoolean.swift | 2 +- Sources/JavaKit/generated/JavaCharacter.swift | 4 +- Sources/JavaKit/generated/JavaClass.swift | 2 +- Sources/JavaKit/generated/JavaNumber.swift | 2 +- Sources/JavaKit/generated/JavaVoid.swift | 2 +- Sources/JavaKit/generated/Throwable.swift | 2 +- .../JavaKitCollection/generated/BitSet.swift | 2 +- .../JavaKitCollection/generated/HashMap.swift | 86 +++++++++++++++++++ .../generated/JavaDictionary.swift | 2 +- .../JavaKitCollection/generated/TreeMap.swift | 86 ------------------- Sources/JavaKitJar/generated/Attributes.swift | 4 +- Sources/JavaKitJar/generated/Manifest.swift | 2 +- Sources/JavaKitNetwork/generated/URI.swift | 2 +- Sources/JavaKitNetwork/generated/URL.swift | 2 +- .../generated/AccessibleObject.swift | 2 +- .../generated/Parameter.swift | 2 +- 16 files changed, 102 insertions(+), 102 deletions(-) diff --git a/Sources/JavaKit/generated/JavaBoolean.swift b/Sources/JavaKit/generated/JavaBoolean.swift index b5fc9067..e942fb44 100644 --- a/Sources/JavaKit/generated/JavaBoolean.swift +++ b/Sources/JavaKit/generated/JavaBoolean.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Boolean") +@JavaClass("java.lang.Boolean", extends: JavaObject.self) public struct JavaBoolean { @JavaMethod public init(_ arg0: Bool, environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKit/generated/JavaCharacter.swift b/Sources/JavaKit/generated/JavaCharacter.swift index 4e9ee4b5..739cc260 100644 --- a/Sources/JavaKit/generated/JavaCharacter.swift +++ b/Sources/JavaKit/generated/JavaCharacter.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Character") +@JavaClass("java.lang.Character", extends: JavaObject.self) public struct JavaCharacter { @JavaMethod public init(_ arg0: UInt16, environment: JNIEnvironment? = nil) @@ -3147,7 +3147,7 @@ extension JavaClass { public func of(_ arg0: Int32) -> JavaCharacter.UnicodeScript! } extension JavaCharacter { - @JavaClass("java.lang.Character$Subset") + @JavaClass("java.lang.Character$Subset", extends: JavaObject.self) public struct Subset { @JavaMethod public func equals(_ arg0: JavaObject?) -> Bool diff --git a/Sources/JavaKit/generated/JavaClass.swift b/Sources/JavaKit/generated/JavaClass.swift index f41cab3b..a3d52d21 100644 --- a/Sources/JavaKit/generated/JavaClass.swift +++ b/Sources/JavaKit/generated/JavaClass.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Class") +@JavaClass("java.lang.Class", extends: JavaObject.self) public struct JavaClass { @JavaMethod public func getName() -> String diff --git a/Sources/JavaKit/generated/JavaNumber.swift b/Sources/JavaKit/generated/JavaNumber.swift index 49150d72..acd461fe 100644 --- a/Sources/JavaKit/generated/JavaNumber.swift +++ b/Sources/JavaKit/generated/JavaNumber.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Number") +@JavaClass("java.lang.Number", extends: JavaObject.self) public struct JavaNumber { @JavaMethod public init(environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKit/generated/JavaVoid.swift b/Sources/JavaKit/generated/JavaVoid.swift index 8a0ec266..f9a21828 100644 --- a/Sources/JavaKit/generated/JavaVoid.swift +++ b/Sources/JavaKit/generated/JavaVoid.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Void") +@JavaClass("java.lang.Void", extends: JavaObject.self) public struct JavaVoid { @JavaMethod public func equals(_ arg0: JavaObject?) -> Bool diff --git a/Sources/JavaKit/generated/Throwable.swift b/Sources/JavaKit/generated/Throwable.swift index e292efa0..171835d8 100644 --- a/Sources/JavaKit/generated/Throwable.swift +++ b/Sources/JavaKit/generated/Throwable.swift @@ -1,7 +1,7 @@ // Auto-generated by Java-to-Swift wrapper generator. import JavaRuntime -@JavaClass("java.lang.Throwable") +@JavaClass("java.lang.Throwable", extends: JavaObject.self) public struct Throwable { @JavaMethod public init(_ arg0: Throwable?, environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKitCollection/generated/BitSet.swift b/Sources/JavaKitCollection/generated/BitSet.swift index 99425771..d00f539d 100644 --- a/Sources/JavaKitCollection/generated/BitSet.swift +++ b/Sources/JavaKitCollection/generated/BitSet.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.util.BitSet") +@JavaClass("java.util.BitSet", extends: JavaObject.self) public struct BitSet { @JavaMethod public init(environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKitCollection/generated/HashMap.swift b/Sources/JavaKitCollection/generated/HashMap.swift index 287593f5..90e50295 100644 --- a/Sources/JavaKitCollection/generated/HashMap.swift +++ b/Sources/JavaKitCollection/generated/HashMap.swift @@ -88,6 +88,92 @@ public struct HashMap { @JavaMethod public func wait() throws } +extension HashMap { + @JavaClass("java.util.AbstractMap$SimpleImmutableEntry", extends: JavaObject.self) + public struct SimpleImmutableEntry { + @JavaMethod + public init(_ arg0: JavaObject?, _ arg1: JavaObject?, environment: JNIEnvironment? = nil) + + @JavaMethod + public func equals(_ arg0: JavaObject?) -> Bool + + @JavaMethod + public func toString() -> String + + @JavaMethod + public func hashCode() -> Int32 + + @JavaMethod + public func getValue() -> JavaObject! + + @JavaMethod + public func getKey() -> JavaObject! + + @JavaMethod + public func setValue(_ arg0: JavaObject?) -> JavaObject! + + @JavaMethod + public func getClass() -> JavaClass! + + @JavaMethod + public func notify() + + @JavaMethod + public func notifyAll() + + @JavaMethod + public func wait(_ arg0: Int64) throws + + @JavaMethod + public func wait(_ arg0: Int64, _ arg1: Int32) throws + + @JavaMethod + public func wait() throws + } +} +extension HashMap { + @JavaClass("java.util.AbstractMap$SimpleEntry", extends: JavaObject.self) + public struct SimpleEntry { + @JavaMethod + public init(_ arg0: JavaObject?, _ arg1: JavaObject?, environment: JNIEnvironment? = nil) + + @JavaMethod + public func equals(_ arg0: JavaObject?) -> Bool + + @JavaMethod + public func toString() -> String + + @JavaMethod + public func hashCode() -> Int32 + + @JavaMethod + public func getValue() -> JavaObject! + + @JavaMethod + public func getKey() -> JavaObject! + + @JavaMethod + public func setValue(_ arg0: JavaObject?) -> JavaObject! + + @JavaMethod + public func getClass() -> JavaClass! + + @JavaMethod + public func notify() + + @JavaMethod + public func notifyAll() + + @JavaMethod + public func wait(_ arg0: Int64) throws + + @JavaMethod + public func wait(_ arg0: Int64, _ arg1: Int32) throws + + @JavaMethod + public func wait() throws + } +} extension JavaClass { @JavaStaticMethod public func newHashMap(_ arg0: Int32) -> HashMap! where ObjectType == HashMap diff --git a/Sources/JavaKitCollection/generated/JavaDictionary.swift b/Sources/JavaKitCollection/generated/JavaDictionary.swift index 5bebe233..df1bdc87 100644 --- a/Sources/JavaKitCollection/generated/JavaDictionary.swift +++ b/Sources/JavaKitCollection/generated/JavaDictionary.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.util.Dictionary") +@JavaClass("java.util.Dictionary", extends: JavaObject.self) public struct JavaDictionary { @JavaMethod public init(environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKitCollection/generated/TreeMap.swift b/Sources/JavaKitCollection/generated/TreeMap.swift index fbdc5b7e..3c45b998 100644 --- a/Sources/JavaKitCollection/generated/TreeMap.swift +++ b/Sources/JavaKitCollection/generated/TreeMap.swift @@ -106,89 +106,3 @@ public struct TreeMap { @JavaMethod public func getOrDefault(_ arg0: JavaObject?, _ arg1: JavaObject?) -> JavaObject! } -extension TreeMap { - @JavaClass("java.util.AbstractMap$SimpleImmutableEntry") - public struct SimpleImmutableEntry { - @JavaMethod - public init(_ arg0: JavaObject?, _ arg1: JavaObject?, environment: JNIEnvironment? = nil) - - @JavaMethod - public func equals(_ arg0: JavaObject?) -> Bool - - @JavaMethod - public func toString() -> String - - @JavaMethod - public func hashCode() -> Int32 - - @JavaMethod - public func getValue() -> JavaObject! - - @JavaMethod - public func getKey() -> JavaObject! - - @JavaMethod - public func setValue(_ arg0: JavaObject?) -> JavaObject! - - @JavaMethod - public func getClass() -> JavaClass! - - @JavaMethod - public func notify() - - @JavaMethod - public func notifyAll() - - @JavaMethod - public func wait(_ arg0: Int64) throws - - @JavaMethod - public func wait(_ arg0: Int64, _ arg1: Int32) throws - - @JavaMethod - public func wait() throws - } -} -extension TreeMap { - @JavaClass("java.util.AbstractMap$SimpleEntry") - public struct SimpleEntry { - @JavaMethod - public init(_ arg0: JavaObject?, _ arg1: JavaObject?, environment: JNIEnvironment? = nil) - - @JavaMethod - public func equals(_ arg0: JavaObject?) -> Bool - - @JavaMethod - public func toString() -> String - - @JavaMethod - public func hashCode() -> Int32 - - @JavaMethod - public func getValue() -> JavaObject! - - @JavaMethod - public func getKey() -> JavaObject! - - @JavaMethod - public func setValue(_ arg0: JavaObject?) -> JavaObject! - - @JavaMethod - public func getClass() -> JavaClass! - - @JavaMethod - public func notify() - - @JavaMethod - public func notifyAll() - - @JavaMethod - public func wait(_ arg0: Int64) throws - - @JavaMethod - public func wait(_ arg0: Int64, _ arg1: Int32) throws - - @JavaMethod - public func wait() throws - } -} diff --git a/Sources/JavaKitJar/generated/Attributes.swift b/Sources/JavaKitJar/generated/Attributes.swift index 5014c44b..1ecde6f7 100644 --- a/Sources/JavaKitJar/generated/Attributes.swift +++ b/Sources/JavaKitJar/generated/Attributes.swift @@ -3,7 +3,7 @@ import JavaKit import JavaKitCollection import JavaRuntime -@JavaClass("java.util.jar.Attributes") +@JavaClass("java.util.jar.Attributes", extends: JavaObject.self) public struct Attributes { @JavaMethod public init(_ arg0: Attributes?, environment: JNIEnvironment? = nil) @@ -99,7 +99,7 @@ public struct Attributes { public func getOrDefault(_ arg0: JavaObject?, _ arg1: JavaObject?) -> JavaObject! } extension Attributes { - @JavaClass("java.util.jar.Attributes$Name") + @JavaClass("java.util.jar.Attributes$Name", extends: JavaObject.self) public struct Name { @JavaMethod public init(_ arg0: String, environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKitJar/generated/Manifest.swift b/Sources/JavaKitJar/generated/Manifest.swift index 9a5fb6c6..6400f33c 100644 --- a/Sources/JavaKitJar/generated/Manifest.swift +++ b/Sources/JavaKitJar/generated/Manifest.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.util.jar.Manifest") +@JavaClass("java.util.jar.Manifest", extends: JavaObject.self) public struct Manifest { @JavaMethod public init(_ arg0: Manifest?, environment: JNIEnvironment? = nil) diff --git a/Sources/JavaKitNetwork/generated/URI.swift b/Sources/JavaKitNetwork/generated/URI.swift index 6992566d..a8b35bcb 100644 --- a/Sources/JavaKitNetwork/generated/URI.swift +++ b/Sources/JavaKitNetwork/generated/URI.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.net.URI") +@JavaClass("java.net.URI", extends: JavaObject.self) public struct URI { @JavaMethod public init(_ arg0: String, _ arg1: String, _ arg2: String, _ arg3: String, _ arg4: String, environment: JNIEnvironment? = nil) throws diff --git a/Sources/JavaKitNetwork/generated/URL.swift b/Sources/JavaKitNetwork/generated/URL.swift index 6cb6573a..c9fb0832 100644 --- a/Sources/JavaKitNetwork/generated/URL.swift +++ b/Sources/JavaKitNetwork/generated/URL.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.net.URL") +@JavaClass("java.net.URL", extends: JavaObject.self) public struct URL { @JavaMethod public init(_ arg0: URL?, _ arg1: String, environment: JNIEnvironment? = nil) throws diff --git a/Sources/JavaKitReflection/generated/AccessibleObject.swift b/Sources/JavaKitReflection/generated/AccessibleObject.swift index 5dc090c8..1c474fb4 100644 --- a/Sources/JavaKitReflection/generated/AccessibleObject.swift +++ b/Sources/JavaKitReflection/generated/AccessibleObject.swift @@ -2,7 +2,7 @@ import JavaKit import JavaRuntime -@JavaClass("java.lang.reflect.AccessibleObject") +@JavaClass("java.lang.reflect.AccessibleObject", extends: JavaObject.self) public struct AccessibleObject { @JavaMethod public func isAnnotationPresent(_ arg0: JavaClass?) -> Bool diff --git a/Sources/JavaKitReflection/generated/Parameter.swift b/Sources/JavaKitReflection/generated/Parameter.swift index f55b6507..5788f089 100644 --- a/Sources/JavaKitReflection/generated/Parameter.swift +++ b/Sources/JavaKitReflection/generated/Parameter.swift @@ -3,7 +3,7 @@ import JavaKit import JavaKitCollection import JavaRuntime -@JavaClass("java.lang.reflect.Parameter") +@JavaClass("java.lang.reflect.Parameter", extends: JavaObject.self) public struct Parameter { @JavaMethod public func getName() -> String