Javadoc for Package java.lang.foreign
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Thu Jun 2 17:55:07 UTC 2022
Good catch, seems like something was lost in there. You need:
linker.defaultLookup().lookup("strlen").get()
Maurizio
On 02/06/2022 18:41, Andrew Haley wrote:
> Contains this:
>
> var linker = Linker.nativeLinker();
> MethodHandle strlen = linker.downcallHandle(
> linker.lookup("strlen").get(),
> FunctionDescriptor.of(ValueLayout.JAVA_LONG, ValueLayout.ADDRESS)
> );
>
> try (var session = MemorySession.openConfined()) {
> var cString = MemorySegment.allocateNative(5 + 1, session);
> cString.setUtf8String("Hello");
> long len = (long)strlen.invoke(cString); // 5
> }
>
> I can't get it to work:
>
> PanamaExample.java:9: error: cannot find symbol
> (linker.lookup("strlen").get(),
> ^
> symbol: method lookup(String)
> location: variable linker of type Linker
>
> Is this an old version of the API?
>
More information about the panama-dev
mailing list