about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-12-31 10:30:12 +0000
committerEric Wong <e@80x24.org>2020-01-01 07:50:45 +0000
commita7d4f457ec2b4531b3aaeb6cef1383bbda5b431a (patch)
tree149f48424932509f9374191e2af441a2695cc577
parent8de49b2d3097e294650b1ee1554f45c6d2d29d67 (diff)
downloadpublic-inbox-a7d4f457ec2b4531b3aaeb6cef1383bbda5b431a.tar.gz
And update callers to use it, as it makes the code a bit cleaner.
Probably irrelvant, but it should be faster, too, as
"perl -I lib -w -MO=Deparse $FILE" shows REJECT() calls are
constant-folded.
-rw-r--r--lib/PublicInbox/Filter/Base.pm2
-rw-r--r--lib/PublicInbox/InboxWritable.pm3
-rw-r--r--lib/PublicInbox/WatchMaildir.pm3
-rwxr-xr-xscript/public-inbox-purge4
4 files changed, 5 insertions, 7 deletions
diff --git a/lib/PublicInbox/Filter/Base.pm b/lib/PublicInbox/Filter/Base.pm
index 7a0c720f..81adab2a 100644
--- a/lib/PublicInbox/Filter/Base.pm
+++ b/lib/PublicInbox/Filter/Base.pm
@@ -6,6 +6,8 @@ package PublicInbox::Filter::Base;
 use strict;
 use warnings;
 use PublicInbox::MsgIter;
+use parent qw(Exporter);
+our @EXPORT_OK = qw(REJECT); # we may export IGNORE if/when needed
 
 sub No ($) { "*** We only accept plain-text mail, No $_[0] ***" }
 
diff --git a/lib/PublicInbox/InboxWritable.pm b/lib/PublicInbox/InboxWritable.pm
index d8391251..228e786c 100644
--- a/lib/PublicInbox/InboxWritable.pm
+++ b/lib/PublicInbox/InboxWritable.pm
@@ -7,8 +7,7 @@ use strict;
 use warnings;
 use base qw(PublicInbox::Inbox);
 use PublicInbox::Import;
-use PublicInbox::Filter::Base;
-*REJECT = *PublicInbox::Filter::Base::REJECT;
+use PublicInbox::Filter::Base qw(REJECT);
 
 use constant {
         PERM_UMASK => 0,
diff --git a/lib/PublicInbox/WatchMaildir.pm b/lib/PublicInbox/WatchMaildir.pm
index 003baec9..7803b58a 100644
--- a/lib/PublicInbox/WatchMaildir.pm
+++ b/lib/PublicInbox/WatchMaildir.pm
@@ -10,9 +10,8 @@ use PublicInbox::MIME;
 use PublicInbox::Spawn qw(spawn);
 use PublicInbox::InboxWritable;
 use File::Temp 0.19 ();
-use PublicInbox::Filter::Base;
+use PublicInbox::Filter::Base qw(REJECT);
 use PublicInbox::Spamcheck;
-*REJECT = *PublicInbox::Filter::Base::REJECT;
 *maildir_path_load = *PublicInbox::InboxWritable::maildir_path_load;
 
 sub new {
diff --git a/script/public-inbox-purge b/script/public-inbox-purge
index f103ccf7..22b56a8e 100755
--- a/script/public-inbox-purge
+++ b/script/public-inbox-purge
@@ -9,12 +9,10 @@ use warnings;
 use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev);
 use PublicInbox::AdminEdit;
 PublicInbox::Admin::check_require('-index');
-use PublicInbox::Filter::Base;
+use PublicInbox::Filter::Base qw(REJECT);
 use PublicInbox::MIME;
 require PublicInbox::V2Writable;
 
-*REJECT = \&PublicInbox::Filter::Base::REJECT;
-
 my $usage = "$0 [--all] [INBOX_DIRS] </path/to/message";
 my $opt = { verbose => 1, all => 0, -min_inbox_version => 2 };
 GetOptions($opt, @PublicInbox::AdminEdit::OPT) or