Interface DataForeachFunc

All Superinterfaces:
FunctionPointer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface @Generated("org.javagi.JavaGI") public interface DataForeachFunc extends FunctionPointer

Functional interface declaration of the DataForeachFunc callback.

See Also:
  • Method Details

    • run

      void run(Quark keyId, @Nullable MemorySegment data)
      Specifies the type of function passed to g_dataset_foreach(). It is called with each GQuark id and associated data element, together with the userData parameter supplied to g_dataset_foreach().
      Parameters:
      keyId - the GQuark id to identifying the data element.
      data - the data element.
    • upcall

      default void upcall(int keyId, MemorySegment data, MemorySegment userData)
      The upcall method is called from native code. The parameters are marshaled and run(Quark, MemorySegment) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(int, MemorySegment, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer