App-DBCritic

 view release on metacpan or  search on metacpan

lib/App/DBCritic/PolicyType.pm  view on Meta::CPAN

package App::DBCritic::PolicyType;

# ABSTRACT: Role for types of database criticism policies

#pod =head1 SYNOPSIS
#pod
#pod     package App::DBCritic::PolicyType::ResultClass;
#pod     use Moo;
#pod     with 'App::DBCritic::PolicyType';
#pod     1;
#pod
#pod =head1 DESCRIPTION
#pod
#pod This is a L<role|Moo::Role> consumed by all L<App::DBCritic|App::DBCritic>
#pod policy types.
#pod
#pod =cut

use strict;
use utf8;
use Modern::Perl '2011';    ## no critic (Modules::ProhibitUseQuotedVersion)

our $VERSION = '0.023';     # VERSION
require Devel::Symdump;
use List::MoreUtils;
use Moo::Role;
use Sub::Quote;
use namespace::autoclean -also => qr{\A _}xms;
with 'App::DBCritic::Policy';

has applies_to => (
    is   => 'ro',
    lazy => 1,
    ## no critic (ValuesAndExpressions::RequireInterpolationOfMetachars)
    default => quote_sub( <<'END_SUB' => { '$package' => \__PACKAGE__ } ),
        [   List::MoreUtils::apply {s/\A .+ :://xms}
            grep { shift->does($_) } Devel::Symdump->packages($package),
        ];
END_SUB
);

#pod =attr applies_to
#pod
#pod Returns an array reference containing the last component of all the
#pod C<App::DBCritic::PolicyType> roles composed into the consuming class.
#pod
#pod =cut

1;

__END__

=pod

=encoding UTF-8

=for :stopwords Mark Gardner cpan testmatrix url annocpan anno bugtracker rt cpants
kwalitee diff irc mailto metadata placeholders metacpan

=head1 NAME

App::DBCritic::PolicyType - Role for types of database criticism policies

=head1 VERSION

version 0.023

=head1 SYNOPSIS

    package App::DBCritic::PolicyType::ResultClass;
    use Moo;
    with 'App::DBCritic::PolicyType';
    1;

=head1 DESCRIPTION

This is a L<role|Moo::Role> consumed by all L<App::DBCritic|App::DBCritic>
policy types.

=head1 ATTRIBUTES

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 0.863 second using v1.00-cache-2.02-grep-82fe00e-cpan-f5108d614456 )