Checking in breakout of the various packages in DBM::Deep::Engine and documentation...
[dbsrgits/DBM-Deep.git] / lib / DBM / Deep / Engine / Sector / Reference.pm
index b0b749d..3de5551 100644 (file)
@@ -1,17 +1,11 @@
-#TODO: Convert this to a string
 package DBM::Deep::Engine::Sector::Reference;
 
-use 5.006;
+use 5.006_000;
 
 use strict;
 use warnings FATAL => 'all';
 
-use Scalar::Util ();
-
-use DBM::Deep::Null;
-
-use DBM::Deep::Engine::Sector::Data;
-our @ISA = qw( DBM::Deep::Engine::Sector::Data );
+use base qw( DBM::Deep::Engine::Sector::Data );
 
 sub _init {
     my $self = shift;
@@ -35,9 +29,9 @@ sub _init {
         $e->storage->print_at( $self->offset, $self->type ); # Sector type
         # Skip staleness counter
         $e->storage->print_at( $self->offset + $self->base_size,
-            pack( $e->StP($e->byte_size), 0 ),             # Index/BList loc
-            pack( $e->StP($e->byte_size), $class_offset ), # Classname loc
-            pack( $e->StP($e->byte_size), 1 ),             # Initial refcount
+            pack( $StP{$e->byte_size}, 0 ),             # Index/BList loc
+            pack( $StP{$e->byte_size}, $class_offset ), # Classname loc
+            pack( $StP{$e->byte_size}, 1 ),             # Initial refcount
             chr(0) x $leftover,                         # Zero-fill the rest
         );
     }
@@ -46,8 +40,8 @@ sub _init {
     }
 
     $self->{staleness} = unpack(
-        $e->StP($DBM::Deep::Engine::STALE_SIZE),
-        $e->storage->read_at( $self->offset + $e->SIG_SIZE, $DBM::Deep::Engine::STALE_SIZE ),
+        $StP{$STALE_SIZE},
+        $e->storage->read_at( $self->offset + $e->SIG_SIZE, $STALE_SIZE ),
     );
 
     return;
@@ -209,7 +203,7 @@ sub get_blist_loc {
 
     my $e = $self->engine;
     my $blist_loc = $e->storage->read_at( $self->offset + $self->base_size, $e->byte_size );
-    return unpack( $e->StP($e->byte_size), $blist_loc );
+    return unpack( $StP{$e->byte_size}, $blist_loc );
 }
 
 sub get_bucket_list {
@@ -233,7 +227,7 @@ sub get_bucket_list {
         });
 
         $engine->storage->print_at( $self->offset + $self->base_size,
-            pack( $engine->StP($engine->byte_size), $blist->offset ),
+            pack( $StP{$engine->byte_size}, $blist->offset ),
         );
 
         return $blist;
@@ -358,7 +352,7 @@ sub get_bucket_list {
             );
         } else {
             $engine->storage->print_at( $self->offset + $self->base_size,
-                pack( $engine->StP($engine->byte_size), $new_index->offset ),
+                pack( $StP{$engine->byte_size}, $new_index->offset ),
             );
         }
 
@@ -383,7 +377,7 @@ sub get_class_offset {
 
     my $e = $self->engine;
     return unpack(
-        $e->StP($e->byte_size),
+        $StP{$e->byte_size},
         $e->storage->read_at(
             $self->offset + $self->base_size + 1 * $e->byte_size, $e->byte_size,
         ),
@@ -490,7 +484,7 @@ sub get_refcount {
 
     my $e = $self->engine;
     return unpack(
-        $e->StP($e->byte_size),
+        $StP{$e->byte_size},
         $e->storage->read_at(
             $self->offset + $self->base_size + 2 * $e->byte_size, $e->byte_size,
         ),
@@ -504,11 +498,9 @@ sub write_refcount {
     my $e = $self->engine;
     $e->storage->print_at(
         $self->offset + $self->base_size + 2 * $e->byte_size,
-        pack( $e->StP($e->byte_size), $num ),
+        pack( $StP{$e->byte_size}, $num ),
     );
 }
 
-
 1;
 __END__
-