FFI::Platypus::Function#
An FFI function object
VERSION#
version 2.12
SYNOPSIS#
use FFI::Platypus 2.00;
# call directly
my $ffi = FFI::Platypus->new( api => 2 );
my $f = $ffi->function(puts => ['string'] => 'int');
$f->call("hello there");
# attach as xsub and call (faster for repeated calls)
$f->attach('puts');
puts('hello there');
DESCRIPTION#
This class represents an unattached platypus function. For more context and better examples see FFI::Platypus.
METHODS#
attach#
$f->attach($name);
$f->attach($name, $prototype);
Attaches the function as an xsub (similar to calling attach directly from an FFI::Platypus instance). You may optionally include a prototype.
call#
my $ret = $f->call(@arguments);
my $ret = $f->(@arguments);
Calls the function and returns the result. You can also use the function object like a code reference.
sub_ref#
my $code = $f->sub_ref;
Returns an anonymous code reference. This will usually be faster than using the call method above.
COPYRIGHT AND LICENSE#
This software is copyright (c) 2015-2022 by Graham Ollis.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.