Refactored Sector:: out from under Engine:: and into its own area
[dbsrgits/DBM-Deep.git] / lib / DBM / Deep / Sector.pm
1 package DBM::Deep::Sector;
2
3 use 5.006_000;
4
5 use strict;
6 use warnings FATAL => 'all';
7
8 use Scalar::Util ();
9
10 sub new {
11     my $self = bless $_[1], $_[0];
12     Scalar::Util::weaken( $self->{engine} );
13     $self->_init;
14     return $self;
15 }
16
17 sub _init {}
18 sub clone { die "clone must be implemented in a child class" }
19
20 sub engine { $_[0]{engine} }
21 sub offset { $_[0]{offset} }
22 sub type   { $_[0]{type}   }
23
24 sub load { die "load must be implemented in a child class" }
25
26 1;
27 __END__