ch07.016_best

来自「Perl Best Practices the source code」· 016_BEST 代码 · 共 48 行

016_BEST
48
字号
################################################################################   Code fragment (Recommended) from Chapter 7 of "Perl Best Practices"    ####     Copyright (c) O'Reilly & Associates, 2005. All Rights Reserved.      ####  See: http://www.oreilly.com/pub/a/oreilly/ask_tim/2001/codepolicy.html  ################################################################################# Standard modules...use strict;use warnings;use IO::Prompt;use Carp;use English qw( -no_match_vars );use Data::Alias;use Readonly;Readonly my $EMPTY_STR => q{};my $raw;my @perl5pats;sub addarray_internal {    my ($var_name, $needs_quotemeta) = @_;     # Record original...    $raw .= $var_name;     # Build meta-quoting code, if required...    my $quotemeta = $needs_quotemeta ? 'map {quotemeta $_}'                                     : $EMPTY_STR                                     ;     # Expand elements of variable, conjoin with ORs...    my $perl5pat         = qq{(??{join q{|}, $quotemeta \@{$var_name}})};     # Insert debugging code if requested...    my $type = length $quotemeta ? 'literal' : 'pattern';    debug_now("Adding $var_name (as $type)");    add_debug_mesg("Trying $var_name (as $type)");     # Add back-translation...    push @perl5pats, $perl5pat;     return;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?