Karen Etheridge > Moose-2.1209 > Moose::Meta::Attribute::Native::Trait::Counter

Download:
Moose-2.1209.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

New  9
Open  40
Stalled  8
View/Report Bugs
Module Version: 2.1209   Source   Latest Release: Moose-2.1402

NAME ^

Moose::Meta::Attribute::Native::Trait::Counter - Helper trait for Int attributes which represent counters

VERSION ^

version 2.1209

SYNOPSIS ^

  package MyHomePage;
  use Moose;

  has 'counter' => (
      traits  => ['Counter'],
      is      => 'ro',
      isa     => 'Num',
      default => 0,
      handles => {
          inc_counter   => 'inc',
          dec_counter   => 'dec',
          reset_counter => 'reset',
      },
  );

  my $page = MyHomePage->new();
  $page->inc_counter;    # same as $page->counter( $page->counter + 1 );
  $page->dec_counter;    # same as $page->counter( $page->counter - 1 );

  my $count_by_twos = 2;
  $page->inc_counter($count_by_twos);

DESCRIPTION ^

This trait provides native delegation methods for counters. A counter can be any sort of number (integer or not). The delegation methods allow you to increment, decrement, or reset the value.

DEFAULT TYPE ^

If you don't provide an isa value for your attribute, it will default to Num.

PROVIDED METHODS ^

BUGS ^

See "BUGS" in Moose for details on reporting bugs.

AUTHORS ^

COPYRIGHT AND LICENSE ^

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.

syntax highlighting: