php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /usr/lib/perl5/List/Util/ |
files >> //usr/lib/perl5/List/Util/PP.pm |
# List::Util::PP.pm # # Copyright (c) 1997-2009 Graham Barr <gbarr@pobox.com>. All rights reserved. # This program is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. package List::Util::PP; use strict; use warnings; use vars qw(@ISA @EXPORT $VERSION $a $b); require Exporter; @ISA = qw(Exporter); @EXPORT = qw(first min max minstr maxstr reduce sum shuffle); $VERSION = "1.21"; $VERSION = eval $VERSION; sub reduce (&@) { my $code = shift; unless(ref($code)) { require Carp; Carp::croak("Not a subroutine reference"); } no strict 'refs'; return shift unless @_ > 1; use vars qw($a $b); my $caller = caller; local(*{$caller."::a"}) = \my $a; local(*{$caller."::b"}) = \my $b; $a = shift; foreach (@_) { $b = $_; $a = &{$code}(); } $a; } sub first (&@) { my $code = shift; foreach (@_) { return $_ if &{$code}(); } undef; } sub sum (@) { reduce { $a + $b } @_ } sub min (@) { reduce { $a < $b ? $a : $b } @_ } sub max (@) { reduce { $a > $b ? $a : $b } @_ } sub minstr (@) { reduce { $a lt $b ? $a : $b } @_ } sub maxstr (@) { reduce { $a gt $b ? $a : $b } @_ } sub shuffle (@) { my @a=\(@_); my $n; my $i=@_; map { $n = rand($i--); (${$a[$n]}, $a[$n] = $a[$i])[0]; } @_; } 1;y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`