Moose::Meta::Attribute::Native::Trait::Bool − Helper trait for Bool attributes
version 2.2206
package Room;
use Moose;
has 'is_lit' => (
traits => ['Bool'],
is => 'rw',
isa => 'Bool',
default => 0,
handles => {
illuminate => 'set',
darken => 'unset',
flip_switch => 'toggle',
is_dark => 'not',
},
);
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
This trait provides native delegation methods for boolean values. A boolean is a scalar which can be 1, 0, "", or "undef".
If you don’t provide an "isa" value for your attribute, it will default to "Bool".
None of these methods accept arguments.
• |
set |
Sets the value to 1 and returns 1.
• |
unset |
Set the value to 0 and returns 0.
• |
toggle |
Toggles the value. If it’s true, set to false, and vice versa.
Returns the new value.
• |
not |
Equivalent of ’not $value’.
See "BUGS" in Moose for details on reporting bugs.
• |
Stevan Little <[email protected]> |
|||
• |
Dave Rolsky <[email protected]> |
|||
• |
Jesse Luehrs <[email protected]> |
|||
• |
Shawn M Moore <[email protected]> |
|||
• |
×××× ×§××’×× (Yuval Kogman) <[email protected]> |
|||
• |
Karen Etheridge <[email protected]> |
|||
• |
Florian Ragwitz <[email protected]> |
|||
• |
Hans Dieter Pearcey <[email protected]> |
|||
• |
Chris Prather <[email protected]> |
|||
• |
Matt S Trout <[email protected]> |
This software is copyright (c) 2006 by 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.