Windows NT KAMIDAKI 10.0 build 19045 (Windows 10) AMD64
Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.3.9
Server IP : 192.168.3.16 & Your IP : 216.73.216.204
Domains :
Cant Read [ /etc/named.conf ]
User : SISTEMA
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
C: /
xampp /
perl /
vendor /
lib /
MooseX /
Delete
Unzip
Name
Size
Permission
Date
Action
ClassAttribute
[ DIR ]
drwxrwxrwx
2024-07-26 17:38
Declare
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
LazyRequire
[ DIR ]
drwxrwxrwx
2024-07-26 17:38
Meta
[ DIR ]
drwxrwxrwx
2024-07-26 17:38
Method
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
NonMoose
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
Role
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
Traits
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
Types
[ DIR ]
drwxrwxrwx
2024-07-26 17:39
ClassAttribute.pm
5.33
KB
-rw-rw-rw-
2016-05-30 01:26
Declare.pm
17.55
KB
-rw-rw-rw-
2015-08-16 07:29
LazyRequire.pm
4.02
KB
-rw-rw-rw-
2014-08-17 00:49
NonMoose.pm
5.97
KB
-rw-rw-rw-
2014-02-26 01:19
Traits.pm
5.82
KB
-rw-rw-rw-
2015-08-16 08:11
Types.pm
29.54
KB
-rw-rw-rw-
2017-02-07 20:59
Save
Rename
package MooseX::LazyRequire; # git description: v0.10-7-gf996968 $MooseX::LazyRequire::VERSION = '0.11'; # ABSTRACT: Required attributes which fail only when trying to use them # KEYWORDS: moose extension attribute required lazy defer populate method use Moose 0.94 (); use Moose::Exporter; use aliased 0.30 'MooseX::LazyRequire::Meta::Attribute::Trait::LazyRequire'; use namespace::autoclean; #pod =head1 SYNOPSIS #pod #pod package Foo; #pod #pod use Moose; #pod use MooseX::LazyRequire; #pod #pod has foo => ( #pod is => 'ro', #pod lazy_required => 1, #pod ); #pod #pod has bar => ( #pod is => 'ro', #pod builder => '_build_bar', #pod ); #pod #pod sub _build_bar { shift->foo } #pod #pod #pod Foo->new(foo => 42); # succeeds, foo and bar will be 42 #pod Foo->new(bar => 42); # succeeds, bar will be 42 #pod Foo->new; # fails, neither foo nor bare were given #pod #pod =head1 DESCRIPTION #pod #pod This module adds a C<lazy_required> option to Moose attribute declarations. #pod #pod The reader methods for all attributes with that option will throw an exception #pod unless a value for the attributes was provided earlier by a constructor #pod parameter or through a writer method. #pod #pod =head1 CAVEATS #pod #pod Prior to Moose 1.9900, roles didn't have an attribute metaclass, so this module can't #pod easily apply its magic to attributes defined in roles. If you want to use #pod C<lazy_required> in role attributes, you'll have to apply the attribute trait #pod yourself: #pod #pod has foo => ( #pod traits => ['LazyRequire'], #pod is => 'ro', #pod lazy_required => 1, #pod ); #pod #pod With Moose 1.9900, you can use this module in roles just the same way you can #pod in classes. #pod #pod =cut my %metaroles = ( class_metaroles => { attribute => [LazyRequire], }, ); $metaroles{role_metaroles} = { applied_attribute => [LazyRequire], } if $Moose::VERSION >= 1.9900; Moose::Exporter->setup_import_methods(%metaroles); 1; __END__ =pod =encoding UTF-8 =head1 NAME MooseX::LazyRequire - Required attributes which fail only when trying to use them =head1 VERSION version 0.11 =head1 SYNOPSIS package Foo; use Moose; use MooseX::LazyRequire; has foo => ( is => 'ro', lazy_required => 1, ); has bar => ( is => 'ro', builder => '_build_bar', ); sub _build_bar { shift->foo } Foo->new(foo => 42); # succeeds, foo and bar will be 42 Foo->new(bar => 42); # succeeds, bar will be 42 Foo->new; # fails, neither foo nor bare were given =head1 DESCRIPTION This module adds a C<lazy_required> option to Moose attribute declarations. The reader methods for all attributes with that option will throw an exception unless a value for the attributes was provided earlier by a constructor parameter or through a writer method. =head1 CAVEATS Prior to Moose 1.9900, roles didn't have an attribute metaclass, so this module can't easily apply its magic to attributes defined in roles. If you want to use C<lazy_required> in role attributes, you'll have to apply the attribute trait yourself: has foo => ( traits => ['LazyRequire'], is => 'ro', lazy_required => 1, ); With Moose 1.9900, you can use this module in roles just the same way you can in classes. =for Pod::Coverage init_meta =head1 AUTHORS =over 4 =item * Florian Ragwitz <rafl@debian.org> =item * Dave Rolsky <autarch@urth.org> =back =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2009 by Florian Ragwitz. 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 CONTRIBUTORS =for stopwords Karen Etheridge David Precious Jesse Luehrs =over 4 =item * Karen Etheridge <ether@cpan.org> =item * David Precious <davidp@preshweb.co.uk> =item * Jesse Luehrs <doy@tozt.net> =back =cut