diff --git a/samples/cblas/TestBlas.java b/samples/cblas/TestBlas.java index 5d2ea063..904e4716 100644 --- a/samples/cblas/TestBlas.java +++ b/samples/cblas/TestBlas.java @@ -53,7 +53,7 @@ public static void main(String[] args) { alpha = 1; beta = 0; - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var a = arena.allocateArray(C_DOUBLE, 1.0, 2.0, 3.0, 4.0, 1.0, 1.0, 1.0, 1.0, diff --git a/samples/dlopen/Dlopen.java b/samples/dlopen/Dlopen.java index 48b7e104..5f88b134 100644 --- a/samples/dlopen/Dlopen.java +++ b/samples/dlopen/Dlopen.java @@ -39,17 +39,17 @@ public class Dlopen { // implementation of Symbol lookup that loads a given shared object using dlopen // and looks up symbols using dlsym - private static Function<String, Optional<MemorySegment>> lookup(String libraryName, SegmentScope scope) { - try (Arena libArena = Arena.openConfined()) { + private static Function<String, Optional<MemorySegment>> lookup(String libraryName, Arena arena) { + try (Arena libArena = Arena.ofConfined()) { var handleAddr = dlopen(libArena.allocateUtf8String(libraryName), RTLD_LOCAL()); if (handleAddr.equals(MemorySegment.NULL)) { throw new IllegalArgumentException("Cannot find library: " + libraryName); } - var handle = MemorySegment.ofAddress(handleAddr.address(), 0, scope, + var handle = MemorySegment.ofAddress(handleAddr.address(), 0, arena, () -> dlclose(handleAddr)); return name -> { - try (var arena = Arena.openConfined()) { - var addr = dlsym(handle, arena.allocateUtf8String(name)); + try (var newArena = Arena.ofConfined()) { + var addr = dlsym(handle, newArena.allocateUtf8String(name)); return addr.equals(MemorySegment.NULL) ? Optional.empty() : Optional.of(addr); } @@ -60,8 +60,8 @@ private static Function<String, Optional<MemorySegment>> lookup(String libraryNa public static void main(String[] args) throws Throwable { var arg = args.length > 0? args[0] : "Java"; var libName = "libhello.dylib"; - try (var arena = Arena.openConfined()) { - var symLookup = lookup(libName, arena.scope()); + try (var arena = Arena.ofConfined()) { + var symLookup = lookup(libName, arena); var linker = Linker.nativeLinker(); // get method handle for a function from helloLIb diff --git a/samples/lapack/TestLapack.java b/samples/lapack/TestLapack.java index 1c9507a9..d89291d6 100644 --- a/samples/lapack/TestLapack.java +++ b/samples/lapack/TestLapack.java @@ -39,7 +39,7 @@ public class TestLapack { public static void main(String[] args) { /* Locals */ - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var A = arena.allocateArray(C_DOUBLE, 1, 2, 3, 4, 5, 1, 3, 5, 2, 4, 1, 4, 2, 5, 3 ); diff --git a/samples/libclang/ASTPrinter.java b/samples/libclang/ASTPrinter.java index cd31764d..7037fcb1 100644 --- a/samples/libclang/ASTPrinter.java +++ b/samples/libclang/ASTPrinter.java @@ -47,7 +47,7 @@ public static void main(String[] args) { System.exit(1); } - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { // parse the C header/source passed from the command line var index = clang_createIndex(0, 0); var tu = clang_parseTranslationUnit(index, arena.allocateUtf8String(args[0]), @@ -75,7 +75,7 @@ public static void main(String[] args) { level[0]--; return CXChildVisit_Continue(); - }, arena.scope()); + }, arena); // get the AST root and visit it var root = clang_getTranslationUnitCursor(arena, tu); diff --git a/samples/libcurl/CurlMain.java b/samples/libcurl/CurlMain.java index cca175de..4d7a9e49 100644 --- a/samples/libcurl/CurlMain.java +++ b/samples/libcurl/CurlMain.java @@ -41,7 +41,7 @@ public static void main(String[] args) { curl_global_init(CURL_GLOBAL_DEFAULT()); var curl = curl_easy_init(); if(!curl.equals(NULL)) { - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var url = arena.allocateUtf8String(urlStr); curl_easy_setopt(curl, CURLOPT_URL(), url.address()); int res = curl_easy_perform(curl); diff --git a/samples/libffmpeg/LibffmpegMain.java b/samples/libffmpeg/LibffmpegMain.java index 479c87f0..2209577e 100644 --- a/samples/libffmpeg/LibffmpegMain.java +++ b/samples/libffmpeg/LibffmpegMain.java @@ -62,7 +62,7 @@ public static void main(String[] args) { } private static class ArenaCleanup implements AutoCloseable { - private Arena arena = Arena.openConfined(); + private Arena arena = Arena.ofConfined(); private final List<Runnable> preCloseActions = new ArrayList<>(); void addCleanup(Runnable runnable) { @@ -232,7 +232,7 @@ private static Exit run(String[] args) { // Save the frame to disk if (++i <= NUM_FRAMES_TO_CAPTURE) { try { - saveFrame(pFrameRGB, arena.scope(), width, height, i); + saveFrame(pFrameRGB, arena, width, height, i); } catch (Exception exp) { exp.printStackTrace(); return new Exit("save frame failed for frame " + i, 1); @@ -274,7 +274,7 @@ private static Exit run(String[] args) { return new Exit("Goodbye!", 0); } - private static void saveFrame(MemorySegment frameRGB, SegmentScope scope, + private static void saveFrame(MemorySegment frameRGB, Arena arena, int width, int height, int iFrame) throws IOException { var header = String.format("P6\n%d %d\n255\n", width, height); @@ -290,7 +290,7 @@ private static void saveFrame(MemorySegment frameRGB, SegmentScope scope, // Write pixel data for (int y = 0; y < height; y++) { // frameRGB.data[0] + y*frameRGB.linesize[0] is the pointer. And 3*width size of data - var pixelArray = MemorySegment.ofAddress(pdata.address() + y*linesize, 3*width, scope); + var pixelArray = MemorySegment.ofAddress(pdata.address() + y*linesize, 3*width, arena); // dump the pixel byte buffer to file os.write(pixelArray.toArray(C_CHAR)); } diff --git a/samples/libgit2/GitClone.java b/samples/libgit2/GitClone.java index dfeb10e0..71fe3a9d 100644 --- a/samples/libgit2/GitClone.java +++ b/samples/libgit2/GitClone.java @@ -42,7 +42,7 @@ public static void main(String[] args) { System.exit(1); } git_libgit2_init(); - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var repo = arena.allocate(C_POINTER); var url = arena.allocateUtf8String(args[0]); var path = arena.allocateUtf8String(args[1]); diff --git a/samples/libjimage/JImageFile.java b/samples/libjimage/JImageFile.java index dce4503a..8161915f 100644 --- a/samples/libjimage/JImageFile.java +++ b/samples/libjimage/JImageFile.java @@ -46,7 +46,7 @@ public static void main(String[] args) { System.err.println(modPath + " not found, please check if your java.home"); return; } - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var jintResPtr = arena.allocate(jint); var moduleFilePath = arena.allocateUtf8String(javaHome + "/lib/modules"); var jimageFile = JIMAGE_Open(moduleFilePath, jintResPtr); @@ -68,7 +68,7 @@ public static void main(String[] args) { System.out.println("package " + package_name.getUtf8String(0)); System.out.println("name " + name.getUtf8String(0)); return 1; - }, arena.scope()); + }, arena); JIMAGE_ResourceIterator(jimageFile, visitor, NULL); diff --git a/samples/libjimage/org/openjdk/Constants$root.java b/samples/libjimage/org/openjdk/Constants$root.java index 08af0bf9..c051d706 100644 --- a/samples/libjimage/org/openjdk/Constants$root.java +++ b/samples/libjimage/org/openjdk/Constants$root.java @@ -19,7 +19,7 @@ final class Constants$root { static final OfLong C_LONG_LONG$LAYOUT = JAVA_LONG; static final OfFloat C_FLOAT$LAYOUT = JAVA_FLOAT; static final OfDouble C_DOUBLE$LAYOUT = JAVA_DOUBLE; - static final OfAddress C_POINTER$LAYOUT = ADDRESS.withBitAlignment(64).asUnbounded(); + static final OfAddress C_POINTER$LAYOUT = ADDRESS.withBitAlignment(64).withTargetLayout(MemoryLayout.sequenceLayout(Constants$root.C_CHAR$LAYOUT)); } diff --git a/samples/libjimage/org/openjdk/JImageClose_t.java b/samples/libjimage/org/openjdk/JImageClose_t.java index f77e4a64..48d65590 100644 --- a/samples/libjimage/org/openjdk/JImageClose_t.java +++ b/samples/libjimage/org/openjdk/JImageClose_t.java @@ -15,10 +15,10 @@ public interface JImageClose_t { void apply(java.lang.foreign.MemorySegment jimage); - static MemorySegment allocate(JImageClose_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageClose_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageClose_t.class, fi, constants$0.JImageClose_t$FUNC, scope); } - static JImageClose_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageClose_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage) -> { try { diff --git a/samples/libjimage/org/openjdk/JImageFindResource_t.java b/samples/libjimage/org/openjdk/JImageFindResource_t.java index b1466c2c..d4fd2821 100644 --- a/samples/libjimage/org/openjdk/JImageFindResource_t.java +++ b/samples/libjimage/org/openjdk/JImageFindResource_t.java @@ -15,10 +15,10 @@ public interface JImageFindResource_t { long apply(java.lang.foreign.MemorySegment jimage, java.lang.foreign.MemorySegment module_name, java.lang.foreign.MemorySegment version, java.lang.foreign.MemorySegment name, java.lang.foreign.MemorySegment size); - static MemorySegment allocate(JImageFindResource_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageFindResource_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageFindResource_t.class, fi, constants$1.JImageFindResource_t$FUNC, scope); } - static JImageFindResource_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageFindResource_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, java.lang.foreign.MemorySegment _module_name, java.lang.foreign.MemorySegment _version, java.lang.foreign.MemorySegment _name, java.lang.foreign.MemorySegment _size) -> { try { diff --git a/samples/libjimage/org/openjdk/JImageGetResource_t.java b/samples/libjimage/org/openjdk/JImageGetResource_t.java index d39366a5..c253fe37 100644 --- a/samples/libjimage/org/openjdk/JImageGetResource_t.java +++ b/samples/libjimage/org/openjdk/JImageGetResource_t.java @@ -15,10 +15,10 @@ public interface JImageGetResource_t { long apply(java.lang.foreign.MemorySegment jimage, long location, java.lang.foreign.MemorySegment buffer, long size); - static MemorySegment allocate(JImageGetResource_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageGetResource_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageGetResource_t.class, fi, constants$2.JImageGetResource_t$FUNC, scope); } - static JImageGetResource_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageGetResource_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, long _location, java.lang.foreign.MemorySegment _buffer, long _size) -> { try { diff --git a/samples/libjimage/org/openjdk/JImageOpen_t.java b/samples/libjimage/org/openjdk/JImageOpen_t.java index cb2f9e69..a0072c36 100644 --- a/samples/libjimage/org/openjdk/JImageOpen_t.java +++ b/samples/libjimage/org/openjdk/JImageOpen_t.java @@ -15,10 +15,10 @@ public interface JImageOpen_t { java.lang.foreign.MemorySegment apply(java.lang.foreign.MemorySegment jimage, java.lang.foreign.MemorySegment package_name); - static MemorySegment allocate(JImageOpen_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageOpen_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageOpen_t.class, fi, constants$0.JImageOpen_t$FUNC, scope); } - static JImageOpen_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageOpen_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, java.lang.foreign.MemorySegment _package_name) -> { try { diff --git a/samples/libjimage/org/openjdk/JImagePackageToModule_t.java b/samples/libjimage/org/openjdk/JImagePackageToModule_t.java index f173b378..b9c1d1b5 100644 --- a/samples/libjimage/org/openjdk/JImagePackageToModule_t.java +++ b/samples/libjimage/org/openjdk/JImagePackageToModule_t.java @@ -15,10 +15,10 @@ public interface JImagePackageToModule_t { java.lang.foreign.MemorySegment apply(java.lang.foreign.MemorySegment jimage, java.lang.foreign.MemorySegment package_name); - static MemorySegment allocate(JImagePackageToModule_t fi, SegmentScope scope) { + static MemorySegment allocate(JImagePackageToModule_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImagePackageToModule_t.class, fi, constants$1.JImagePackageToModule_t$FUNC, scope); } - static JImagePackageToModule_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImagePackageToModule_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, java.lang.foreign.MemorySegment _package_name) -> { try { diff --git a/samples/libjimage/org/openjdk/JImageResourceIterator_t.java b/samples/libjimage/org/openjdk/JImageResourceIterator_t.java index 76da71c9..383f2c9d 100644 --- a/samples/libjimage/org/openjdk/JImageResourceIterator_t.java +++ b/samples/libjimage/org/openjdk/JImageResourceIterator_t.java @@ -15,10 +15,10 @@ public interface JImageResourceIterator_t { void apply(java.lang.foreign.MemorySegment jimage, java.lang.foreign.MemorySegment visitor, java.lang.foreign.MemorySegment arg); - static MemorySegment allocate(JImageResourceIterator_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageResourceIterator_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageResourceIterator_t.class, fi, constants$3.JImageResourceIterator_t$FUNC, scope); } - static JImageResourceIterator_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageResourceIterator_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, java.lang.foreign.MemorySegment _visitor, java.lang.foreign.MemorySegment _arg) -> { try { diff --git a/samples/libjimage/org/openjdk/JImageResourceVisitor_t.java b/samples/libjimage/org/openjdk/JImageResourceVisitor_t.java index 0c7ea027..695a6597 100644 --- a/samples/libjimage/org/openjdk/JImageResourceVisitor_t.java +++ b/samples/libjimage/org/openjdk/JImageResourceVisitor_t.java @@ -15,10 +15,10 @@ public interface JImageResourceVisitor_t { int apply(java.lang.foreign.MemorySegment jimage, java.lang.foreign.MemorySegment module_name, java.lang.foreign.MemorySegment version, java.lang.foreign.MemorySegment package_, java.lang.foreign.MemorySegment name, java.lang.foreign.MemorySegment extension, java.lang.foreign.MemorySegment arg); - static MemorySegment allocate(JImageResourceVisitor_t fi, SegmentScope scope) { + static MemorySegment allocate(JImageResourceVisitor_t fi, Arena scope) { return RuntimeHelper.upcallStub(JImageResourceVisitor_t.class, fi, constants$2.JImageResourceVisitor_t$FUNC, scope); } - static JImageResourceVisitor_t ofAddress(MemorySegment addr, SegmentScope scope) { + static JImageResourceVisitor_t ofAddress(MemorySegment addr, Arena scope) { MemorySegment symbol = MemorySegment.ofAddress(addr.address(), 0, scope); return (java.lang.foreign.MemorySegment _jimage, java.lang.foreign.MemorySegment _module_name, java.lang.foreign.MemorySegment _version, java.lang.foreign.MemorySegment _package_, java.lang.foreign.MemorySegment _name, java.lang.foreign.MemorySegment _extension, java.lang.foreign.MemorySegment _arg) -> { try { diff --git a/samples/libjimage/org/openjdk/RuntimeHelper.java b/samples/libjimage/org/openjdk/RuntimeHelper.java index 989e8436..7ee7fc43 100644 --- a/samples/libjimage/org/openjdk/RuntimeHelper.java +++ b/samples/libjimage/org/openjdk/RuntimeHelper.java @@ -7,7 +7,7 @@ import java.lang.foreign.SymbolLookup; import java.lang.foreign.MemoryLayout; import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentScope; +import java.lang.foreign.Arena; import java.lang.foreign.SegmentAllocator; import java.lang.foreign.ValueLayout; import java.lang.invoke.MethodHandle; @@ -32,7 +32,7 @@ final class RuntimeHelper { private static final SegmentAllocator THROWING_ALLOCATOR = (x, y) -> { throw new AssertionError("should not reach here"); }; final static SegmentAllocator CONSTANT_ALLOCATOR = - (size, align) -> MemorySegment.allocateNative(size, align, SegmentScope.auto()); + (size, align) -> Arena.ofAuto().allocate(size, align); static { // manual change @@ -45,7 +45,8 @@ final class RuntimeHelper { } else { libPath = "/lib/libjimage.so"; // some Unix } - SymbolLookup loaderLookup = SymbolLookup.libraryLookup(libPath, SegmentScope.global()); + SymbolLookup loaderLookup = SymbolLookup.libraryLookup(libPath, Arena.global()); + SYMBOL_LOOKUP = name -> loaderLookup.find(name).or(() -> LINKER.defaultLookup().find(name)); } @@ -60,7 +61,9 @@ static <T> T requireNonNull(T obj, String symbolName) { } static MemorySegment lookupGlobalVariable(String name, MemoryLayout layout) { - return SYMBOL_LOOKUP.find(name).map(symbol -> MemorySegment.ofAddress(symbol.address(), layout.byteSize(), symbol.scope())).orElse(null); + return SYMBOL_LOOKUP.find(name) + .map(s -> s.asUnbounded().asSlice(0, layout)) + .orElse(null); } static MethodHandle downcallHandle(String name, FunctionDescriptor fdesc) { @@ -79,7 +82,7 @@ static MethodHandle downcallHandleVariadic(String name, FunctionDescriptor fdesc orElse(null); } - static <Z> MemorySegment upcallStub(Class<Z> fi, Z z, FunctionDescriptor fdesc, SegmentScope scope) { + static <Z> MemorySegment upcallStub(Class<Z> fi, Z z, FunctionDescriptor fdesc, Arena scope) { try { MethodHandle handle = MH_LOOKUP.findVirtual(fi, "apply", fdesc.toMethodType()); handle = handle.bindTo(z); @@ -89,7 +92,7 @@ static <Z> MemorySegment upcallStub(Class<Z> fi, Z z, FunctionDescriptor fdesc, } } - static MemorySegment asArray(MemorySegment addr, MemoryLayout layout, int numElements, SegmentScope scope) { + static MemorySegment asArray(MemorySegment addr, MemoryLayout layout, int numElements, Arena scope) { return MemorySegment.ofAddress(addr.address(), numElements * layout.byteSize(), scope); } diff --git a/samples/libproc/LibprocMain.java b/samples/libproc/LibprocMain.java index f8b454ba..629ebdf2 100644 --- a/samples/libproc/LibprocMain.java +++ b/samples/libproc/LibprocMain.java @@ -40,7 +40,7 @@ public class LibprocMain { private static final int NAME_BUF_MAX = 256; public static void main(String[] args) { - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { // get the number of processes int numPids = proc_listallpids(NULL, 0); // allocate an array diff --git a/samples/libzstd/LibzstdMain.java b/samples/libzstd/LibzstdMain.java index 881c31fe..6e2eabbb 100644 --- a/samples/libzstd/LibzstdMain.java +++ b/samples/libzstd/LibzstdMain.java @@ -83,7 +83,7 @@ public static void main(String[] args) { System.out.println(TEXT); System.out.println(); - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { // Compress var uncompressedText = arena.allocateUtf8String(TEXT); // At least, the compressed text should not be larger than the uncompressed text. diff --git a/samples/lp_solve/LpSolveDemo.java b/samples/lp_solve/LpSolveDemo.java index 86f23686..6a9b1e7a 100644 --- a/samples/lp_solve/LpSolveDemo.java +++ b/samples/lp_solve/LpSolveDemo.java @@ -47,7 +47,7 @@ public static void main(String[] args) { return; } - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var colno = arena.allocateArray(C_INT, Ncol); var row = arena.allocateArray(C_DOUBLE, Ncol); diff --git a/samples/pcre2/PcreCheck.java b/samples/pcre2/PcreCheck.java index 367d570b..a661e760 100644 --- a/samples/pcre2/PcreCheck.java +++ b/samples/pcre2/PcreCheck.java @@ -40,7 +40,7 @@ public static void main(String[] args) { System.exit(1); } - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { // given regex to C string var pattern = arena.allocateUtf8String(args[0]); var patternSize = args[0].length(); diff --git a/samples/python3/PythonMain.java b/samples/python3/PythonMain.java index 7638ca94..d605c236 100644 --- a/samples/python3/PythonMain.java +++ b/samples/python3/PythonMain.java @@ -41,7 +41,7 @@ public static void main(String[] args) { String script = "print(sum([33, 55, 66])); print('Hello from Python!')\n"; Py_Initialize(); - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var str = arena.allocateUtf8String(script); PyRun_SimpleStringFlags(str, NULL); Py_Finalize(); diff --git a/samples/readline/Readline.java b/samples/readline/Readline.java index b0434099..441722aa 100644 --- a/samples/readline/Readline.java +++ b/samples/readline/Readline.java @@ -36,7 +36,7 @@ public class Readline { public static void main(String[] args) { - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var url = arena.allocateUtf8String("name? "); // call "readline" API diff --git a/samples/sqlite/SqliteMain.java b/samples/sqlite/SqliteMain.java index db6e8367..99efc593 100644 --- a/samples/sqlite/SqliteMain.java +++ b/samples/sqlite/SqliteMain.java @@ -38,7 +38,7 @@ public class SqliteMain { public static void main(String[] args) throws Exception { - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { // char** errMsgPtrPtr; var errMsgPtrPtr = arena.allocate(C_POINTER); @@ -95,8 +95,8 @@ public static void main(String[] args) throws Exception { var callback = sqlite3_exec$callback.allocate((a, argc, argv, columnNames) -> { System.out.println("Row num: " + rowNum[0]++); System.out.println("numColumns = " + argc); - var argv_seg = MemorySegment.ofAddress(argv.address(), C_POINTER.byteSize() * argc, arena.scope()); - var columnNames_seg = MemorySegment.ofAddress(columnNames.address(), C_POINTER.byteSize() * argc, arena.scope()); + var argv_seg = MemorySegment.ofAddress(argv.address(), C_POINTER.byteSize() * argc, arena); + var columnNames_seg = MemorySegment.ofAddress(columnNames.address(), C_POINTER.byteSize() * argc, arena); for (int i = 0; i < argc; i++) { String name = columnNames_seg.getAtIndex(C_POINTER, i).getUtf8String(0); String value = argv_seg.getAtIndex(C_POINTER, i).getUtf8String(0); @@ -104,7 +104,7 @@ public static void main(String[] args) throws Exception { System.out.printf("%s = %s\n", name, value); } return 0; - }, arena.scope()); + }, arena); // select query sql = arena.allocateUtf8String("SELECT * FROM EMPLOYEE"); diff --git a/samples/tcl/TCLMain.java b/samples/tcl/TCLMain.java index ba3cd057..17053b54 100644 --- a/samples/tcl/TCLMain.java +++ b/samples/tcl/TCLMain.java @@ -53,7 +53,7 @@ set name(last) "Turing" puts "Full name: $name(first) $name(last)" """; - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var str = arena.allocateUtf8String(script); Tcl_Eval(interp, str); } diff --git a/samples/tensorflow/TensorflowLoadSavedModel.java b/samples/tensorflow/TensorflowLoadSavedModel.java index e1ec2256..9c762d29 100644 --- a/samples/tensorflow/TensorflowLoadSavedModel.java +++ b/samples/tensorflow/TensorflowLoadSavedModel.java @@ -45,7 +45,7 @@ public static void main(String... args) throws Exception { System.exit(1); } - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var graph = TF_NewGraph(); var status = TF_NewStatus(); var sessionOpts = TF_NewSessionOptions(); diff --git a/samples/time/PanamaTime.java b/samples/time/PanamaTime.java index ea28ce58..bc8aea46 100644 --- a/samples/time/PanamaTime.java +++ b/samples/time/PanamaTime.java @@ -36,7 +36,7 @@ public class PanamaTime { public static void main(String[] args) { - try (var arena = Arena.openConfined()) { + try (var arena = Arena.ofConfined()) { var now = arena.allocate(C_LONG, System.currentTimeMillis() / 1000); MemorySegment time = tm.allocate(arena); localtime_r(now, time);