Games-Crossword-Puzzle

 view release on metacpan or  search on metacpan

lib/Games/Crossword/Puzzle/Cell.pm  view on Meta::CPAN

use strict;
use warnings;
package Games::Crossword::Puzzle::Cell 0.004;
# ABSTRACT:  one of those little square bits with a number

use Carp ();

#pod =method new
#pod
#pod   my $cell = Games::Crossword::Puzzle::Cell->new(\%arg);
#pod
#pod You probably don't mean to use this directly.
#pod
#pod Valid arguments are:
#pod
#pod   across - the across clue
#pod   down   - the down clue
#pod   number - the cell's number
#pod   value  - the value that belongs in the cell
#pod   guess  - the value that a user has put into the cell
#pod
#pod In the future, this may return a singleton for The Black Cell.
#pod
#pod =cut

sub new {
  my ($class, $arg) = @_;

  my $data = {
    map { $_ => $arg->{$_} } qw(across down number value guess)
  };

  bless $data => $class;
}

#pod =method across
#pod
#pod =method down
#pod
#pod These methods return the clues for the word beginning in this cell, if any.
#pod
#pod =cut

sub across { $_[0]->{across} }
sub down   { $_[0]->{down} }

#pod =method number
#pod
#pod This method returns the cell's number, if it is numbered.
#pod
#pod =cut

sub number { $_[0]->{number} }

#pod =method value
#pod
#pod This returns the value that should appear in the cell.  It returns undef for
#pod black cells.  Note that this may be more than one character, in case of a
#pod rebus.
#pod
#pod =cut

sub value  { $_[0]->{value} }

#pod =method guess
#pod
#pod This returns the value that has been filled into the cell by the user.  It
#pod returns undef for black or empty cells.
#pod
#pod =cut

sub guess  { $_[0]->{guess} }

1;

__END__

=pod

=encoding UTF-8

=head1 NAME

Games::Crossword::Puzzle::Cell - one of those little square bits with a number

=head1 VERSION

version 0.004

=head1 PERL VERSION

This module should work on any version of perl still receiving updates from
the Perl 5 Porters.  This means it should work on any version of perl released

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.532 second using v1.00-cache-2.02-grep-82fe00e-cpan-d29e8ade9f55 )