Parent Directory | Revision Log
r102@brr: dpavlin | 2007-11-18 11:28:23 +0100 once returns true if this is first time message is seen
1 | dpavlin | 49 | package MDAP; |
2 | dpavlin | 58 | use Exporter 'import'; |
3 | our @EXPORT = qw/ | ||
4 | once | ||
5 | dump | ||
6 | dpavlin | 64 | $debug |
7 | dpavlin | 58 | /; |
8 | dpavlin | 49 | |
9 | use strict; | ||
10 | use warnings; | ||
11 | |||
12 | use Data::Dump qw/dump/; | ||
13 | |||
14 | use Module::Pluggable search_path => 'MDAP', sub_name => 'plugins', require => 1; | ||
15 | my @plugins = __PACKAGE__->plugins; | ||
16 | warn "## found plugins: ",dump( @plugins ); | ||
17 | |||
18 | dpavlin | 64 | our $debug = 0; |
19 | |||
20 | dpavlin | 58 | =head1 NAME |
21 | |||
22 | MDAP - common stuff | ||
23 | |||
24 | =head1 FUNCTIONS | ||
25 | |||
26 | =head2 once | ||
27 | |||
28 | once("this message will be reported just once"); | ||
29 | |||
30 | dpavlin | 70 | Returns true if this message was seen first time. |
31 | |||
32 | dpavlin | 58 | =cut |
33 | |||
34 | our $once; | ||
35 | |||
36 | sub once { | ||
37 | my $m = join('', @_); | ||
38 | $once->{$m}++; | ||
39 | dpavlin | 70 | if ($once->{$m} == 1) { |
40 | print "$m\n"; | ||
41 | return 1; | ||
42 | } | ||
43 | return; | ||
44 | dpavlin | 58 | } |
45 | |||
46 | sub DESTROY { | ||
47 | warn "all messages: ",dump( $once ); | ||
48 | } | ||
49 | |||
50 | dpavlin | 49 | 1; |
ViewVC Help | |
Powered by ViewVC 1.1.26 |