File Coverage

blib/lib/Math/DifferenceSet/Planar/Schema/Result/DifferenceSetSpace.pm
Criterion Covered Total %
statement 13 13 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod 1 1 100.0
total 18 18 100.0


line stmt bran cond sub pod time code
1             package Math::DifferenceSet::Planar::Schema::Result::DifferenceSetSpace;
2              
3             =head1 NAME
4              
5             Math::DifferenceSet::Planar::Schema::Result::DifferenceSetSpace -
6             planar difference set space database backend result class definition.
7              
8             =cut
9              
10 6     6   17327 use strict;
  6         16  
  6         163  
11 6     6   31 use warnings;
  6         15  
  6         160  
12              
13 6     6   31 use base 'DBIx::Class::Core';
  6         14  
  6         2009  
14              
15             =head1 VERSION
16              
17             This documentation refers to version 0.018 of
18             Math::DifferenceSet::Planar::Schema::Result::DifferenceSetSpace.
19              
20             =cut
21              
22             our $VERSION = '0.018';
23              
24             =head1 TABLE: C
25              
26             =cut
27              
28             __PACKAGE__->table("difference_set_space");
29              
30             =head1 ACCESSORS
31              
32             =head2 order
33              
34             data_type: 'integer'
35             is_nullable: 0
36              
37             =head2 mul_radix
38              
39             data_type: 'integer'
40             is_nullable: 0
41              
42             =head2 mul_depth
43              
44             data_type: 'integer'
45             is_nullable: 0
46              
47             =head2 rot_radices
48              
49             data_type: 'blob'
50             is_nullable: 0
51              
52             =head2 rot_depths
53              
54             data_type: 'blob'
55             is_nullable: 0
56              
57             =cut
58              
59             __PACKAGE__->add_columns(
60             "order_",
61             { accessor => "order", data_type => "integer", is_nullable => 0 },
62             "mul_radix",
63             { data_type => "integer", is_nullable => 0 },
64             "mul_depth",
65             { data_type => "integer", is_nullable => 0 },
66             "rot_radices",
67             { data_type => "blob", is_nullable => 0 },
68             "rot_depths",
69             { data_type => "blob", is_nullable => 0 },
70             );
71              
72             =head2 rotator_space
73              
74             I is a wrapper for I and I,
75             unpacking those and generating two arrayrefs of radices and corresponding
76             depths.
77              
78             =cut
79              
80             sub rotator_space {
81 33     33 1 3516 my ($this) = @_;
82 33         560 my @radices = unpack 'w*', $this->rot_radices;
83 33         864 my @depths = unpack 'w*', $this->rot_depths;
84 33         391 return (\@radices, \@depths);
85             }
86              
87             =head1 PRIMARY KEY
88              
89             =over 4
90              
91             =item * L
92              
93             =back
94              
95             =cut
96              
97             __PACKAGE__->set_primary_key("order_");
98              
99             1;
100              
101             =head1 SEE ALSO
102              
103             =over 4
104              
105             =item *
106              
107             L - schema class.
108              
109             =back
110              
111             =head1 AUTHOR
112              
113             Martin Becker, Ebecker-cpan-mp I cozap.comE
114              
115             =head1 COPYRIGHT AND LICENSE
116              
117             Copyright (c) 2021-2022 by Martin Becker, Blaubeuren.
118              
119             This library is free software; you can distribute it and/or modify it
120             under the terms of the Artistic License 2.0 (see the LICENSE file).
121              
122             =head1 DISCLAIMER OF WARRANTY
123              
124             This library is distributed in the hope that it will be useful, but
125             without any warranty; without even the implied warranty of merchantability
126             or fitness for a particular purpose.
127              
128             =cut