summaryrefslogtreecommitdiff
path: root/lib/GridFiller/Types.pm
blob: fb7fc9b4f829670ce28ae6f89e0fab4d73bb5fdd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package GridFiller::Types; 
use MooseX::Types -declare =>
    [qw(
           GridT GridStatusT
           CharT LetterCellT ResultT
           WordListT
   )];
use MooseX::Types::Moose qw(Str ArrayRef Bool Int);
use MooseX::Types::Structured qw(Tuple);
 
subtype CharT,
    as Str,
    where { length($_) == 1 };
 
subtype LetterCellT,
    as Tuple[Int,CharT];
 
subtype GridT, as ArrayRef[ArrayRef[Str]];
 
subtype GridStatusT, as ArrayRef[ArrayRef[Int]];
 
subtype WordListT, as ArrayRef[Str];
 
subtype ResultT, as ArrayRef[ArrayRef[LetterCellT]];
 
1;