requires '_helper_type';
-# these next two are the possible methods
-# you can use in the 'handles' map.
+# these next two are the possible methods you can use in the 'handles'
+# map.
-# provide a Class or Role which we can
-# collect the method providers from
+# provide a Class or Role which we can collect the method providers
+# from
-# requires_attr 'method_provider'
-
-# or you can provide a HASH ref of anon subs
-# yourself. This will also collect and store
-# the methods from a method_provider as well
+# or you can provide a HASH ref of anon subs yourself. This will also
+# collect and store the methods from a method_provider as well
has 'method_constructors' => (
is => 'ro',
isa => 'HashRef',
},
);
-# extend the parents stuff to make sure
-# certain bits are now required ...
has '+default' => ( required => 1 );
has '+type_constraint' => ( required => 1 );
-## Methods called prior to instantiation
+# methods called prior to instantiation
before '_process_options' => sub {
my ( $self, $name, $options ) = @_;
} keys %$handles;
};
-## methods called after instantiation
+# methods called after instantiation
before 'install_accessors' => sub { (shift)->_check_handles_values };
sub _default_is { 'rw' }
sub _helper_type { 'Bool' }
-# NOTE:
-# we don't use the method provider for this
-# module since many of the names of the provied
-# methods would conflict with keywords
-# - SL
+# NOTE: we don't use the method provider for this module since many of
+# the names of the provided methods would conflict with keywords - SL
has 'method_provider' => (
is => 'ro',
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Bool;
sub register_implementation { 'Moose::AttributeHelpers::Trait::Bool' }
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Collection::Array;
sub register_implementation {
no Moose::Role;
no Moose::Util::TypeConstraints;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Collection::Bag;
sub register_implementation {
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Collection::Hash;
sub register_implementation {
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Collection::ImmutableHash;
sub register_implementation {
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Collection::List;
sub register_implementation {
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Counter;
sub register_implementation { 'Moose::AttributeHelpers::Trait::Counter' }
sub _helper_type { 'Num' }
-# NOTE:
-# we don't use the method provider for this
-# module since many of the names of the provied
-# methods would conflict with keywords
-# - SL
+# NOTE: we don't use the method provider for this module since many of
+# the names of the provided methods would conflict with keywords - SL
has 'method_constructors' => (
is => 'ro',
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::Number;
sub register_implementation { 'Moose::AttributeHelpers::Trait::Number' }
no Moose::Role;
-# register the alias ...
package # hide me from search.cpan.org
Moose::Meta::Attribute::Custom::Trait::String;
sub register_implementation { 'Moose::AttributeHelpers::Trait::String' }