BerkeleyDB-Easy
view release on metacpan or search on metacpan
#
# ANY CHANGES MADE HERE WILL BE LOST!
#
# MakeMaker ARGV: ()
#
# MakeMaker Parameters:
# ABSTRACT_FROM => q[lib/BerkeleyDB/Easy.pm]
# AUTHOR => [q[Rob Schaber <robschaber@gmail.com>]]
# BUILD_REQUIRES => { Try::Tiny=>q[0], Test::More=>q[0] }
# CONFIGURE_REQUIRES => { ExtUtils::MakeMaker=>q[0] }
# LICENSE => q[Perl_5]
# MIN_PERL_VERSION => q[5.006]
# NAME => q[BerkeleyDB::Easy]
# PL_FILES => { }
# PREREQ_PM => { Test::More=>q[0], Try::Tiny=>q[0] }
# TEST_REQUIRES => { }
# VERSION_FROM => q[lib/BerkeleyDB/Easy.pm]
# clean => { FILES=>q[BerkeleyDB-Easy-*] }
# dist => { COMPRESS=>q[gzip -9f], SUFFIX=>q[gz] }
# --- MakeMaker post_initialize section:
# --- MakeMaker const_config section:
# --- MakeMaker metafile section:
metafile : create_distdir
$(NOECHO) $(ECHO) Generating META.yml
$(NOECHO) $(ECHO) --- > META_new.yml
$(NOECHO) $(ECHO) "abstract: 'BerkeleyDB wrapper with Perlish interface and error handling'" >> META_new.yml
$(NOECHO) $(ECHO) author: >> META_new.yml
$(NOECHO) $(ECHO) " - 'Rob Schaber <robschaber@gmail.com>'" >> META_new.yml
$(NOECHO) $(ECHO) build_requires: >> META_new.yml
$(NOECHO) $(ECHO) " Test::More: '0'" >> META_new.yml
$(NOECHO) $(ECHO) " Try::Tiny: '0'" >> META_new.yml
$(NOECHO) $(ECHO) configure_requires: >> META_new.yml
$(NOECHO) $(ECHO) " ExtUtils::MakeMaker: '0'" >> META_new.yml
$(NOECHO) $(ECHO) "dynamic_config: 1" >> META_new.yml
$(NOECHO) $(ECHO) "generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.120921'" >> META_new.yml
$(NOECHO) $(ECHO) "license: perl" >> META_new.yml
$(NOECHO) $(ECHO) meta-spec: >> META_new.yml
$(NOECHO) $(ECHO) " url: http://module-build.sourceforge.net/META-spec-v1.4.html" >> META_new.yml
$(NOECHO) $(ECHO) " version: '1.4'" >> META_new.yml
$(NOECHO) $(ECHO) "name: BerkeleyDB-Easy" >> META_new.yml
$(NOECHO) $(ECHO) no_index: >> META_new.yml
$(NOECHO) $(ECHO) " \"no_index\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"directory\" : [" >> META_new.json
$(NOECHO) $(ECHO) " \"t\"," >> META_new.json
$(NOECHO) $(ECHO) " \"inc\"" >> META_new.json
$(NOECHO) $(ECHO) " ]" >> META_new.json
$(NOECHO) $(ECHO) " }}," >> META_new.json
$(NOECHO) $(ECHO) " \"prereqs\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"build\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"requires\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"Test::More\" : \"0\"," >> META_new.json
$(NOECHO) $(ECHO) " \"Try::Tiny\" : \"0\"" >> META_new.json
$(NOECHO) $(ECHO) " }}" >> META_new.json
$(NOECHO) $(ECHO) " }}," >> META_new.json
$(NOECHO) $(ECHO) " \"configure\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"requires\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"ExtUtils::MakeMaker\" : \"0\"" >> META_new.json
$(NOECHO) $(ECHO) " }}" >> META_new.json
$(NOECHO) $(ECHO) " }}," >> META_new.json
$(NOECHO) $(ECHO) " \"runtime\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"requires\" : {{" >> META_new.json
$(NOECHO) $(ECHO) " \"perl\" : \"5.006\"" >> META_new.json
Makefile.PL view on Meta::CPAN
VERSION_FROM => 'lib/BerkeleyDB/Easy.pm',
ABSTRACT_FROM => 'lib/BerkeleyDB/Easy.pm',
LICENSE => 'Perl_5',
PL_FILES => {},
MIN_PERL_VERSION => 5.006,
CONFIGURE_REQUIRES => {
'ExtUtils::MakeMaker' => 0,
},
BUILD_REQUIRES => {
'Test::More' => 0,
'Try::Tiny' => 0,
},
PREREQ_PM => {
'BerkeleyDB' => 0,
},
dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
clean => { FILES => 'BerkeleyDB-Easy-*' },
);
lib/BerkeleyDB/Easy.pm view on Meta::CPAN
Errors are thrown as a versatile structured exception object. It is overloaded
to stringify as a concise message, numberify into an error code, and has various
methods for detailed handling.
use BerkeleyDB::Easy;
my $db = BerkeleyDB::Easy::Btree->new();
my $err;
use Try::Tiny;
try { $db->get('asdf', 666) } catch { $err = $_ };
use feature 'say';
say $err;
# [BerkeleyDB::Easy::Handle::get] EINVAL (22): Invalid argument.
# DB_READ_COMMITTED, DB_READ_UNCOMMITTED and DB_RMW require locking
# at error.pl line 16.
say 0 + $err;
lib/BerkeleyDB/Easy/Common.pm view on Meta::CPAN
# variable as well as the operating system's, so we can return everything
# back to the user in a pristine state.
#
sub _wrap {
my ($self, $func) = (shift, shift);
local ($BerkeleyDB::Error, $!, $^E);
$func->(@_);
}
#
# An even tinier Try::Tiny because lol no dependencies.
#
sub _try {
my ($self, $try, $catch) = @_;
my ($ok, $ret, $err);
my $prev = $@;
{
local $@;
$ok = eval {
local $@ = $prev;
use strict;
use warnings;
use Test::More;
use Try::Tiny;
use BerkeleyDB::Easy;
my $db = BerkeleyDB::Easy::Btree->new();
is ref $db, 'BerkeleyDB::Easy::Btree', 'db ref';
my $err;
try { $db->get('asdf', 666) } catch { $err = $_ };
( run in 1.417 second using v1.01-cache-2.11-cpan-05444aca049 )