-#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;
$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
);
}
}
$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;
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 {
});
$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;
);
} 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 ),
);
}
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,
),
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,
),
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__
-