summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2010-10-14 13:29:22 +0100
committerNicholas Clark <nick@ccl4.org>2010-10-14 14:34:28 +0100
commit8cf6f931c54936a38eedd3d17d5fa1d5af1b9009 (patch)
treed1454e028f6b92f0458daaf6522aac4117323a00 /lib
parent17b8ae88c658cb5fe05998ab824e6c02cfba7dcd (diff)
downloadperl-8cf6f931c54936a38eedd3d17d5fa1d5af1b9009.tar.gz
Convert lib/Tie/Hash/NamedCapture.pm to an XS module in ext/
Initially move only Tie::Hash::NamedCapture::flags from universal.c to it.
Diffstat (limited to 'lib')
-rw-r--r--lib/Tie/Hash/NamedCapture.pm62
1 files changed, 0 insertions, 62 deletions
diff --git a/lib/Tie/Hash/NamedCapture.pm b/lib/Tie/Hash/NamedCapture.pm
deleted file mode 100644
index 58ae743d87..0000000000
--- a/lib/Tie/Hash/NamedCapture.pm
+++ /dev/null
@@ -1,62 +0,0 @@
-package Tie::Hash::NamedCapture;
-
-our $VERSION = "0.06";
-
-# The real meat implemented in XS in universal.c in the core, but this
-# method was left behind because gv.c expects a Purl-Perl method in
-# this package when it loads the tie magic for %+ and %-
-
-my ($one, $all) = Tie::Hash::NamedCapture::flags();
-
-sub TIEHASH {
- my ($pkg, %arg) = @_;
- my $flag = $arg{all} ? $all : $one;
- bless \$flag => $pkg;
-}
-
-tie %+, __PACKAGE__;
-tie %-, __PACKAGE__, all => 1;
-
-1;
-
-__END__
-
-=head1 NAME
-
-Tie::Hash::NamedCapture - Named regexp capture buffers
-
-=head1 SYNOPSIS
-
- tie my %hash, "Tie::Hash::NamedCapture";
- # %hash now behaves like %+
-
- tie my %hash, "Tie::Hash::NamedCapture", all => 1;
- # %hash now access buffers from regexp in $qr like %-
-
-=head1 DESCRIPTION
-
-This module is used to implement the special hashes C<%+> and C<%->, but it
-can be used to tie other variables as you choose.
-
-When the C<all> parameter is provided, then the tied hash elements will be
-array refs listing the contents of each capture buffer whose name is the
-same as the associated hash key. If none of these buffers were involved in
-the match, the contents of that array ref will be as many C<undef> values
-as there are capture buffers with that name. In other words, the tied hash
-will behave as C<%->.
-
-When the C<all> parameter is omitted or false, then the tied hash elements
-will be the contents of the leftmost defined buffer with the name of the
-associated hash key. In other words, the tied hash will behave as
-C<%+>.
-
-The keys of C<%->-like hashes correspond to all buffer names found in the
-regular expression; the keys of C<%+>-like hashes list only the names of
-buffers that have captured (and that are thus associated to defined values).
-
-=head1 SEE ALSO
-
-L<perlreapi>, L<re>, L<perlmodlib/Pragmatic Modules>, L<perlvar/"%+">,
-L<perlvar/"%-">.
-
-=cut