41 lines
546 B
Perl
41 lines
546 B
Perl
use 5.36.0;
|
|
|
|
package AoC::Puzzle;
|
|
|
|
use Moo;
|
|
|
|
use Path::Tiny;
|
|
|
|
has file => ( is => 'ro' );
|
|
|
|
has path_file => (
|
|
is => 'lazy',
|
|
default => sub ($self) {
|
|
path( $self->file );
|
|
}
|
|
);
|
|
|
|
sub day_part ($self) {
|
|
$self =~ /Part(\d)/g;
|
|
return $1;
|
|
}
|
|
|
|
sub file_lines ($self) {
|
|
$self->path_file->lines( { chomp => 1 } );
|
|
}
|
|
|
|
sub file_slurp ($self) {
|
|
my $content = $self->path_file->slurp;
|
|
chomp $content;
|
|
return $content;
|
|
}
|
|
|
|
has input => (
|
|
is => 'lazy',
|
|
default => sub { ... }
|
|
);
|
|
|
|
sub solve { ... }
|
|
|
|
1;
|