File Coverage

blib/lib/DDG/Meta/Helper.pm
Criterion Covered Total %
statement 30 32 93.7
branch 5 6 83.3
condition n/a
subroutine 9 11 81.8
pod 0 1 0.0
total 44 50 88.0


line stmt bran cond sub pod time code
1             package DDG::Meta::Helper;
2             our $AUTHORITY = 'cpan:DDG';
3             # ABSTRACT: Helper functions for easy access to important functions
4             $DDG::Meta::Helper::VERSION = '1018';
5 11     11   82 use strict;
  11         33  
  11         451  
6 11     11   72 use warnings;
  11         25  
  11         380  
7 11     11   77 use Carp qw( croak );
  11         29  
  11         869  
8 11     11   85 use Package::Stash;
  11         27  
  11         323  
9 11     11   4382 use HTML::Entities;
  11         74636  
  11         1328  
10 11     11   132 use URI::Escape;
  11         30  
  11         3228  
11              
12              
13             my %applied;
14              
15             sub apply_keywords {
16 35     35 0 119 my ( $class, $target ) = @_;
17              
18 35 50       149 return if exists $applied{$target};
19 35         90 $applied{$target} = undef;
20              
21 35         366 my $stash = Package::Stash->new($target);
22              
23              
24 35 100   5   520 $stash->add_symbol('&html_enc', sub { return (wantarray) ? map { encode_entities($_) } @_ : encode_entities(join '', @_) });
  5         7732  
  5         52  
25              
26              
27 35 100   5   334 $stash->add_symbol('&uri_esc', sub { return (wantarray) ? map { uri_escape($_) } @_ : uri_escape(join '', @_) });
  5         9760  
  5         48  
28              
29              
30 35     0   260 $stash->add_symbol('&true', sub { 1 });
  0         0  
31 35     0   298 $stash->add_symbol('&false', sub { 0 });
  0            
32             }
33              
34             1;
35              
36             __END__