Package jnr.ffi

Enum LibraryOption

All Implemented Interfaces:
Serializable, Comparable<LibraryOption>, java.lang.constant.Constable

public enum LibraryOption extends Enum<LibraryOption>
Options that apply to a library
  • Enum Constant Details

    • SaveError

      public static final LibraryOption SaveError
      Function calls should save the errno/last error after the call. This option can be overridden on individual methods by use of the IgnoreError annotation.
      See Also:
    • IgnoreError

      public static final LibraryOption IgnoreError
      Function calls should NOT save the errno/last error after the call. This option can be overridden on individual methods by use of the SaveError annotation.
      See Also:
    • TypeMapper

      public static final LibraryOption TypeMapper
      A type mapper which maps java types to native types is present.
    • FunctionMapper

      public static final LibraryOption FunctionMapper
      A function mapper which maps from java function names to native function names.
    • CallingConvention

      public static final LibraryOption CallingConvention
      The type of calling convention.
      See Also:
    • LoadNow

      public static final LibraryOption LoadNow
      Load the library into memory immediately, instead of lazily loading it
    • PreferCustomPaths

      public static final LibraryOption PreferCustomPaths
      Relevant for GNU/Linux Platform.Linux only Prefer custom paths over system paths when loading a library, even if the custom path has a lower version. By default JNR-FFI will choose the library of the desired name with the highest version, whether in the custom paths or the system default paths. This can be a problem if you are distributing your own library for example libfoo.so and the system paths happen to have a libfoo.so.4 for example, in which case JNR-FFI will prefer the higher version despite your explicit custom paths. By using this option, JNR-FFI will know to prefer the custom paths, even if they have a lower version, this ensures consistent behaviors across environments.
  • Method Details

    • values

      public static LibraryOption[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static LibraryOption valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null