X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMooseX%2FAttributeHelpers%2FBool.pm;fp=lib%2FMooseX%2FAttributeHelpers%2FBool.pm;h=84f9c39ba504ddcbae3e18bcbb90c7dfd804c838;hb=f4b22618bfaa39d74fedd0ed76d968beeac6039f;hp=957651cab943371a0a486357d632a15a4be14bb9;hpb=cf0d1310362a7607e8baf57dacd9e04843de0780;p=gitmo%2FMooseX-AttributeHelpers.git
diff --git a/lib/MooseX/AttributeHelpers/Bool.pm b/lib/MooseX/AttributeHelpers/Bool.pm
index 957651c..84f9c39 100644
--- a/lib/MooseX/AttributeHelpers/Bool.pm
+++ b/lib/MooseX/AttributeHelpers/Bool.pm
@@ -1,33 +1,12 @@
package MooseX::AttributeHelpers::Bool;
use Moose;
-use MooseX::AttributeHelpers::MethodProvider::Bool;
our $VERSION = '0.17';
$VERSION = eval $VERSION;
our $AUTHORITY = 'cpan:STEVAN';
-extends 'MooseX::AttributeHelpers::Base';
-
-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
-
-has '+method_provider' => (
- default => 'MooseX::AttributeHelpers::MethodProvider::Bool'
-);
-
-before 'process_options_for_provides' => sub {
- my ($self, $options, $name) = @_;
-
- # Set some default attribute options here unless already defined
- if ((my $type = $self->helper_type) && !exists $options->{isa}){
- $options->{isa} = $type;
- }
-};
+extends 'Moose::Meta::Attribute';
+with 'MooseX::AttributeHelpers::Trait::Bool';
no Moose;
@@ -37,101 +16,3 @@ package # hide me from search.cpan.org
sub register_implementation { 'MooseX::AttributeHelpers::Bool' }
1;
-
-=pod
-
-=head1 NAME
-
-MooseX::AttributeHelpers::Bool
-
-=head1 SYNOPSIS
-
- package Room;
- use Moose;
- use MooseX::AttributeHelpers;
-
- has 'is_lit' => (
- metaclass => 'Bool',
- is => 'rw',
- isa => 'Bool',
- default => sub { 0 },
- provides => {
- set => 'illuminate',
- unset => 'darken',
- toggle => 'flip_switch',
- not => 'is_dark'
- }
- );
-
- my $room = Room->new();
- $room->illuminate; # same as $room->is_lit(1);
- $room->darken; # same as $room->is_lit(0);
- $room->flip_switch; # same as $room->is_lit(not $room->is_lit);
- return $room->is_dark; # same as !$room->is_lit
-
-=head1 DESCRIPTION
-
-This provides a simple boolean attribute, which supports most of the
-basic math operations.
-
-=head1 METHODS
-
-=over 4
-
-=item B
-
-=item B
-
-=item B
-
-=item B
-
-=item B
-
-=back
-
-=head1 PROVIDED METHODS
-
-It is important to note that all those methods do in place
-modification of the value stored in the attribute.
-
-=over 4
-
-=item I
-
-Sets the value to C<1>.
-
-=item I
-
-Set the value to C<0>.
-
-=item I
-
-Toggle the value. If it's true, set to false, and vice versa.
-
-=item I
-
-Equivalent of 'not C<$value>'.
-
-=back
-
-=head1 BUGS
-
-All complex software has bugs lurking in it, and this module is no
-exception. If you find a bug please either email me, or add the bug
-to cpan-RT.
-
-=head1 AUTHOR
-
-Jason May
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2007-2008 by Infinity Interactive, Inc.
-
-L
-
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut