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 7     7   16389 use strict;
  7         20  
  7         288  
11 7     7   63 use warnings;
  7         35  
  7         550  
12              
13 7     7   44 use base 'DBIx::Class::Core';
  7         29  
  7         3201  
14              
15             =head1 VERSION
16              
17             This documentation refers to version 1.003 of
18             Math::DifferenceSet::Planar::Schema::Result::DifferenceSetSpace.
19              
20             =cut
21              
22             our $VERSION = '1.003';
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 29     29 1 6139 my ($this) = @_;
82 29         842 my @radices = unpack 'w*', $this->rot_radices;
83 29         1167 my @depths = unpack 'w*', $this->rot_depths;
84 29         418 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             =item *
110              
111             L - higher level data interface.
112              
113             =back
114              
115             =head1 AUTHOR
116              
117             Martin Becker, Ebecker-cpan-mp I cozap.comE
118              
119             =head1 COPYRIGHT AND LICENSE
120              
121             Copyright (c) 2021-2025 by Martin Becker, Blaubeuren.
122              
123             This library is free software; you can distribute it and/or modify it
124             under the terms of the Artistic License 2.0 (see the LICENSE file).
125              
126             The license grants freedom for related software development but does
127             not cover incorporating code or documentation into AI training material.
128             Please contact the copyright holder if you want to use the library whole
129             or in part for other purposes than stated in the license.
130              
131             =head1 DISCLAIMER OF WARRANTY
132              
133             This library is distributed in the hope that it will be useful, but
134             without any warranty; without even the implied warranty of merchantability
135             or fitness for a particular purpose.
136              
137             =cut