summaryrefslogtreecommitdiff
path: root/search/lib/Time/Stopwatch.pm
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2017-12-08 01:34:52 +0100
committerJules Laplace <julescarbon@gmail.com>2017-12-08 01:34:52 +0100
commit3a4f027ec05aa5fdf4098ceb0dab09f69c5e0b8b (patch)
tree8a0c5bebff6a40e77bda8b02142d99a7c448545e /search/lib/Time/Stopwatch.pm
parent340c3080b38518976c5c833399d8e07a7fc561bf (diff)
adding perl search index builder
Diffstat (limited to 'search/lib/Time/Stopwatch.pm')
-rw-r--r--search/lib/Time/Stopwatch.pm13
1 files changed, 13 insertions, 0 deletions
diff --git a/search/lib/Time/Stopwatch.pm b/search/lib/Time/Stopwatch.pm
new file mode 100644
index 0000000..b7cec26
--- /dev/null
+++ b/search/lib/Time/Stopwatch.pm
@@ -0,0 +1,13 @@
+################################################3
+package Time::Stopwatch;
+my $VERSION = '1.00';
+use strict;
+use constant HIRES => eval { local $SIG{__DIE__}; require Time::HiRes };
+sub TIESCALAR { my $pkg = shift;
+ my $time = (HIRES ? Time::HiRes::time() : time()) - (@_ ? shift() : 0);
+ bless \$time, $pkg; }
+sub FETCH { (HIRES ? Time::HiRes::time() : time()) - ${$_[0]}; }
+sub STORE { ${$_[0]} = (HIRES ? Time::HiRes::time() : time()) - $_[1]; }
+#################################################
+sub print_timer { print sprintf "%3.2f s %s\n", shift, shift; }
+1;