org.purejava.appindicator.GSocketSourceFunc Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of libappindicator-gtk3-java-full Show documentation
Show all versions of libappindicator-gtk3-java-full Show documentation
Java bindings for libappindicator-gtk3 in 100% pure Java
// Generated by jextract
package org.purejava.appindicator;
import java.lang.foreign.Arena;
import java.lang.foreign.MemorySegment;
/**
* {@snippet :
* int (*GSocketSourceFunc)(struct _GSocket* socket,enum GIOCondition condition,void* data);
* }
*/
public interface GSocketSourceFunc {
int apply(java.lang.foreign.MemorySegment datagram_based, int condition, java.lang.foreign.MemorySegment data);
static MemorySegment allocate(GSocketSourceFunc fi, Arena scope) {
return RuntimeHelper.upcallStub(constants$694.const$5, fi, constants$150.const$0, scope);
}
static GSocketSourceFunc ofAddress(MemorySegment addr, Arena arena) {
MemorySegment symbol = addr.reinterpret(arena, null);
return (java.lang.foreign.MemorySegment _datagram_based, int _condition, java.lang.foreign.MemorySegment _data) -> {
try {
return (int)constants$315.const$3.invokeExact(symbol, _datagram_based, _condition, _data);
} catch (Throwable ex$) {
throw new AssertionError("should not reach here", ex$);
}
};
}
}