| Perl-Critic documentation | Contained in the Perl-Critic distribution. |
Perl::Critic::Utils::POD::ParseInteriorSequence - Pod::Parser subclass to find all interior sequences.
use Perl::Critic::Utils::POD::ParseInteriorSequence;
my $parser = Perl::Critic::Utils::POD::ParseInteriorSequence->new();
my @sequences = $parser->parse_interior_sequences(
$pod->content() );
Provides a means to extract interior sequences from POD text.
This module is considered to be private to Perl::Critic. It can be changed or removed without notice.
get_interior_sequences( $pod_text )Returns an array of all the interior sequences from a given chunk of POD
text, represented as Pod::InteriorSequence objects.
The POD text is assumed to begin with a POD command (e.g. =pod).
interior_sequence( $seq_cmd, $seq_arg, $pod_seq )Overrides the parent's method of the same name. Stashes the $pod_seq
argument, which is a Pod::InteriorSequence object, so that
get_interior_sequences() has access to it.
Thomas R. Wyant, III wyant at cpan dot org
Copyright (c) 2011 Thomas R. Wyant, III
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.
| Perl-Critic documentation | Contained in the Perl-Critic distribution. |
############################################################################## # $URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/distributions/Perl-Critic/lib/Perl/Critic/Utils/POD/ParseInteriorSequence.pm $ # $Date: 2011-05-15 16:34:46 -0500 (Sun, 15 May 2011) $ # $Author: clonezone $ # $Revision: 4078 $ ############################################################################## package Perl::Critic::Utils::POD::ParseInteriorSequence; use 5.006001; use strict; use warnings; use base qw{ Pod::Parser }; use IO::String; our $VERSION = '1.116'; #----------------------------------------------------------------------------- sub interior_sequence { my ( $self, $seq_cmd, $seq_arg, $pod_seq ) = @_; push @{ $self->{+__PACKAGE__}{interior_sequence} ||= [] }, $pod_seq; return $self->SUPER::interior_sequence( $seq_cmd, $seq_arg, $pod_seq ); } #----------------------------------------------------------------------------- sub get_interior_sequences { my ( $self, $pod ) = @_; $self->{+__PACKAGE__}{interior_sequence} = []; my $result; $self->parse_from_filehandle( IO::String->new( \$pod ), IO::String->new( \$result ) ); return @{ $self->{+__PACKAGE__}{interior_sequence} }; } #----------------------------------------------------------------------------- 1; __END__ #-----------------------------------------------------------------------------
# Local Variables: # mode: cperl # cperl-indent-level: 4 # fill-column: 78 # indent-tabs-mode: nil # c-indentation-style: bsd # End: # ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab shiftround :