Skip to content

Commit a260b22

Browse files
committed
[ADD] Remove generics from JavaType
1 parent ac525de commit a260b22

File tree

3 files changed

+35
-0
lines changed

3 files changed

+35
-0
lines changed

compiler/src/main/java/com/readdle/codegen/JavaSwiftProcessor.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -475,6 +475,9 @@ else if (javaType.startsWith("java.util.HashMap<")) {
475475
return new SwiftEnvironment.Type("[" + keyType.swiftType + ":" + valueType.swiftType + "]", javaType);
476476
}
477477
else {
478+
//Remove generics
479+
javaType = javaType.replaceAll("<.*>","");
480+
478481
// Try found enclosing typename
479482
String[] parts = javaType.split(Pattern.quote("$"));
480483
if (parts.length == 1) {
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package io.kodika.android.TestPackage
2+
3+
import com.readdle.codegen.anotation.SwiftCallbackFunc
4+
import com.readdle.codegen.anotation.SwiftReference
5+
6+
@SwiftReference
7+
class SwiftReferenceWithGeneric<T: Any> private constructor() {
8+
9+
internal val nativePointer: Long = 0L
10+
11+
// Swift JNI release method
12+
external fun release()
13+
14+
@SwiftCallbackFunc
15+
fun callType(a: SwiftReferenceWithGeneric<Int>): SwiftReferenceWithGeneric<String>{
16+
TODO()
17+
}
18+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
//
2+
// SwiftReferenceWithGeneric.swift
3+
//
4+
//
5+
// Created by Kostas Antonopoulos on 5/4/21.
6+
//
7+
8+
import Foundation
9+
import java_swift
10+
11+
public class SwiftReferenceWithGeneric: JavaObject {
12+
13+
14+
}

0 commit comments

Comments
 (0)