projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
check for qra locator and offer alternative
[spider.git]
/
perl
/
Filter.pm
diff --git
a/perl/Filter.pm
b/perl/Filter.pm
index 6359b319dfd14c2d839dbd334e812a4e7e7afd45..b927dc1f0700c0917e9bccbc61f0f345123c2c54 100644
(file)
--- a/
perl/Filter.pm
+++ b/
perl/Filter.pm
@@
-184,8
+184,6
@@
sub it
{
my $self = shift;
{
my $self = shift;
- my $hops = undef;
-
my $filter;
my @keys = sort $self->getfilkeys;
my $key;
my $filter;
my @keys = sort $self->getfilkeys;
my $key;
@@
-210,17
+208,9
@@
sub it
}
}
}
}
- # hops are done differently
- if ($self->{hops}) {
- my ($comp, $ref);
- while (($comp, $ref) = each %{$self->{hops}}) {
- my ($field, $h) = @$ref;
- if ($_[$field] =~ m{$comp}) {
- $hops = $h;
- last;
- }
- }
- }
+ # hops are done differently (simply)
+ my $hops = $self->{hops} if exists $self->{hops};
+
return ($r, $hops);
}
return ($r, $hops);
}
@@
-254,19
+244,21
@@
sub write
sub print
{
my $self = shift;
sub print
{
my $self = shift;
+ my $name = shift || $self->{name};
+ my $sort = shift || $self->{sort};
+ my $flag = shift || "";
my @out;
my @out;
- my $name = $self->{name};
$name =~ s/.pl$//;
$name =~ s/.pl$//;
- push @out, join(' ', $name , ':', $s
elf->{sort}
);
+ push @out, join(' ', $name , ':', $s
ort, $flag
);
my $filter;
my $key;
foreach $key (sort $self->getfilkeys) {
my $filter = $self->{$key};
my $filter;
my $key;
foreach $key (sort $self->getfilkeys) {
my $filter = $self->{$key};
- if ($filter->{reject} && exists $filter->{reject}->{user}) {
+ if (
exists
$filter->{reject} && exists $filter->{reject}->{user}) {
push @out, ' ' . join(' ', $key, 'reject', $filter->{reject}->{user});
}
push @out, ' ' . join(' ', $key, 'reject', $filter->{reject}->{user});
}
- if ($filter->{accept} && exists $filter->{accept}->{user}) {
+ if (
exists
$filter->{accept} && exists $filter->{accept}->{user}) {
push @out, ' ' . join(' ', $key, 'accept', $filter->{accept}->{user});
}
}
push @out, ' ' . join(' ', $key, 'accept', $filter->{accept}->{user});
}
}
@@
-367,7
+359,7
@@
sub parse
}
$filter = Filter::read_in($sort, $call, $flag);
}
$filter = Filter::read_in($sort, $call, $flag);
- $filter = Filter->new($sort, $call, $flag)
unless $filter
;
+ $filter = Filter->new($sort, $call, $flag)
if !$filter || $filter->isa('Filter::Old')
;
$ntoken++;
next;
$ntoken++;
next;
@@
-464,6
+456,13
@@
sub parse
push @t, "(\$r->[$fref->[2]]>=$1 && \$r->[$fref->[2]]<=$2)";
}
$s .= "(" . join(' || ', @t) . ")";
push @t, "(\$r->[$fref->[2]]>=$1 && \$r->[$fref->[2]]<=$2)";
}
$s .= "(" . join(' || ', @t) . ")";
+ } elsif ($fref->[1] eq 't') {
+ my @t;
+ for (@val) {
+ s/\*//g;
+ push @t, "\$r->[$fref->[2]]=~/$_/i";
+ }
+ $s .= "(" . join(' || ', @t) . ")";
} else {
confess("invalid letter $fref->[1]");
}
} else {
confess("invalid letter $fref->[1]");
}
@@
-588,6
+587,14
@@
sub it
}
}
}
}
+sub print
+{
+ my $self = shift;
+ my $call = shift;
+ my $sort = shift;
+ my $flag = shift || "";
+ return "$call: Old Style Filter $flag $sort";
+}
1;
__END__
1;
__END__