r36194 - /trunk/dh-make-perl/lib/Debian/Dependencies.pm
dmn at users.alioth.debian.org
dmn at users.alioth.debian.org
Sat May 23 06:57:02 UTC 2009
Author: dmn
Date: Sat May 23 06:56:57 2009
New Revision: 36194
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=36194
Log:
Dependencies::remove: return the list of removed items
Modified:
trunk/dh-make-perl/lib/Debian/Dependencies.pm
Modified: trunk/dh-make-perl/lib/Debian/Dependencies.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/lib/Debian/Dependencies.pm?rev=36194&op=diff
==============================================================================
--- trunk/dh-make-perl/lib/Debian/Dependencies.pm (original)
+++ trunk/dh-make-perl/lib/Debian/Dependencies.pm Sat May 23 06:56:57 2009
@@ -175,19 +175,34 @@
$deps->remove('foo, bar (>= 2.0)');
print $deps; # bar
+Returns the list of the dependencies removed.
+
=cut
sub remove {
my( $self, @deps ) = @_;
+
+ my ( @kept, @removed );
for my $deps(@deps) {
$deps = Debian::Dependencies->new($deps)
unless ref($deps);
for my $dep(@$deps) {
- @$self = grep { ! $dep->satisfies($_) } @$self;
+ for( @$self ) {
+ if( $dep->satisfies($_) ) {
+ push @removed, $_;
+ }
+ else {
+ push @kept, $_;
+ }
+ }
}
}
+
+ @$self = @kept;
+
+ return @removed;
}
=item prune()
More information about the Pkg-perl-cvs-commits
mailing list