package DBIx::dbMan::MemPool;
use strict;
use locale;
use POSIX;
our $VERSION = '0.04';
1;
sub new {
my $class = shift;
my $obj = bless { @_ }, $class;
return $obj;
}
sub set {
my $obj = shift;
my $name = shift;
$obj->{$name} = shift;
}
sub get {
my $obj = shift;
my $name = shift;
return undef unless exists $obj->{$name};
return $obj->{$name};
}
sub register {
my $obj = shift;
my $name = shift;
++$obj->{-registers}->{$name}->{$_} for @_;
}
sub deregister {
my $obj = shift;
my $name = shift;
for (@_) {
delete $obj->{-registers}->{$name}->{$_} unless --$obj->{-registers}->{$name}->{$_};
}
}
sub get_register {
my $obj = shift;
my $name = shift;
return () unless exists $obj->{-registers};
return () unless exists $obj->{-registers}->{$name};
return keys %{$obj->{-registers}->{$name}};
}