Skip to content

Commit 33617e4

Browse files
committed
work on unifying modules
1 parent b393fcf commit 33617e4

Some content is hidden

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

42 files changed

+315
-1682
lines changed

Samples/SwiftAndJavaJarSampleLib/src/main/java/com/example/swift/HelloJava2Swift.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@
1818

1919
// Import javakit/swiftkit support libraries
2020
import org.swift.swiftkitffm.SwiftArena;
21-
import org.swift.swiftkitffm.SwiftKit;
21+
import org.swift.swiftkitffm.SwiftFFM;
2222

2323
public class HelloJava2Swift {
2424

2525
public static void main(String[] args) {
2626
boolean traceDowncalls = Boolean.getBoolean("jextract.trace.downcalls");
2727
System.out.println("Property: jextract.trace.downcalls = " + traceDowncalls);
2828

29-
System.out.print("Property: java.library.path = " +SwiftKit.getJavaLibraryPath());
29+
System.out.print("Property: java.library.path = " + SwiftFFM.getJavaLibraryPath());
3030

3131
examples();
3232
}
@@ -41,8 +41,8 @@ static void examples() {
4141
MySwiftClass obj = MySwiftClass.init(2222, 7777, arena);
4242

4343
// just checking retains/releases work
44-
SwiftKit.retain(obj);
45-
SwiftKit.release(obj);
44+
SwiftFFM.retain(obj);
45+
SwiftFFM.release(obj);
4646

4747
obj.voidMethod();
4848
obj.takeIntMethod(42);

Samples/SwiftAndJavaJarSampleLib/src/test/java/com/example/swift/MySwiftClassTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import org.junit.jupiter.api.Disabled;
1818
import org.junit.jupiter.api.Test;
1919
import org.swift.swiftkitffm.SwiftArena;
20-
import org.swift.swiftkitffm.SwiftKit;
20+
import org.swift.swiftkitffm.SwiftFFM;
2121

2222
import java.io.File;
2323
import java.util.stream.Stream;
@@ -27,7 +27,7 @@
2727
public class MySwiftClassTest {
2828

2929
void checkPaths(Throwable throwable) {
30-
var paths = SwiftKit.getJavaLibraryPath().split(":");
30+
var paths = SwiftFFM.getJavaLibraryPath().split(":");
3131
for (var path : paths) {
3232
System.out.println("CHECKING PATH: " + path);
3333
Stream.of(new File(path).listFiles())

Samples/SwiftAndJavaJarSampleLib/src/test/java/org/swift/swiftkitffm/MySwiftClassTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ void call_retain_retainCount_release() {
2727
var arena = SwiftArena.ofConfined();
2828
var obj = MySwiftClass.init(1, 2, arena);
2929

30-
assertEquals(1, SwiftKit.retainCount(obj));
30+
assertEquals(1, SwiftFFM.retainCount(obj));
3131
// TODO: test directly on SwiftHeapObject inheriting obj
3232

33-
SwiftKit.retain(obj);
34-
assertEquals(2, SwiftKit.retainCount(obj));
33+
SwiftFFM.retain(obj);
34+
assertEquals(2, SwiftFFM.retainCount(obj));
3535

36-
SwiftKit.release(obj);
37-
assertEquals(1, SwiftKit.retainCount(obj));
36+
SwiftFFM.release(obj);
37+
assertEquals(1, SwiftFFM.retainCount(obj));
3838
}
3939
}

Samples/SwiftAndJavaJarSampleLib/src/test/java/org/swift/swiftkitffm/SwiftArenaTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@
2020
import org.swift.swiftkitffm.util.PlatformUtils;
2121

2222
import static org.junit.jupiter.api.Assertions.*;
23-
import static org.swift.swiftkitffm.SwiftKit.*;
24-
import static org.swift.swiftkitffm.SwiftKit.retainCount;
23+
import static org.swift.swiftkitffm.SwiftFFM.retainCount;
2524

2625
public class SwiftArenaTest {
2726

Samples/SwiftKitSampleApp/src/main/java/com/example/swift/HelloJava2Swift.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@
1919
// Import javakit/swiftkit support libraries
2020

2121
import org.swift.swiftkitffm.SwiftArena;
22-
import org.swift.swiftkitffm.SwiftKit;
22+
import org.swift.swiftkitffm.SwiftFFM;
2323

2424
public class HelloJava2Swift {
2525

2626
public static void main(String[] args) {
2727
boolean traceDowncalls = Boolean.getBoolean("jextract.trace.downcalls");
2828
System.out.println("Property: jextract.trace.downcalls = " + traceDowncalls);
2929

30-
System.out.print("Property: java.library.path = " + SwiftKit.getJavaLibraryPath());
30+
System.out.print("Property: java.library.path = " + SwiftFFM.getJavaLibraryPath());
3131

3232
examples();
3333
}
@@ -39,30 +39,30 @@ static void examples() {
3939

4040
long cnt = MySwiftLibrary.globalWriteString("String from Java");
4141

42-
SwiftKit.trace("count = " + cnt);
42+
SwiftFFM.trace("count = " + cnt);
4343

4444
MySwiftLibrary.globalCallMeRunnable(() -> {
45-
SwiftKit.trace("running runnable");
45+
SwiftFFM.trace("running runnable");
4646
});
4747

48-
SwiftKit.trace("getGlobalBuffer().byteSize()=" + MySwiftLibrary.getGlobalBuffer().byteSize());
48+
SwiftFFM.trace("getGlobalBuffer().byteSize()=" + MySwiftLibrary.getGlobalBuffer().byteSize());
4949

5050
MySwiftLibrary.withBuffer((buf) -> {
51-
SwiftKit.trace("withBuffer{$0.byteSize()}=" + buf.byteSize());
51+
SwiftFFM.trace("withBuffer{$0.byteSize()}=" + buf.byteSize());
5252
});
5353
// Example of using an arena; MyClass.deinit is run at end of scope
5454
try (var arena = SwiftArena.ofConfined()) {
5555
MySwiftClass obj = MySwiftClass.init(2222, 7777, arena);
5656

5757
// just checking retains/releases work
58-
SwiftKit.trace("retainCount = " + SwiftKit.retainCount(obj));
59-
SwiftKit.retain(obj);
60-
SwiftKit.trace("retainCount = " + SwiftKit.retainCount(obj));
61-
SwiftKit.release(obj);
62-
SwiftKit.trace("retainCount = " + SwiftKit.retainCount(obj));
58+
SwiftFFM.trace("retainCount = " + SwiftFFM.retainCount(obj));
59+
SwiftFFM.retain(obj);
60+
SwiftFFM.trace("retainCount = " + SwiftFFM.retainCount(obj));
61+
SwiftFFM.release(obj);
62+
SwiftFFM.trace("retainCount = " + SwiftFFM.retainCount(obj));
6363

6464
obj.setCounter(12);
65-
SwiftKit.trace("obj.counter = " + obj.getCounter());
65+
SwiftFFM.trace("obj.counter = " + obj.getCounter());
6666

6767
obj.voidMethod();
6868
obj.takeIntMethod(42);
@@ -71,9 +71,9 @@ static void examples() {
7171
otherObj.voidMethod();
7272

7373
MySwiftStruct swiftValue = MySwiftStruct.init(2222, 1111, arena);
74-
SwiftKit.trace("swiftValue.capacity = " + swiftValue.getCapacity());
74+
SwiftFFM.trace("swiftValue.capacity = " + swiftValue.getCapacity());
7575
swiftValue.withCapLen((cap, len) -> {
76-
SwiftKit.trace("withCapLenCallback: cap=" + cap + ", len=" + len);
76+
SwiftFFM.trace("withCapLenCallback: cap=" + cap + ", len=" + len);
7777
});
7878
}
7979

Samples/SwiftKitSampleApp/src/test/java/com/example/swift/MySwiftClassTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import org.junit.jupiter.api.Disabled;
1818
import org.junit.jupiter.api.Test;
1919
import org.swift.swiftkitffm.SwiftArena;
20-
import org.swift.swiftkitffm.SwiftKit;
20+
import org.swift.swiftkitffm.SwiftFFM;
2121

2222
import java.io.File;
2323
import java.util.stream.Stream;
@@ -27,7 +27,7 @@
2727
public class MySwiftClassTest {
2828

2929
void checkPaths(Throwable throwable) {
30-
var paths = SwiftKit.getJavaLibraryPath().split(":");
30+
var paths = SwiftFFM.getJavaLibraryPath().split(":");
3131
for (var path : paths) {
3232
Stream.of(new File(path).listFiles())
3333
.filter(file -> !file.isDirectory())

Samples/SwiftKitSampleApp/src/test/java/org/swift/swiftkitffm/MySwiftClassTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ void call_retain_retainCount_release() {
2727
var arena = SwiftArena.ofConfined();
2828
var obj = MySwiftClass.init(1, 2, arena);
2929

30-
assertEquals(1, SwiftKit.retainCount(obj));
30+
assertEquals(1, SwiftFFM.retainCount(obj));
3131
// TODO: test directly on SwiftHeapObject inheriting obj
3232

33-
SwiftKit.retain(obj);
34-
assertEquals(2, SwiftKit.retainCount(obj));
33+
SwiftFFM.retain(obj);
34+
assertEquals(2, SwiftFFM.retainCount(obj));
3535

36-
SwiftKit.release(obj);
37-
assertEquals(1, SwiftKit.retainCount(obj));
36+
SwiftFFM.release(obj);
37+
assertEquals(1, SwiftFFM.retainCount(obj));
3838
}
3939
}

Samples/SwiftKitSampleApp/src/test/java/org/swift/swiftkitffm/SwiftArenaTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@
2121
import org.swift.swiftkitffm.util.PlatformUtils;
2222

2323
import static org.junit.jupiter.api.Assertions.*;
24-
import static org.swift.swiftkitffm.SwiftKit.*;
25-
import static org.swift.swiftkitffm.SwiftKit.retainCount;
24+
import static org.swift.swiftkitffm.SwiftFFM.retainCount;
2625

2726
public class SwiftArenaTest {
2827

SwiftKitCore/src/main/java/org/swift/swiftkitcore/AutoSwiftMemorySession.java

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
//
1313
//===----------------------------------------------------------------------===//
1414

15-
package org.swift.swiftkitffm;
15+
package org.swift.swiftkitcore;
1616

1717
import java.lang.foreign.Arena;
1818
import java.lang.foreign.MemorySegment;
@@ -37,34 +37,33 @@
3737
*
3838
* <p> Whenever possible, prefer using an explicitly managed {@link SwiftArena}, such as {@link SwiftArena#ofConfined()}.
3939
*/
40-
final class AutoSwiftMemorySession implements SwiftArena {
41-
42-
private final Arena arena;
43-
private final Cleaner cleaner;
44-
45-
public AutoSwiftMemorySession(ThreadFactory cleanerThreadFactory) {
46-
this.cleaner = Cleaner.create(cleanerThreadFactory);
47-
this.arena = Arena.ofAuto();
48-
}
49-
50-
@Override
51-
public void register(SwiftInstance instance) {
52-
Objects.requireNonNull(instance, "value");
53-
54-
// We're doing this dance to avoid keeping a strong reference to the value itself
55-
var statusDestroyedFlag = instance.$statusDestroyedFlag();
56-
Runnable markAsDestroyed = () -> statusDestroyedFlag.set(true);
57-
58-
MemorySegment resource = instance.$memorySegment();
59-
var cleanupAction = new SwiftInstanceCleanup(resource, instance.$swiftType(), markAsDestroyed);
60-
cleaner.register(instance, cleanupAction);
61-
}
62-
63-
@Override
64-
public MemorySegment allocate(long byteSize, long byteAlignment) {
65-
return arena.allocate(byteSize, byteAlignment);
66-
}
67-
}
40+
//final class AutoSwiftMemorySession implements SwiftArena {
41+
//
42+
// private final Cleaner cleaner;
43+
//
44+
// public AutoSwiftMemorySession(ThreadFactory cleanerThreadFactory) {
45+
// this.cleaner = Cleaner.create(cleanerThreadFactory);
46+
// this.arena = Arena.ofAuto();
47+
// }
48+
//
49+
// @Override
50+
// public void register(SwiftInstance instance) {
51+
// Objects.requireNonNull(instance, "value");
52+
//
53+
// // We're doing this dance to avoid keeping a strong reference to the value itself
54+
// var statusDestroyedFlag = instance.$statusDestroyedFlag();
55+
// Runnable markAsDestroyed = () -> statusDestroyedFlag.set(true);
56+
//
57+
// MemorySegment resource = instance.$memorySegment();
58+
// var cleanupAction = new SwiftInstanceCleanup(resource, instance.$swiftType(), markAsDestroyed);
59+
// cleaner.register(instance, cleanupAction);
60+
// }
61+
//
62+
// @Override
63+
// public MemorySegment allocate(long byteSize, long byteAlignment) {
64+
// return arena.allocate(byteSize, byteAlignment);
65+
// }
66+
//}
6867

6968
/**
7069
* interface AllocatingSwiftArena implements SwiftArena extends SegmentAllocator {}

SwiftKitCore/src/main/java/org/swift/swiftkitcore/ClosableSwiftArena.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@
1212
//
1313
//===----------------------------------------------------------------------===//
1414

15-
package org.swift.swiftkitffm;
16-
17-
// Can be moved
15+
package org.swift.swiftkitcore;
1816

1917
/**
2018
* Auto-closable version of {@link SwiftArena}.
@@ -26,5 +24,4 @@ public interface ClosableSwiftArena extends SwiftArena, AutoCloseable {
2624
* Throws if unable to verify all resources have been release (e.g. over retained Swift classes)
2725
*/
2826
void close();
29-
3027
}

0 commit comments

Comments
 (0)