Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2014
249
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1.  
  2.  
  3. class Timer {
  4.  
  5. has $!start-time = now;
  6.  
  7. has @!event-log;
  8.  
  9. method record ($event_description) {
  10.  
  11. @!event-log.push({
  12. timestamp => now - $!start-time,
  13. description => $event_description
  14. });
  15.  
  16. }
  17.  
  18. method report {
  19.  
  20. my @report_lines;
  21.  
  22. for @!event-log -> %event {
  23.  
  24. @report_lines.push('[' ~ %event<timestamp>.fmt("%.3f") ~ '] ' ~ %event<description>);
  25. }
  26.  
  27. return @report_lines.join("\n");
  28. }
  29.  
  30. }
  31.  
  32.  
  33. my $timer = Timer.new;
  34.  
  35. my $counter_1 = 0;
  36. for (1 .. 10000) {
  37. $counter_1++;
  38. }
  39.  
  40. $timer.record("what");
  41. $timer.record("wat");
  42. my $counter = 0;
  43. for (1 .. 10000) {
  44. $counter++;
  45. }
  46. $timer.record("not");
  47. $timer.record("this");
  48. $timer.record("that");
  49.  
  50. say $timer.report;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement