Interface SettingsGetMapping

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

Functional interface declaration of the SettingsGetMapping callback.

See Also:
  • Method Details

    • run

      boolean run(@Nullable Variant value, @Nullable Out<MemorySegment> result)

      The type of the function that is used to convert from a value stored in a Settings to a value that is useful to the application.

      If the value is successfully mapped, the result should be stored at result and true returned. If mapping fails (for example, if value is not in the right format) then false should be returned.

      If value is NULL then it means that the mapping function is being given a ‘last chance’ to successfully return a valid value. True must be returned in this case.

      Parameters:
      value - variant to map to the application value
      result - the result of the mapping
      Returns:
      true if the conversion succeeded, false in case of an error
    • upcall

      default int upcall(MemorySegment value, MemorySegment result, MemorySegment userData)
      The upcall method is called from native code. The parameters are marshaled and run(Variant, Out) is executed.
    • toCallback

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