perl_mlb
view release on metacpan or search on metacpan
ExtUtils/TODO view on Meta::CPAN
Give typemap location its own macro.
Merge MM_VMS->tool_xsubpp
Initialize PERL_SRC to '' instead of leaving undef when outside the source
tree
Reinstate HTMLification to use the new HTML Config info.
split manifypods target into more generic docifypods target which depends on
manifypods
Add target to generate native Win32 help files (or whatever Win32 likes
to use for help files these days)
Add target to generate native VMS help files.
On VMS, write PM_FILTERs to a temp file and run from there avoiding command
line lengths. Worth the trouble given the Unixy nature of PM_FILTER?
File/Spec/OS2.pm view on Meta::CPAN
$directory = $2;
$file = $3;
}
return ($volume,$directory,$file);
}
sub splitdir {
my ($self,$directories) = @_ ;
split m|[\\/]|, $directories, -1;
}
sub catpath {
my ($self,$volume,$directory,$file) = @_;
# If it's UNC, make sure the glue separator is there, reusing
# whatever separator is first in the $volume
$volume .= $1
if ( $volume =~ m@^([\\/])[\\/][^\\/]+[\\/][^\\/]+\Z(?!\n)@s &&
File/Spec/Unix.pm view on Meta::CPAN
File::Spec->splitdir( "/a/b//c/" );
Yields:
( '', 'a', 'b', '', 'c', '' )
=cut
sub splitdir {
return split m|/|, $_[1], -1; # Preserve trailing fields
}
=item catpath()
Takes volume, directory and file portions and returns an entire path. Under
Unix, $volume is ignored, and directory and file are concatenated. A '/' is
inserted if needed (though if the directory portion doesn't start with
'/' it is not added). On other OSs, $volume is significant.
Locale/Maketext.pm view on Meta::CPAN
$base_class = ref($base_class) || $base_class;
# Complain if they use __PACKAGE__ as a project base class?
unless(@languages) { # Calling with no args is magical! wooo, magic!
if(length( $ENV{'REQUEST_METHOD'} || '' )) { # I'm a CGI
@languages = $base_class->_http_accept_langs;
# it's off in its own routine because it's complicated
} else { # Not running as a CGI: try to puzzle out from the environment
if(length( $ENV{'LANG'} || '' )) {
push @languages, split m/[,:]/, $ENV{'LANG'};
# LANG can be only /one/ locale as far as I know, but what the hey.
}
if(length( $ENV{'LANGUAGE'} || '' )) {
push @languages, split m/[,:]/, $ENV{'LANGUAGE'};
}
print "Noting ENV LANG ", join(',', @languages),"\n" if DEBUG;
# Those are really locale IDs, but they get xlated a few lines down.
if(&_try_use('Win32::Locale')) {
# If we have that module installed...
push @languages, Win32::Locale::get_language()
if defined &Win32::Locale::get_language;
}
}
Net/servent.pm view on Meta::CPAN
pass the C<use> an empty import list, and then access
function functions with their full qualified names.
On the other hand, the built-ins are still available
via the C<CORE::> pseudo-package.
=head1 EXAMPLES
use Net::servent qw(:FIELDS);
while (@ARGV) {
my ($service, $proto) = ((split m!/!, shift), 'tcp');
my $valet = getserv($service, $proto);
unless ($valet) {
warn "$0: No service: $service/$proto\n"
next;
}
printf "service $service/$proto is port %d\n", $valet->port;
print "alias are @s_aliases\n" if @s_aliases;
}
=head1 NOTE
$$self{ITEMS} = 0;
$self->output ($$self{INDENT} > 0 ? ".Sp\n" : ".PP\n")
if $$self{NEEDSPACE};
}
# Output any pending index entries, and optionally an index entry given as an
# argument. Support multiple index entries in X<> separated by slashes, and
# strip special escapes from index entries.
sub outindex {
my ($self, $section, $index) = @_;
my @entries = map { split m%\s*/\s*% } @{ $$self{INDEX} };
return unless ($section || @entries);
$$self{INDEX} = [];
my @output;
if (@entries) {
push (@output, [ 'Xref', join (' ', @entries) ]);
}
if ($section) {
$index =~ s/\\-/-/g;
$index =~ s/\\(?:s-?\d|.\(..|.)//g;
push (@output, [ $section, $index ]);
Pod/Perldoc.pm view on Meta::CPAN
warn "\"$value\" isn't a good formatter option name. I'm ignoring it!\n";
}
return;
}
sub opt_M_with { # specify formatter class name(s)
my($self, $classes) = @_;
return unless defined $classes and length $classes;
DEBUG > 4 and print "Considering new formatter classes -M$classes\n";
my @classes_to_add;
foreach my $classname (split m/[,;]+/s, $classes) {
next unless $classname =~ m/\S/;
if( $classname =~ m/^(\w+(::\w+)+)$/s ) {
# A mildly restrictive concept of what modulenames are valid.
push @classes_to_add, $1; # untaint
} else {
warn "\"$classname\" isn't a valid classname. Ignoring.\n";
}
}
unshift @{ $self->{'formatter_classes'} }, @classes_to_add;
os2/B/Deparse.pm view on Meta::CPAN
# - print doubled rv2gv (a bug) as `*{*GV}' instead of illegal `**GV'
# - added semicolons at the ends of blocks
# - added -l `#line' declaration option -- fixes cmd/subval.t 27,28
# Changes between 0.56 and 0.561:
# - fixed multiply-declared my var in pp_truncate (thanks to Sarathy)
# - used new B.pm symbolic constants (done by Nick Ing-Simmons)
# Changes between 0.561 and 0.57:
# - stylistic changes to symbolic constant stuff
# - handled scope in s///e replacement code
# - added unquote option for expanding "" into concats, etc.
# - split method and proto parts of pp_entersub into separate functions
# - various minor cleanups
# Changes after 0.57:
# - added parens in \&foo (patch by Albert Dvornik)
# Changes between 0.57 and 0.58:
# - fixed `0' statements that weren't being printed
# - added methods for use from other programs
# (based on patches from James Duncan and Hugo van der Sanden)
# - added -si and -sT to control indenting (also based on a patch from Hugo)
# - added -sv to print something else instead of '???'
# - preliminary version of utf8 tr/// handling
( run in 0.859 second using v1.01-cache-2.11-cpan-71847e10f99 )