Hash-Match

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN


  - Added signature to release.

  - Removed MANIFEST.SKIP from build.

v0.8.0    2023-06-11 14:49:27+01:00 Europe/London
  [Incompatible Changes]
  - Perl v5.14 or later is now required.

  [Enhancements]
  - Uses Ref::Util for my reference type checks.

  - Improved code encapsulation.

  - Cleaned up unnecessary code.

  [Documentation]
  - Document perl version support policy.

  - Updated copyright year.

Changes  view on Meta::CPAN

  - Fixed typo.

  [Other]
  - Add List::SomeUtils::XS to recommended prereqs.

  [Toolchain]
  - Removed use of Travis-CI.

v0.7.0    2018-10-19 17:16:55+01:00 Europe/London
  [Enhancements]
  - Uses Ref::Util for improved performance.

  [Documentation]
  - The POD is build with Pod::Weaver.

  - Added INSTALL file to the distribution.

  [Toolchain]
  - Reorganised dist.ini to improve build process.

  - Includes cpanfile for development.

META.json  view on Meta::CPAN

            "Test::Pod" : "1.41",
            "Test::Pod::Coverage" : "1.08",
            "Test::Pod::LinkCheck" : "0",
            "Test::Portability::Files" : "0",
            "Test::TrailingSpace" : "0.0203"
         }
      },
      "runtime" : {
         "recommends" : {
            "List::SomeUtils::XS" : "0",
            "Ref::Util::XS" : "0"
         },
         "requires" : {
            "Carp" : "0",
            "List::AllUtils" : "0",
            "Ref::Util" : "0",
            "namespace::autoclean" : "0",
            "perl" : "v5.14.0",
            "warnings" : "0"
         }
      },
      "test" : {
         "recommends" : {
            "CPAN::Meta" : "2.120900"
         },
         "requires" : {

META.yml  view on Meta::CPAN

meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: Hash-Match
provides:
  Hash::Match:
    file: lib/Hash/Match.pm
    version: v0.8.2
recommends:
  List::SomeUtils::XS: '0'
  Ref::Util::XS: '0'
requires:
  Carp: '0'
  List::AllUtils: '0'
  Ref::Util: '0'
  namespace::autoclean: '0'
  perl: v5.14.0
  warnings: '0'
resources:
  bugtracker: https://github.com/robrwo/Hash-Match/issues
  repository: git://github.com/robrwo/Hash-Match.git
version: v0.8.2
x_authority: cpan:RRWO
x_contributors:
  - 'Mohammad S Anwar <mohammad.anwar@yahoo.com>'

Makefile.PL  view on Meta::CPAN

  "CONFIGURE_REQUIRES" => {
    "ExtUtils::MakeMaker" => 0
  },
  "DISTNAME" => "Hash-Match",
  "LICENSE" => "artistic_2",
  "MIN_PERL_VERSION" => "5.014000",
  "NAME" => "Hash::Match",
  "PREREQ_PM" => {
    "Carp" => 0,
    "List::AllUtils" => 0,
    "Ref::Util" => 0,
    "namespace::autoclean" => 0,
    "warnings" => 0
  },
  "TEST_REQUIRES" => {
    "File::Spec" => 0,
    "Module::Metadata" => "1.000015",
    "Test::Exception" => 0,
    "Test::More" => "0.98",
    "if" => 0,
    "strict" => 0

Makefile.PL  view on Meta::CPAN

  }
);


my %FallbackPrereqs = (
  "Carp" => 0,
  "ExtUtils::MakeMaker" => "7.22",
  "File::Spec" => 0,
  "List::AllUtils" => 0,
  "Module::Metadata" => "1.000015",
  "Ref::Util" => 0,
  "Test::Exception" => 0,
  "Test::More" => "0.98",
  "if" => 0,
  "namespace::autoclean" => 0,
  "strict" => 0,
  "warnings" => 0
);


unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {

cpanfile  view on Meta::CPAN

# This file is generated by Dist::Zilla::Plugin::CPANFile v6.032
# Do not edit this file directly. To change prereqs, edit the `dist.ini` file.

requires "Carp" => "0";
requires "List::AllUtils" => "0";
requires "Ref::Util" => "0";
requires "namespace::autoclean" => "0";
requires "perl" => "v5.14.0";
requires "warnings" => "0";
recommends "List::SomeUtils::XS" => "0";
recommends "Ref::Util::XS" => "0";

on 'build' => sub {
  requires "ExtUtils::MakeMaker" => "7.22";
  requires "Module::Metadata" => "1.000015";
};

on 'test' => sub {
  requires "File::Spec" => "0";
  requires "Module::Metadata" => "1.000015";
  requires "Test::Exception" => "0";

lib/Hash/Match.pm  view on Meta::CPAN


# ABSTRACT: match contents of a hash against rules

use v5.14;
use warnings;

our $VERSION = 'v0.8.2';

use Carp qw/ croak /;
use List::AllUtils qw/ natatime /;
use Ref::Util qw/ is_arrayref is_blessed_ref is_coderef is_hashref is_ref is_regexpref /;

# RECOMMEND PREREQ: List::SomeUtils::XS
# RECOMMEND PREREQ: Ref::Util::XS

use namespace::autoclean;


sub new {
    my ($class, %args) = @_;

    if (my $rules = $args{rules}) {

        my $root = is_hashref($rules) ? '-all' : '-any';

t/00-report-prereqs.dd  view on Meta::CPAN

                                      'Test::Pod' => '1.41',
                                      'Test::Pod::Coverage' => '1.08',
                                      'Test::Pod::LinkCheck' => '0',
                                      'Test::Portability::Files' => '0',
                                      'Test::TrailingSpace' => '0.0203'
                                    }
                    },
       'runtime' => {
                      'recommends' => {
                                        'List::SomeUtils::XS' => '0',
                                        'Ref::Util::XS' => '0'
                                      },
                      'requires' => {
                                      'Carp' => '0',
                                      'List::AllUtils' => '0',
                                      'Ref::Util' => '0',
                                      'namespace::autoclean' => '0',
                                      'perl' => 'v5.14.0',
                                      'warnings' => '0'
                                    }
                    },
       'test' => {
                   'recommends' => {
                                     'CPAN::Meta' => '2.120900'
                                   },
                   'requires' => {



( run in 0.548 second using v1.01-cache-2.11-cpan-a5abf4f5562 )