NAME¶
MooseX::Role::Timer - Measure times with your object.
SYNOPSIS¶
 package Demo;
 use Moose; # or Any::Moose
 with 'MooseX::Role::Timer';
 sub BUILD {
   shift->start_timer("build");
 }
 sub do_something {
   my $self = shift;
   $self->start_timer("something");
   # do something...
   $self->stop_timer("something");
 }
 package main;
 my $demo = Demo->new;
 $demo->do_something;
 $demo->do_something;
 printf "%3.6fs\n", $demo->elapsed_timer("build");     # time spent since BUILD
 printf "%3.6fs\n", $demo->elapsed_timer("something"); # time spent in sub do_something
This Role provides your object with timers, making it easier to keep track of
  how long whatever actions take.
  - start_timer($name)
 
  - Start timer $name.
 
  - stop_timer($name)
 
  - Stop timer $name. Could be started again to cumulatively measure
    time.
 
  - reset_timer($name)
 
  - Stops timer $name and clears cumulated times for $name.
 
  - elapsed_timer('name')
 
  - Return the elapsed time in seconds (cumulated) for timer $name.
 
  - timer_names
 
  - Return all timer names.
 
AUTHOR¶
Michael Langner, "<mila at cpan.org>"
BUGS¶
Please report any bugs or feature requests to "bug-moosex-role-timer at
  rt.cpan.org", or through the web interface at
  <
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=MooseX-Role-Timer>. I
  will be notified, and then you'll automatically be notified of progress on
  your bug as I make changes.
COPYRIGHT & LICENSE¶
Copyright 2014 Michael Langner, all rights reserved.
This program is free software; you can redistribute it and/or modify it under
  the same terms as Perl itself.