The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

MouseX::AttributeHelpers::Bool

SYNOPSIS

  package Room;
  use Mouse;
  use MouseX::AttributeHelpers;

  has 'is_lit' => (
      metaclass => 'Bool',
      is        => 'rw',
      isa       => 'Bool',
      default   => 0,
      provides  => {
          set    => 'illuminate',
          unset  => 'darken',
          toggle => 'flip_switch',
          not    => 'is_dark',
      },
  );


  package main;
  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);
  $room->is_dark;     # same as !$room->is_lit

DESCRIPTION

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

PROVIDERS

set

unset

toggle

not

METHODS

method_constructors

helper_type

AUTHOR

NAKAGAWA Masaki <masaki@cpan.org>

LICENSE

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

SEE ALSO

MouseX::AttributeHelpers, MouseX::AttributeHelpers::Base