line |
!l |
l&&!r |
l&&r |
condition |
3
|
1 |
0 |
0 |
@ARGV and @ARGV[0] =~ /^\w/ |
42
|
0 |
0 |
0 |
@_ and -f $_[0] |
71
|
0 |
0 |
0 |
&blessed($val) and $val->can('ymd') |
147
|
0 |
0 |
0 |
$start and $stop |
|
0 |
0 |
0 |
$start and $stop and $self->project |
261
|
0 |
0 |
0 |
$k eq 'stop' and $event->{$k} |
369
|
0 |
0 |
0 |
$res->{'start_at'} = $1 and $res->{'interval'} = $2 |
393
|
0 |
0 |
0 |
@project_re and not grep({$event->{'project'} =~ /$_/;} @project_re) |
394
|
0 |
0 |
0 |
$tags and not grep({$tags =~ /\b$_\b/;} @{$$event{'tags'};}) |
404
|
0 |
0 |
0 |
@{$res->{'log'};} and not $res->{'log'}[-1]{'project'} |
|
0 |
0 |
0 |
@{$res->{'log'};} and not $res->{'log'}[-1]{'project'} and $res->{'log'}[-1]{'start'}->mday == $event->{'start'}->mday |
423
|
0 |
0 |
0 |
$self->config('hours_per_month') and $res->{'interval'} eq 'month' |
430
|
0 |
0 |
0 |
$start->day_of_week != 0 and $start->day_of_week != 6 |
465
|
0 |
0 |
0 |
$self->month and not $self->year |
479
|
0 |
0 |
0 |
-t STDIN and $self->year || $self->month |
504
|
0 |
0 |
0 |
$code and $self->$code($event) |
521
|
0 |
0 |
0 |
$event->{'stop'} && $event->{'start'} && $event->{'stop'} - $event->{'start'} |
524
|
0 |
0 |
0 |
$event->{'stop'} and $event->{'seconds'} < $self->config('min_time') |
598
|
5 |
0 |
2 |
not $hms and $ymd =~ /:/ |
line |
l |
!l |
condition |
21
|
0 |
1 |
$ENV{'APP_TT_DEBUG'} || 0 |
70
|
0 |
0 |
$event->{$_} // '' |
90
|
0 |
0 |
shift() || 'app' |
129
|
0 |
0 |
$event->{'project'} || '---' |
242
|
0 |
0 |
$ENV{'EDITOR'} || 'nano' |
|
0 |
0 |
$ENV{'TT_COLUMNS'} || 'date,project,hours,rounded,tags,description' |
|
0 |
0 |
$ENV{'TT_HOURS_PER_MONTH'} || 0 |
|
0 |
0 |
$ENV{'TT_MIN_TIME'} || 300 |
|
0 |
0 |
$ENV{'TT_ROUND_UP_AT'} || 30 |
|
0 |
0 |
$self->{'defaults'} ||= {'editor', $ENV{'EDITOR'} || 'nano', 'export_columns', $ENV{'TT_COLUMNS'} || 'date,project,hours,rounded,tags,description', 'hours_per_month', $ENV{'TT_HOURS_PER_MONTH'} || 0, 'min_time', $ENV{'TT_MIN_TIME'} || 300, 'round_up_at', $ENV{'TT_ROUND_UP_AT'} || 30} |
246
|
0 |
0 |
($self->{'config'}{$key} // $self->{'defaults'}{$key}) // die("Missing option '${key}'.\n") |
254
|
0 |
0 |
$event->{'path'} //= 'Not found' |
262
|
0 |
0 |
$event->{$k} // '' |
279
|
0 |
0 |
unlink $trc_file or die "rm ${trc_file}: $!" |
320
|
0 |
0 |
$log{$k} ||= {%$e, 'seconds', 0} |
364
|
0 |
0 |
$self->project || '.+' |
372
|
0 |
0 |
$res->{'fill'} ||= 1 |
375
|
0 |
0 |
$res->{'fill'} ||= 0 |
376
|
0 |
0 |
$res->{'interval'} ||= 'month' |
377
|
0 |
0 |
$res->{'start_at'} ||= 0 |
414
|
0 |
0 |
$self->group_by || 'nothing' |
471
|
0 |
0 |
$self->year || '\\d{4}' |
472
|
0 |
0 |
$self->month || '\\d{2}' |
474
|
0 |
0 |
$self->project || '[^.]+' |
505
|
0 |
0 |
unlink $found->{'file'} or die "rm $found->{'file'}: $!" |
514
|
0 |
0 |
$event->{'__CLASS__'} ||= 'App::TimeTracker::Data::Task' |
515
|
0 |
0 |
$self->description // '' |
517
|
0 |
0 |
$event->{'seconds'} ||= 0 |
518
|
0 |
0 |
$event->{'tags'} ||= [&uniq(@{[] unless $event->{'tags'};}, $self->_tags)] |
519
|
0 |
0 |
$event->{'user'} ||= scalar getpwuid $< |
589
|
0 |
0 |
$! || 1 |
line |
l |
!l&&r |
!l&&!r |
condition |
43
|
0 |
0 |
0 |
$self->year or $self->month |
|
0 |
0 |
0 |
$self->year or $self->month or not -t STDIN |
179
|
0 |
0 |
0 |
$event->{'project'} ||= $self->project |
180
|
0 |
0 |
0 |
$event->{'project'} ||= (grep {/^[A-Za-z0-9-]+$/;} @args)[0] |
181
|
0 |
0 |
0 |
$event->{'project'} ||= basename(Cwd::getcwd()) |
182
|
0 |
0 |
0 |
$event->{'project'} ||= $self->config('project') |
246
|
0 |
0 |
0 |
$self->{'config'}{$key} // $self->{'defaults'}{$key} |
261
|
0 |
0 |
0 |
$k eq 'start' or $k eq 'stop' and $event->{$k} |
370
|
0 |
0 |
0 |
$res->{'start_at'} ||= $1 |
371
|
0 |
0 |
0 |
$res->{'interval'} ||= $1 |
395
|
0 |
0 |
0 |
$event->{'stop'} ||= $NOW + $NOW->tzoffset |
396
|
0 |
0 |
0 |
$event->{'seconds'} ||= $event->{'stop'} - $event->{'start'} |
457
|
0 |
0 |
0 |
$ENV{'TT_HOME'} || $ENV{'TIMETRACKER_HOME'} || 'File::Spec'->catdir('File::HomeDir'->my_home || 'File::Spec'->curdir, '.TimeTracker') |
459
|
0 |
0 |
0 |
readlink $root || $root |
479
|
0 |
0 |
0 |
$self->year || $self->month |
515
|
0 |
0 |
0 |
$event->{'description'} ||= $self->description // '' |
516
|
0 |
0 |
0 |
$event->{'project'} ||= $self->project |
570
|
0 |
0 |
0 |
not $event->{'start'} or $event->{'stop'} |
607
|
0 |
7 |
0 |
$t{'ref'} || $NOW |
609
|
2 |
5 |
0 |
$t{'Y'} ||= $ref->year |
610
|
3 |
4 |
0 |
$t{'m'} //= $ref->mon |
611
|
5 |
2 |
0 |
$t{'d'} //= $ref->mday |
612
|
4 |
0 |
0 |
defined $t{'H'} || defined $t{'M'} |
|
3 |
0 |
4 |
$t{'S'} //= defined $t{'H'} || defined $t{'M'} ? 0 : $ref->second |
613
|
4 |
0 |
3 |
$t{'M'} //= defined $t{'H'} ? 0 : $ref->min |
614
|
7 |
0 |
0 |
$t{'H'} //= $ref->hour |