Skip to content

Commit 8fc6a4c

Browse files
authored
wrap-java: Avoid generic parameter shadowing (#630)
* render generic parameter with typealias * Fix detecting rule of generic parameter in JavaMethod macro * Fix test fixtures * Regenerate all java types * Add test case to generic super class * Care about generic super class * Small refactoring and fix test
1 parent b714888 commit 8fc6a4c

49 files changed

Lines changed: 246 additions & 89 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Sources/JavaStdlib/JavaLangReflect/generated/Constructor.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.lang.reflect.Constructor")
6-
open class Constructor<T: AnyJavaObject>: Executable {
6+
open class Constructor<Constructor_T: AnyJavaObject>: Executable {
7+
public typealias T = Constructor_T
8+
79
/// Java method `getName`.
810
///
911
/// ### Java method signature

Sources/JavaStdlib/JavaLangReflect/generated/TypeVariable.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaInterface("java.lang.reflect.TypeVariable", extends: Type.self)
6-
public struct TypeVariable<D: AnyJavaObject> {
6+
public struct TypeVariable<TypeVariable_D: AnyJavaObject> {
7+
public typealias D = TypeVariable_D
8+
79
/// Java method `getGenericDeclaration`.
810
///
911
/// ### Java method signature

Sources/JavaStdlib/JavaUtil/generated/ArrayDeque.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.ArrayDeque")
6-
open class ArrayDeque<E: AnyJavaObject>: JavaObject {
6+
open class ArrayDeque<ArrayDeque_E: AnyJavaObject>: JavaObject {
7+
public typealias E = ArrayDeque_E
8+
79
@JavaMethod
810
@_nonoverride public convenience init(_ arg0: Int32, environment: JNIEnvironment? = nil)
911

Sources/JavaStdlib/JavaUtil/generated/ArrayList.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.ArrayList", implements: List<JavaObject>.self, RandomAccess.self)
6-
open class ArrayList<E: AnyJavaObject>: JavaObject {
6+
open class ArrayList<ArrayList_E: AnyJavaObject>: JavaObject {
7+
public typealias E = ArrayList_E
8+
79
@JavaMethod
810
@_nonoverride public convenience init(_ arg0: JavaCollection<E>?, environment: JNIEnvironment? = nil)
911

Sources/JavaStdlib/JavaUtil/generated/HashMap.swift

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,11 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.HashMap")
6-
open class HashMap<K: AnyJavaObject, V: AnyJavaObject>: JavaObject {
6+
open class HashMap<HashMap_K: AnyJavaObject, HashMap_V: AnyJavaObject>: JavaObject {
7+
public typealias K = HashMap_K
8+
9+
public typealias V = HashMap_V
10+
711
@JavaMethod
812
@_nonoverride public convenience init(_ arg0: Int32, environment: JNIEnvironment? = nil)
913

Sources/JavaStdlib/JavaUtil/generated/HashSet.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.HashSet", implements: JavaSet<JavaObject>.self)
6-
open class HashSet<E: AnyJavaObject>: JavaObject {
6+
open class HashSet<HashSet_E: AnyJavaObject>: JavaObject {
7+
public typealias E = HashSet_E
8+
79
@JavaMethod
810
@_nonoverride public convenience init(_ arg0: Int32, environment: JNIEnvironment? = nil)
911

Sources/JavaStdlib/JavaUtil/generated/JavaDictionary.swift

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,11 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.Dictionary")
6-
open class JavaDictionary<K: AnyJavaObject, V: AnyJavaObject>: JavaObject {
6+
open class JavaDictionary<JavaDictionary_K: AnyJavaObject, JavaDictionary_V: AnyJavaObject>: JavaObject {
7+
public typealias K = JavaDictionary_K
8+
9+
public typealias V = JavaDictionary_V
10+
711
@JavaMethod
812
@_nonoverride public convenience init(environment: JNIEnvironment? = nil)
913

Sources/JavaStdlib/JavaUtil/generated/PriorityQueue.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.PriorityQueue")
6-
open class PriorityQueue<E: AnyJavaObject>: JavaObject {
6+
open class PriorityQueue<PriorityQueue_E: AnyJavaObject>: JavaObject {
7+
public typealias E = PriorityQueue_E
8+
79
@JavaMethod
810
@_nonoverride public convenience init(_ arg0: PriorityQueue<E>?, environment: JNIEnvironment? = nil)
911

Sources/JavaStdlib/JavaUtil/generated/Queue.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaInterface("java.util.Queue", extends: JavaCollection<JavaObject>.self)
6-
public struct Queue<E: AnyJavaObject> {
6+
public struct Queue<Queue_E: AnyJavaObject> {
7+
public typealias E = Queue_E
8+
79
/// Java method `remove`.
810
///
911
/// ### Java method signature

Sources/JavaStdlib/JavaUtil/generated/Stack.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ import SwiftJava
33
import SwiftJavaJNICore
44

55
@JavaClass("java.util.Stack")
6-
open class Stack<E: AnyJavaObject>: JavaObject {
6+
open class Stack<Stack_E: AnyJavaObject>: JavaObject {
7+
public typealias E = Stack_E
8+
79
@JavaMethod
810
@_nonoverride public convenience init(environment: JNIEnvironment? = nil)
911

0 commit comments

Comments
 (0)