Interface IteratorNextFunction

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

Functional interface declaration of the IteratorNextFunction callback.

See Also:
  • Method Details

    • run

      IteratorResult run(Iterator it, Value result)

      The function that will be called when the next element of the iterator should be retrieved.

      Implementors of a GstIterator should implement this function and pass it to the constructor of the custom iterator. The function will be called with the iterator lock held.

      Parameters:
      it - the iterator
      result - a pointer to hold the next item
      Returns:
      the result of the operation.
    • upcall

      default int upcall(MemorySegment it, MemorySegment result)
      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