From 64d9de92677b6ea344ab1c1e09fd71428120ef1d Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Fri, 8 Jul 2011 23:17:20 -0500 Subject: split this into its own dist --- lib/smartmatch.pm | 39 --------------------------------------- lib/smartmatch/engine/rjbs.pm | 1 + 2 files changed, 1 insertion(+), 39 deletions(-) delete mode 100644 lib/smartmatch.pm (limited to 'lib') diff --git a/lib/smartmatch.pm b/lib/smartmatch.pm deleted file mode 100644 index 071e4ea..0000000 --- a/lib/smartmatch.pm +++ /dev/null @@ -1,39 +0,0 @@ -package smartmatch; -use strict; -use warnings; -use 5.010; -# ABSTRACT: pluggable smart matching backends - -use parent 'DynaLoader'; -use B::Hooks::OP::Check; - -sub dl_load_flags { 0x01 } - -__PACKAGE__->bootstrap( - # we need to be careful not to touch $VERSION at compile time, otherwise - # DynaLoader will assume it's set and check against it, which will cause - # fail when being run in the checkout without dzil having set the actual - # $VERSION - exists $smartmatch::{VERSION} - ? ${ $smartmatch::{VERSION} } : (), -); - -sub import { - my $package = shift; - my ($cb) = @_; - - if (!ref($cb)) { - my $engine = "smartmatch::engine::$cb"; - eval "require $engine; 1" - or die "Couldn't load smartmatch engine $engine: $@"; - $cb = $engine->can('match') unless ref($cb); - } - - smartmatch::register($cb); -} - -sub unimport { - smartmatch::unregister(); -} - -1; diff --git a/lib/smartmatch/engine/rjbs.pm b/lib/smartmatch/engine/rjbs.pm index da40998..b25ab8c 100644 --- a/lib/smartmatch/engine/rjbs.pm +++ b/lib/smartmatch/engine/rjbs.pm @@ -1,6 +1,7 @@ package smartmatch::engine::rjbs; use strict; use warnings; +# ABSTRACT: implementation of rjbs's smartmatch proposal use overload (); use Scalar::Util qw(blessed reftype); -- cgit v1.2.3