Interface TypeValueInitFunc

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

Functional interface declaration of the TypeValueInitFunc callback.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    run(Value value)
    Initializes the value contents by setting the fields of the value->data array.
    Creates a native function pointer to the upcall(MemorySegment) method.
    default void
    The upcall method is called from native code.
  • Method Details

    • run

      void run(Value value)

      Initializes the value contents by setting the fields of the value->data array.

      The data array of the GValue passed into this function was zero-filled with memset(), so no care has to be taken to free any old contents. For example, in the case of a string value that may never be null, the implementation might look like:

      value->data[0].v_pointer = g_strdup ("");
      
      Parameters:
      value - the value to initialize
      Since:
      2.78
    • upcall

      default void upcall(MemorySegment value)
      The upcall method is called from native code. The parameters are marshaled and run(Value) is executed.
    • toCallback

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