/usr/share/perl5/Pinto/Chrome.pm is in pinto 0.97+dfsg-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | # ABSTRACT: Base class for interactive interfaces
package Pinto::Chrome;
use Moose;
use MooseX::StrictConstructor;
use MooseX::Types::Moose qw(Int Bool);
use MooseX::MarkAsMethods ( autoclean => 1 );
#-----------------------------------------------------------------------------
our $VERSION = '0.097'; # VERSION
#-----------------------------------------------------------------------------
has verbose => (
is => 'ro',
isa => Int,
default => 0,
);
has quiet => (
is => 'ro',
isa => Bool,
default => 0,
);
#-----------------------------------------------------------------------------
sub show { return 1 }
#-----------------------------------------------------------------------------
sub diag { return 1 }
#-----------------------------------------------------------------------------
sub edit { return $_[1] }
#-----------------------------------------------------------------------------
sub show_progress { return 1 }
#-----------------------------------------------------------------------------
sub progress_done { return 1 }
#-----------------------------------------------------------------------------
sub should_render_diag {
my ( $self, $level ) = @_;
return 1 if $level == 0; # Always, always display errors
return 0 if $self->quiet; # Don't display anything else if quiet
return 1 if $self->verbose + 1 >= $level;
return 0;
}
#-----------------------------------------------------------------------------
sub diag_levels { return qw(error warning notice info) }
#-----------------------------------------------------------------------------
my @levels = __PACKAGE__->diag_levels;
__generate_diag_method( $levels[$_], $_ ) for ( 0 .. $#levels );
#-----------------------------------------------------------------------------
sub __generate_diag_method {
my ( $method_name, $diag_level ) = @_;
my $template = <<'END_METHOD';
sub %s {
my ($self, $msg, $opts) = @_;
return unless $self->should_render_diag(%s);
$self->diag($msg, $opts);
}
END_METHOD
eval sprintf $template, $method_name, $diag_level;
croak $@ if $@;
}
#-----------------------------------------------------------------------------
__PACKAGE__->meta->make_immutable;
#-----------------------------------------------------------------------------
1;
__END__
=pod
=encoding UTF-8
=for :stopwords Jeffrey Ryan Thalhammer BenRifkah Fowler Jakob Voss Karen Etheridge Michael
G. Bergsten-Buret Schwern Oleg Gashev Steffen Schwigon Tommy Stanton
Wolfgang Kinkeldei Yanick Boris Champoux hesco popl Däppen Cory G Watson
David Steinbrunner Glenn
=head1 NAME
Pinto::Chrome - Base class for interactive interfaces
=head1 VERSION
version 0.097
=head1 AUTHOR
Jeffrey Ryan Thalhammer <jeff@stratopan.com>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Jeffrey Ryan Thalhammer.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|