| line |
true |
false |
branch |
|
30
|
39 |
0 |
if ($ENV{'TESTING_HOME'}) { } |
|
40
|
0 |
0 |
unless $homedir |
|
72
|
0 |
0 |
if ($type eq 'arg') { } |
|
|
0 |
0 |
elsif ($type eq 'optval') { } |
|
74
|
0 |
0 |
if ($argpos == 0 and not exists $seen_opts->{'-x'} and not exists $seen_opts->{'--execute'} and not exists $seen_opts->{'-e'} and not exists $seen_opts->{'--eval'}) { } |
|
84
|
0 |
0 |
ref $args{'opt'} eq 'ARRAY' ? : |
|
86
|
0 |
0 |
if (grep {$_ =~ /\A(-x|--execute|-D|--delete|-s|--show|-w|--write)\z/;} @$opts) |
|
90
|
0 |
0 |
unless $_ eq "-M" |
|
|
0 |
0 |
if (grep {$_ eq "--mode" unless $_ eq "-M";} @$opts) |
|
123
|
0 |
0 |
unless GetOptionsWithCompletion(sub {
my(%args) = @_;
my $word = $args{'word'};
my $type = $args{'type'};
my $seen_opts = $args{'seen_opts'};
if ($type eq "arg") {
my $argpos = $args{'argpos'};
if ($argpos == 0 and not exists $seen_opts->{'-x'} and not exists $seen_opts->{'--execute'} and not exists $seen_opts->{'-e'} and not exists $seen_opts->{'--eval'}) {
require Complete::App::perlmv;
return Complete::App::perlmv::complete_perlmv_scriptlet("word", $word);
}
else {
require Complete::File;
return Complete::File::complete_file("word", $word);
};
}
elsif ($type eq "optval") {
my $opts = ref $args{'opt'} eq "ARRAY" ? $args{'opt'} : [$args{'opt'}];
my @comps;
if (grep {$_ =~ /\A(-x|--execute|-D|--delete|-s|--show|-w|--write)\z/;} @$opts) {
require Complete::App::perlmv;
push @comps, Complete::App::perlmv::complete_perlmv_scriptlet("word", $word);
};
if (grep {$_ eq "--mode" unless $_ eq "-M";} @$opts) {
require Complete::Util;
push @comps, Complete::Util::complete_array_elem("word", $word, "array", ["copy", "symlink", "link", "move", "rename"]);
};
require Complete::Util;
return Complete::Util::combine_answers(@comps);
};
undef;
}
, "c|check", \$self->{'check'}, "D|delete=s", \$self->{'delete'}, "d|dry-run", \$self->{'dry_run'}, "N|no-dry-run", sub {
$self->{'dry_run'} = 0;
}
, "e|eval=s", $self->{'codes'}, "h|help", sub {
$self->print_help;
}
, "l|list", \$self->{'list'}, "M|mode=s", \$self->{'mode'}, "o|overwrite", \$self->{'overwrite'}, "p|parents", \$self->{'parents'}, "R|recursive", \$self->{'recursive'}, "r|reverse", sub {
$self->{'sort_mode'} = -1;
}
, "s|show=s", \$self->{'show'}, "T|no-sort", sub {
$self->{'sort_mode'} = 0;
}
, "v|verbose", \$self->{'verbose'}, "w|write=s", \$self->{'write'}, "f|files", sub {
$self->{'process_dir'} = 0;
}
, "S|no-symlinks", sub {
$self->{'process_symlink'} = 0;
}
, "V|version", sub {
$self->print_version;
}
, "x|execute=s", sub {
push @{$$self{"codes"};}, \$_[1];
}
, "a|arg=s%", $self->{'args'}, "<>", sub {
$self->parse_extra_opts(@_);
}
) |
|
130
|
0 |
0 |
if ($^O =~ /win32/i) { } |
|
131
|
0 |
0 |
if ($arg =~ /[*?{}\[\]]/) { } |
|
144
|
0 |
0 |
$0 =~ /perlmv/ ? : |
|
|
0 |
0 |
$0 =~ /perlln/ ? : |
|
|
0 |
0 |
$0 =~ /perlln_s/ ? : |
|
|
0 |
0 |
$0 =~ /perlcp/ ? : |
|
151
|
0 |
0 |
if $self->{'dry_run'} |
|
154
|
0 |
0 |
if ($self->{'list'}) |
|
157
|
0 |
0 |
$self->{'verbose'} ? : |
|
165
|
0 |
0 |
if ($self->{'show'}) |
|
170
|
0 |
0 |
if ($self->{'write'}) |
|
172
|
0 |
0 |
unless @{$self->{'codes'};} and not ref $self->{'codes'}[0] |
|
177
|
0 |
0 |
if ($self->{'delete'}) |
|
182
|
0 |
0 |
unless (@{$self->{'codes'};}) |
|
184
|
0 |
0 |
unless $self->{'items'} |
|
189
|
0 |
0 |
if ref $_ eq "SCALAR" |
|
193
|
0 |
0 |
unless $self->{'items'} |
|
274
|
1 |
21 |
unless $self->{'scriptlets'}{$name} |
|
275
|
6 |
15 |
if (defined(my $mod = $self->{'scriptlets'}{$name}{'module'})) { } |
|
279
|
0 |
6 |
unless ${"${mod}::SCRIPTLET";} |
|
315
|
20 |
0 |
if (%App::perlmv::scriptlets::std::scriptlets) |
|
322
|
0 |
20 |
if (%App::perlmv::scriptlets::scriptlets) |
|
328
|
0 |
20 |
if (-d "/usr/share/perlmv/scriptlets") |
|
334
|
0 |
0 |
if $code |
|
339
|
2 |
18 |
if (-d "$self->{'homedir'}/.perlmv/scriptlets") |
|
346
|
1 |
0 |
if $code |
|
361
|
0 |
3 |
unless $self->valid_scriptlet_name($name) |
|
363
|
0 |
3 |
unless $code |
|
365
|
1 |
2 |
unless (-d $path) |
|
366
|
0 |
1 |
unless mkdir $path |
|
369
|
1 |
2 |
unless (-d $path) |
|
370
|
0 |
1 |
unless mkdir $path |
|
373
|
1 |
2 |
if (-e $path and not $self->{'overwrite'}) { } |
|
378
|
0 |
2 |
unless close $fh |
|
398
|
0 |
31 |
if $@ |
|
410
|
0 |
0 |
if (ref $code eq 'CODE') { } |
|
414
|
0 |
0 |
if $@ |
|
429
|
18 |
89 |
if (ref $code eq 'CODE') { } |
|
433
|
0 |
89 |
if $@ |
|
435
|
56 |
51 |
if (defined $res and length $res and $_ eq $orig_) |
|
441
|
31 |
1 |
$self->{'sort_mode'} == 1 ? : |
|
|
1 |
32 |
$self->{'sort_mode'} == -1 ? : |
|
451
|
0 |
107 |
if ($item->{'cwd'}) |
|
452
|
0 |
0 |
unless chdir $item->{'cwd'} |
|
454
|
0 |
107 |
if not $self->{'process_symlink'} and -l $item->{'real_name'} |
|
455
|
0 |
107 |
if (-d $item->{'real_name'}) |
|
456
|
0 |
0 |
unless $self->{'process_dir'} |
|
457
|
0 |
0 |
if ($self->{'recursive'}) |
|
459
|
0 |
0 |
if (chdir $item->{'real_name'}) { } |
|
461
|
0 |
0 |
if $self->{'verbose'} |
|
467
|
0 |
0 |
if $_ ne "." |
|
475
|
0 |
0 |
unless chdir $cwd |
|
490
|
449 |
0 |
ref $_ ? : |
|
496
|
0 |
107 |
unless defined $aold |
|
512
|
105 |
2 |
if -e $aold |
|
513
|
6 |
101 |
if $aold eq $anew |
|
516
|
9 |
92 |
unless ($code_is_final) |
|
522
|
83 |
9 |
if (not defined $self->{'mode'} or $self->{'mode'} =~ /^(rename|r)$/) { } |
|
|
0 |
9 |
elsif ($self->{'mode'} =~ /^(move|mv|m)$/) { } |
|
|
3 |
6 |
elsif ($self->{'mode'} =~ /^(copy|cp|c)$/) { } |
|
|
3 |
3 |
elsif ($self->{'mode'} =~ /^(symlink|sym|s)$/) { } |
|
|
3 |
0 |
elsif ($self->{'mode'} =~ /^(hardlink|h|link|l)$/) { } |
|
538
|
89 |
3 |
unless ($self->{'overwrite'}) |
|
541
|
14 |
89 |
if (-e $new or defined $anew and exists $self->{'_exists'}{$anew}) { } |
|
551
|
83 |
9 |
if $action eq "rename" or $action eq "move" |
|
552
|
3 |
89 |
if $self->{'dry_run'} |
|
555
|
5 |
87 |
if $self->{'verbose'} |
|
556
|
89 |
3 |
unless ($self->{'dry_run'}) |
|
559
|
1 |
88 |
if ($self->{'parents'}) |
|
561
|
1 |
0 |
unless (-e $dir) |
|
565
|
0 |
0 |
$file eq '' ? : |
|
568
|
0 |
1 |
if @$err |
|
573
|
0 |
89 |
if ($action eq 'move') { } |
|
|
80 |
9 |
elsif ($action eq 'rename') { } |
|
|
3 |
6 |
elsif ($action eq 'copy') { } |
|
|
3 |
3 |
elsif ($action eq 'symlink') { } |
|
|
3 |
0 |
elsif ($action eq 'link') { } |
|
575
|
0 |
0 |
unless $res |
|
578
|
1 |
79 |
unless $res |
|
581
|
0 |
3 |
unless $res |
|
585
|
0 |
3 |
unless $res |
|
588
|
0 |
3 |
unless $res |
|
590
|
1 |
88 |
unless $res |
|
598
|
0 |
0 |
unless $self->{'scriptlets'}{$name} |
|
601
|
0 |
0 |
$self->{'scriptlets'}{$name}{'code'} =~ /\n\z/ ? : |
|
607
|
33 |
0 |
if (@args) { } |
|
615
|
0 |
33 |
if ($self->{'_compiled'}) |
|
623
|
30 |
6 |
unless $self->{'compiled'} or ref $code eq "CODE" |
|
624
|
0 |
36 |
if $self->{'check'} |
|
626
|
3 |
33 |
if $i |