App-JobLog
view release on metacpan or search on metacpan
lib/App/JobLog/Log/Note.pm view on Meta::CPAN
package App::JobLog::Log::Note;
$App::JobLog::Log::Note::VERSION = '1.042';
# ABSTRACT: timestamped annotation in log
use Modern::Perl;
use Class::Autouse qw{DateTime};
use autouse 'App::JobLog::Time' => qw(now);
use autouse 'Carp' => qw(carp);
# for debugging
use overload '""' => sub {
$_[0]->data->to_string;
};
use overload 'bool' => sub { 1 };
sub new {
my ( $class, $logline ) = @_;
$class = ref $class || $class;
my $self = bless { log => $logline }, $class;
return $self;
}
sub clone {
my ($self) = @_;
my $clone = $self->new( $self->data->clone );
return $clone;
}
sub data {
$_[0]->{log};
}
sub start : lvalue {
$_[0]->data->time;
}
sub tags : lvalue {
$_[0]->data->{tags};
}
sub tagged { !!@{ $_[0]->tags } }
sub tag_list { @{ $_[0]->tags } }
sub describe {
my ($self) = @_;
join '; ', @{ $self->data->description };
}
sub exists_tag {
my ( $self, @tags ) = @_;
$self->data->exists_tag(@tags);
}
sub all_tags {
( run in 0.470 second using v1.01-cache-2.11-cpan-39bf76dae61 )