/usr/share/perl5/MooX/Struct/Util.pm is in libmoox-struct-perl 0.013-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | package MooX::Struct::Util;
our $AUTHORITY = 'cpan:TOBYINK';
our $VERSION = '0.013';
use strict;
use Sub::Install qw(install_sub);
sub import
{
my $class = shift;
my $caller = caller;
install_sub { code => $_, from => $class, into => $caller } for @_;
}
sub lazy_default (&)
{
my $sub = shift;
return [
lazy => 1,
default => $sub,
];
}
1;
__END__
=head1 NAME
MooX::Struct::Util - extensions for MooX::Struct that would have been overkill to include
=head1 LAZY DEFAULTS
=begin trustme
=item lazy_default
=end trustme
Sugar for lazily defaulted attributes. The following two are effectively
the same.
use MooX::Struct WebPage1 => [
user_agent => [
lazy => 1,
default => sub { LWP::UserAgent->new },
],
];
use MooX::Struct::Util qw(lazy_default);
use MooX::Struct WebPage2 => [
user_agent => lazy_default { LWP::UserAgent->new },
];
=head1 BUGS
Please report any bugs to
L<http://rt.cpan.org/Dist/Display.html?Queue=MooX-Struct>.
=head1 SEE ALSO
L<MooX::Struct>.
=head1 AUTHOR
Toby Inkster E<lt>tobyink@cpan.orgE<gt>.
=head1 COPYRIGHT AND LICENCE
This software is copyright (c) 2012-2013 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=head1 DISCLAIMER OF WARRANTIES
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|