sub::defer(3pm) debian man page | unix.com

Man Page: sub::defer

Operating Environment: debian

Section: 3pm

Sub::Defer(3pm) 					User Contributed Perl Documentation					   Sub::Defer(3pm)

NAME
Sub::Defer - defer generation of subroutines until they are first called
SYNOPSIS
use Sub::Defer; my $deferred = defer_sub 'Logger::time_since_first_log' => sub { my $t = time; sub { time - $t }; }; Logger->time_since_first_log; # returns 0 and replaces itself Logger->time_since_first_log; # returns time - $t
DESCRIPTION
These subroutines provide the user with a convenient way to defer creation of subroutines and methods until they are first called.
SUBROUTINES
defer_sub my $coderef = defer_sub $name => sub { ... }; This subroutine returns a coderef that encapsulates the provided sub - when it is first called, the provided sub is called and is -itself- expected to return a subroutine which will be goto'ed to on subsequent calls. If a name is provided, this also installs the sub as that name - and when the subroutine is undeferred will re-install the final version for speed. undefer_sub my $coderef = undefer_sub &Foo::name; If the passed coderef has been deferred this will "undefer" it. If the passed coderef has not been deferred, this will just return it. If this is confusing, take a look at the example in the "SYNOPSIS". perl v5.14.2 2012-06-26 Sub::Defer(3pm)
Related Man Pages
sub::defer(3) - mojave
sub::quote(3) - osx
net::dri::transport::defer(3pm) - debian
scalar::defer(3pm) - debian
test::mockmodule(3pm) - debian
Similar Topics in the Unix Linux Community
How can I do this in VI editor?
Introduction
One instance of comparing grep and awk
New UNIX and Linux History Sections