BuzzSaw
view release on metacpan or search on metacpan
lib/BuzzSaw/DataSource/Files.pm view on Meta::CPAN
161162163164165166167168169170171172173174175176177178179180181
my
$sorter
;
if
( $1 eq
'asc'
) {
$sorter
=
sub
{
$a
->[1] <=>
$b
->[1] };
}
else
{
$sorter
=
sub
{
$b
->[1] <=>
$a
->[1] };
}
# Schwartzian transform for efficient sorting
@files
=
map
{
$_
->[0] }
sort
$sorter
map
{ [
$_
, (
stat
(
$_
))[7] ] }
keys
%files
;
}
elsif
(
$order_by
=~ m/^name_(asc|desc)$/ ) {
if
( $1 eq
'asc'
) {
@files
=
sort
{
$a
cmp
$b
}
keys
%files
;
}
else
{
@files
=
sort
{
$b
cmp
$a
}
keys
%files
;
}
}
else
{
( run in 0.984 second using v1.01-cache-2.11-cpan-49f99fa48dc )