The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 1.23_01 - 2020-05-01

  • Custom record arguments are kept around for the lifetime of the function call, meaning they don't have to be explicitly kept by the custom code wrapper as long as they aren't used after the function returns (gh#236, gh#247).
  • This completes support for custom record types. This is a release candidate.

Changes for version 1.22_01 - 2020-05-01

  • Fix test on MSWin32 + older libffi where returning record values doesn't work (introduced in 1.20_01, gh#250)

Changes for version 1.21_01 - 2020-04-29

  • Diagnostic release.

Changes for version 1.20_01 - 2020-04-29

Changes for version 1.19_01 - 2020-04-27

  • Diagnostic release.

Changes for version 1.18_01 - 2020-04-19

Changes for version 1.17_01 - 2020-04-18

  • Silence (probably harmless) clang warning introduced in 1.12_01 (gh#237, gh#239)

Changes for version 1.16_01 - 2020-04-18

  • Initial support for custom records. Returning custom records (either via pointer or by reference) is excluded, but should be added soon (gh#214, gh#215, gh#235)

Changes for version 1.15_01 - 2020-04-17

Changes for version 1.14_01 - 2020-04-17

  • Experimental: with api => 2, a return value of NULL is translated to undef instead of empty list (gh#234, gh#231)

Changes for version 1.12_01 - 2020-04-17

  • Added grow and set_used_length functions to FFI::Platypus::Buffer (djerius++ gh#225)

Modules

Build shared libraries for use with FFI
Base class for File::Build files
Class to track C source file in FFI::Build
Class to track C source file in FFI::Build
Class to track object file in FFI::Build
Class to track object file in FFI::Build
FFI::Build installer code for ExtUtils::MakeMaker
Platform specific configuration.
Write Perl bindings to non-Perl libraries with FFI. No XS required.
Platypus arguments and return value API for custom types
Convert scalars to C buffers
Bundle foreign code with your Perl module
Platypus closure object
Define constants in C space for Perl
Slightly non-portable interface to libdl
Declarative interface to FFI::Platypus
An FFI function object
For internal use only
Language specific customizations
Documentation and tools for using Platypus with the Assembly
Documentation and tools for using Platypus with the C programming language
Documentation and tools for using Platypus with the Windows API
Legacy Platypus interfaces
Memory functions for FFI
FFI support for structured records data
FFI support for structured records data
Tied array interface for record array members
Defining types for FFI::Platypus
Convert string scalar to a buffer as a pointer / size_t combination
Platypus custom type for arrays of strings
Convert a pointer to a string and back
FFI Type Parser
FFI Type Parser Version Zero
FFI Type Parser Version One
System detection and probing for FFI extensions.
Probe runner for FFI
Probe runner builder for FFI
The results from a probe run.
Temp Dir support for FFI::Platypus

Provides

in lib/FFI/Build/MM.pm
in lib/FFI/Platypus/Bundle.pm
in lib/FFI/Platypus/Legacy.pm
in lib/FFI/Platypus/Closure.pm
in lib/FFI/Platypus/Function.pm
in lib/FFI/Platypus/Function.pm