App-perlminlint

 view release on metacpan or  search on metacpan

lib/App/perlminlint.pm  view on Meta::CPAN

package App::perlminlint; sub MY () {__PACKAGE__}
# -*- coding: utf-8 -*-
use 5.009;
use strict;
use warnings FATAL => 'all';

our $VERSION = '0.24';

use Carp;
use autodie;
use Encode qw/is_utf8/;
use open qw/:utf8 :std/;

sub CFGFILE () {'.perlminlint.yml'}

use App::perlminlint::Object -as_base,
  [fields => qw/no_stderr
		help
		verbose
		dryrun

		no_auto_libdir
                no_widechar
                no_force_strict

		_plugins
		_lib_list _lib_dict
		_perl_opts
	       /];

require lib;
require File::Basename;

use Module::Pluggable require => 1, sub_name => '_plugins';


sub usage {
  (my MY $app) = @_;
  die <<END;
Usage: @{[$app->basename($0)]} [opts..] YOUR_SCRIPT

Options:
-v --verbose
-n --dryrun
-w -c -wc    (just ignored)

Pass-through Options:
-IDIR
-Mmodule
-mmodule
-dDEBUG
END
}

sub run {
  my ($pack, $argv) = @_;

  my MY $app = $pack->new($pack->parse_argv
			  ($argv, {h => 'help'
				   # Just to ignore -w -c -wc
				   , w => '', c => '', wc => ''
				   , v => 'verbose'
				   , n => 'dryrun'
				 }
			   , qr{^-[ImMd]}, my $perl_opts = []
			 ));



( run in 1.682 second using v1.01-cache-2.11-cpan-5a3173703d6 )