summaryrefslogtreecommitdiff
path: root/pkgtools
diff options
context:
space:
mode:
authorrillig <rillig@pkgsrc.org>2022-08-03 20:04:34 +0000
committerrillig <rillig@pkgsrc.org>2022-08-03 20:04:34 +0000
commit4a4f69379f8d145f150171c05220ac946138acdb (patch)
treeb15c3e8bfec65db1fab9f0651499b1bcbab4bb02 /pkgtools
parent99ab598ddc67d1d0f85f16eabb64a8fad0e33ca2 (diff)
downloadpkgsrc-4a4f69379f8d145f150171c05220ac946138acdb.tar.gz
lintpkgsrc: refactor PkgList internals to be more descriptive
The indirection layer through '_pkgs' was not necessary.
Diffstat (limited to 'pkgtools')
-rwxr-xr-xpkgtools/lintpkgsrc/files/lintpkgsrc.pl66
1 files changed, 34 insertions, 32 deletions
diff --git a/pkgtools/lintpkgsrc/files/lintpkgsrc.pl b/pkgtools/lintpkgsrc/files/lintpkgsrc.pl
index 9ec2da91c9f..737a80e3024 100755
--- a/pkgtools/lintpkgsrc/files/lintpkgsrc.pl
+++ b/pkgtools/lintpkgsrc/files/lintpkgsrc.pl
@@ -1,6 +1,6 @@
#!@PERL5@
-# $NetBSD: lintpkgsrc.pl,v 1.45 2022/08/03 19:47:02 rillig Exp $
+# $NetBSD: lintpkgsrc.pl,v 1.46 2022/08/03 20:04:34 rillig Exp $
# Written by David Brownlee <abs@netbsd.org>.
#
@@ -156,62 +156,64 @@ sub store($) {
#
package PkgList;
-sub add($@) {
- my $self = shift;
-
- if (!$self->pkgs($_[0])) {
- $self->{_pkgs}{ $_[0] } = new Pkgs $_[0];
- }
- $self->pkgs($_[0])->add(@_);
-}
-
sub new($) {
- my $class = shift;
- my $self = {};
+ my ($class) = @_;
+
+ my $self = {}; # pkgbase => Pkgs
bless $self, $class;
return $self;
}
+sub add($$$) {
+ my ($self, $pkgbase, $pkgversion) = @_;
+
+ if (!$self->{$pkgbase}) {
+ $self->{$pkgbase} = Pkgs->new($pkgbase);
+ }
+ $self->{$pkgbase}->add($pkgbase, $pkgversion);
+}
+
sub numpkgver($) {
- my $self = shift;
+ my ($self) = @_;
+
scalar($self->pkgver);
}
-sub pkgver($@) {
- my $self = shift;
+sub pkgver($$$) {
+ my ($self, $pkgbase, $pkgversion) = @_;
- if (@_ == 0) {
- my (@list);
+ if (!defined $pkgbase) {
+ my (@pkgvers);
foreach my $pkg ($self->pkgs) {
- push(@list, $pkg->pkgver);
+ push(@pkgvers, $pkg->pkgver);
}
- return (@list);
+ return @pkgvers;
}
- if (defined $self->{_pkgs}{$_[0]}) {
- return (@_ > 1)
- ? $self->{_pkgs}{$_[0]}->pkgver($_[1])
- : $self->{_pkgs}{$_[0]}->pkgver();
+ my $pkgs = $self->{$pkgbase};
+ if (defined $pkgs) {
+ return defined $pkgversion
+ ? $pkgs->pkgver($pkgversion)
+ : $pkgs->pkgver();
}
return;
}
-sub pkgs($@) {
- my $self = shift;
+sub pkgs($$) {
+ my ($self, $pkgbase) = @_;
- if (@_) {
- return $self->{_pkgs}{$_[0]};
+ if (defined $pkgbase) {
+ return $self->{$pkgbase};
} else {
- return (sort { $a->pkg cmp $b->pkg } values %{$self->{_pkgs}});
+ return sort { $a->pkg cmp $b->pkg } values %{$self};
}
}
sub store($) {
- my $self = shift;
+ my ($self) = @_;
- my $pkgs = $self->{_pkgs};
- foreach my $pkg (sort keys %$pkgs) {
- $pkgs->{$pkg}->store();
+ foreach my $pkgbase (sort keys %$self) {
+ $self->{$pkgbase}->store();
}
}