Skip to content

Commit c95525a

Browse files
committedOct 20, 2023
Dev: support Swift 5.7
1 parent 3078a6d commit c95525a

14 files changed

+250
-209
lines changed
 

‎build.gradle

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
buildscript {
2-
ext.kotlin_version = '1.5.10'
2+
ext.kotlin_version = '1.6.21'
33

44
repositories {
55
google()
@@ -10,8 +10,8 @@ buildscript {
1010
}
1111

1212
dependencies {
13-
classpath 'com.android.tools.build:gradle:4.2.2'
14-
classpath "com.readdle.android.swift:gradle:1.4.0"
13+
classpath 'com.android.tools.build:gradle:7.4.2'
14+
classpath "com.readdle.android.swift:gradle:1.4.4"
1515
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1616
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
1717
classpath 'io.github.gradle-nexus:publish-plugin:1.1.0'
@@ -34,5 +34,5 @@ apply from: "${rootDir}/publish-root.gradle"
3434

3535
ext {
3636
PUBLISH_GROUP_ID = 'com.readdle.swift.java.codegen'
37-
PUBLISH_VERSION = "0.9.3"
37+
PUBLISH_VERSION = "0.9.4"
3838
}

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

+2-2
Original file line numberDiff line numberDiff line change
@@ -316,13 +316,13 @@ private void generateJavaSwift(Filer filer) throws IOException {
316316
swiftWriter.emitStatement("public let SwiftRuntimeErrorClass = JNI.GlobalFindClass(\"com/readdle/codegen/anotation/SwiftRuntimeError\")");
317317
swiftWriter.emitEmptyLine();
318318
// TODO: remove when JavaCoder become deprecated
319-
swiftWriter.emitStatement("@_silgen_name(\"Java_com_readdle_codegen_anotation_JavaSwift_init\")");
319+
swiftWriter.emitStatement("@_cdecl(\"Java_com_readdle_codegen_anotation_JavaSwift_init\")");
320320
swiftWriter.emitStatement("public func Java_com_readdle_codegen_anotation_JavaBridgeable_init(env: UnsafeMutablePointer<JNIEnv?>, clazz: jclass) {");
321321
swiftWriter.emitStatement("JavaCoderConfig.RegisterBasicJavaTypes()");
322322
swiftWriter.emitStatement("}");
323323

324324
// TODO: move to sample project
325-
swiftWriter.emitStatement("@_silgen_name(\"Java_com_readdle_codegen_anotation_JavaSwift_dumpReferenceTables\")");
325+
swiftWriter.emitStatement("@_cdecl(\"Java_com_readdle_codegen_anotation_JavaSwift_dumpReferenceTables\")");
326326
swiftWriter.emitStatement("public func Java_com_readdle_codegen_anotation_JavaBridgeable_dumpReferenceTables(env: UnsafeMutablePointer<JNIEnv?>, clazz: jclass) {");
327327
swiftWriter.emitStatement("JNI.dumpReferenceTables()");
328328
swiftWriter.emitStatement("}");

‎compiler/src/main/java/com/readdle/codegen/SwiftDelegateDescriptor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ File generateCode() throws IOException {
257257
if (!isInterface) {
258258
String swiftFuncName = Utils.mangleFunctionName(javaFullName, "init", new ArrayList<>());
259259
swiftWriter.emitEmptyLine();
260-
swiftWriter.emitStatement(String.format("@_silgen_name(\"%s\")", swiftFuncName));
260+
swiftWriter.emitStatement(String.format("@_cdecl(\"%s\")", swiftFuncName));
261261
swiftWriter.emitStatement(String.format("public func %s(env: UnsafeMutablePointer<JNIEnv?>, this: jobject) {", swiftFuncName));
262262
swiftWriter.emitStatement(String.format("let swiftSelf = %s(jniObject: this)", simpleTypeName));
263263
swiftWriter.emitStatement("let nativePointer = jlong(Int(bitPattern: Unmanaged.passRetained(swiftSelf).toOpaque()))");

‎compiler/src/main/java/com/readdle/codegen/SwiftFuncDescriptor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public void generateCode(SwiftWriter swiftWriter, String javaFullName, String sw
9090
String swiftFuncName = Utils.mangleFunctionName(javaFullName, javaMethodName, params);
9191

9292
swiftWriter.emitEmptyLine();
93-
swiftWriter.emitStatement(String.format("@_silgen_name(\"%s\")", swiftFuncName));
93+
swiftWriter.emitStatement(String.format("@_cdecl(\"%s\")", swiftFuncName));
9494
swiftWriter.emit(String.format("public func %s(env: UnsafeMutablePointer<JNIEnv?>, %s", swiftFuncName, isStatic ? "clazz: jclass" : "this: jobject"));
9595

9696
for (SwiftParamDescriptor param : params) {

‎compiler/src/main/java/com/readdle/codegen/SwiftGetterDescriptor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void generateCode(SwiftWriter swiftWriter, String javaFullName, String sw
5757
String swiftFuncName = Utils.mangleFunctionName(javaFullName, javaName, new ArrayList<>());
5858

5959
swiftWriter.emitEmptyLine();
60-
swiftWriter.emitStatement(String.format("@_silgen_name(\"%s\")", swiftFuncName));
60+
swiftWriter.emitStatement(String.format("@_cdecl(\"%s\")", swiftFuncName));
6161
swiftWriter.emit(String.format("public func %s(env: UnsafeMutablePointer<JNIEnv?>, %s", swiftFuncName, isStatic ? "clazz: jclass" : "this: jobject"));
6262

6363
String retType = "";

‎compiler/src/main/java/com/readdle/codegen/SwiftSetterDescriptor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void generateCode(SwiftWriter swiftWriter, String javaFullName, String sw
4949
String swiftFuncName = Utils.mangleFunctionName(javaFullName, javaName, Collections.singletonList(param));
5050

5151
swiftWriter.emitEmptyLine();
52-
swiftWriter.emitStatement(String.format("@_silgen_name(\"%s\")", swiftFuncName));
52+
swiftWriter.emitStatement(String.format("@_cdecl(\"%s\")", swiftFuncName));
5353
swiftWriter.emit(String.format("public func %s(env: UnsafeMutablePointer<JNIEnv?>, %s", swiftFuncName, isStatic ? "clazz: jclass" : "this: jobject"));
5454
swiftWriter.emit(String.format(", j%s: %s%s) {\n", param.name, param.swiftType.javaSigType(param.isOptional), param.isOptional ? "?" : ""));
5555
swiftWriter.emitEmptyLine();

‎gradle/wrapper/gradle-wrapper.jar

5.76 KB
Binary file not shown.
+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
#Wed Jan 27 00:03:50 EET 2021
21
distributionBase=GRADLE_USER_HOME
32
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip

0 commit comments

Comments
 (0)