Interface IteratorItemFunction

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 IteratorItemFunction extends FunctionPointer

Functional interface declaration of the IteratorItemFunction callback.

See Also:
  • Method Details

    • run

      IteratorItem run(Iterator it, Value item)

      The function that will be called after the next item of the iterator has been retrieved. This function can be used to skip items or stop the iterator.

      The function will be called with the iterator lock held.

      Parameters:
      it - the iterator
      item - the item being retrieved.
      Returns:
      the result of the operation.
    • upcall

      default int upcall(MemorySegment it, MemorySegment item)
      The upcall method is called from native code. The parameters are marshaled and run(Iterator, Value) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(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