Provided by: libmoosex-attributehelpers-perl_0.25-1_all bug

NAME

       MooseX::AttributeHelpers::Trait::Bool - simple boolean attribute

VERSION

       version 0.25

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

DESCRIPTION

       This provides a simple boolean attribute, which supports most of the basic math
       operations.

METHODS

       meta
       helper_type
       method_constructors
       has_method_provider
       method_provider

PROVIDED METHODS

       It is important to note that all those methods do in place modification of the value
       stored in the attribute.

       set Sets the value to 1.

       unset
           Set the value to 0.

       toggle
           Toggle the value. If it's true, set to false, and vice versa.

       not Equivalent of 'not $value'.

SUPPORT

       Bugs may be submitted through the RT bug tracker
       <https://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-AttributeHelpers> (or
       bug-MooseX-AttributeHelpers@rt.cpan.org <mailto:bug-MooseX-AttributeHelpers@rt.cpan.org>).

       There is also a mailing list available for users of this distribution, at
       <http://lists.perl.org/list/moose.html>.

       There is also an irc channel available for users of this distribution, at "#moose" on
       "irc.perl.org" <irc://irc.perl.org/#moose>.

AUTHOR

       Stevan Little <stevan@iinteractive.com>

       Jason May

COPYRIGHT AND LICENSE

       This software is copyright (c) 2007 by Stevan Little and Infinity Interactive, Inc.

       This is free software; you can redistribute it and/or modify it under the same terms as
       the Perl 5 programming language system itself.