use strict;
use warnings;
-
use vars (qw($TREE));
-use Carp qw(confess);
+use Carp qw(carp confess);
+use Exporter;
=head1 NAME
=cut
-$TREE = {};
+@Onis::Data::Persistent::None::EXPORT_OK = (qw($TREE));
+@Onis::Data::Persistent::None::ISA = ('Exporter');
+
+if ($::DEBUG & 0x0200)
+{
+ require Data::Dumper;
+}
return (1);
$obj->{'num_fields'} = scalar (@fields);
$obj->{'field_index'} = {map { $_ => $i++ } (@fields)};
$obj->{'id'} = $id;
+
+ if ($::DEBUG & 0x0200)
+ {
+ my $prefix = __FILE__ . ': ';
+ my $dbg = Data::Dumper->Dump ([$obj], ['obj']);
+ $dbg =~ s/^/$prefix/mg; chomp ($dbg);
+ print STDOUT $/, $dbg;
+ }
return (bless ($obj, $pkg));
}
if ($obj->{'num_fields'} != scalar (@fields))
{
my $id = $obj->{'id'};
- print STDERR $/, __FILE__, ": Number of fields do not match ($id).";
+ carp ("Number of fields do not match ($id).");
return;
}
+ if ($::DEBUG & 0x0200)
+ {
+ print STDOUT $/, __FILE__, ': PUT(', $obj->{'id'}, ', ', $key, ') = (' . join (', ', @fields) . ')';
+ }
+
$obj->{'data'}{$key} = [@fields];
}
return (qw());
}
+ if ($::DEBUG & 0x0200)
+ {
+ print STDOUT $/, __FILE__, ': GET(', $obj->{'id'}, ', ', $key, ') = (' . join (', ', @{$obj->{'data'}{$key}}) . ')';
+ }
+
return (@{$obj->{'data'}{$key}});
}
}, @keys);
}
+sub del
+{
+ my $obj = shift;
+ my $key = shift;
+
+ if (defined ($obj->{'data'}{$key}))
+ {
+ delete ($obj->{'data'}{$key});
+ }
+}
+
=head1 AUTHOR
Florian octo Forster, L<octo@verplant.org>