PPIx::Regexp::Token::GroupType::Modifier - Represent the modifiers in a modifier group.


PPIx-Regexp documentation Contained in the PPIx-Regexp distribution.

Index


Code Index:

NAME

Top

PPIx::Regexp::Token::GroupType::Modifier - Represent the modifiers in a modifier group.

SYNOPSIS

Top

 use PPIx::Regexp::Dumper;
 PPIx::Regexp::Dumper->new( 'qr{(?i:foo)}smx' )
     ->print();

INHERITANCE

Top

PPIx::Regexp::Token::GroupType::Modifier is a PPIx::Regexp::Token::GroupType and a PPIx::Regexp::Token::Modifier.

PPIx::Regexp::Token::GroupType::Modifier has no descendants.

DESCRIPTION

Top

This class represents the modifiers in a modifier group. The useful functionality comes from PPIx::Regexp::Token::Modifier.

METHODS

Top

This class provides no public methods beyond those provided by its superclasses.

SUPPORT

Top

Support is by the author. Please file bug reports at http://rt.cpan.org, or in electronic mail to the author.

AUTHOR

Top

Thomas R. Wyant, III wyant at cpan dot org

COPYRIGHT AND LICENSE

Top


PPIx-Regexp documentation Contained in the PPIx-Regexp distribution.
package PPIx::Regexp::Token::GroupType::Modifier;

use strict;
use warnings;

use base qw{ PPIx::Regexp::Token::Modifier PPIx::Regexp::Token::GroupType };

use PPIx::Regexp::Constant qw{ MINIMUM_PERL };

our $VERSION = '0.020';

{

    my %perl_version_introduced = (
	'?:'	=> MINIMUM_PERL,
    );

    sub perl_version_introduced {
	my ( $self ) = @_;
	my $content = $self->content();
	exists $perl_version_introduced{$content}
	    and return $perl_version_introduced{$content};
	my $ver = $self->SUPER::perl_version_introduced();
	$ver > 5.005 and return $ver;
	return '5.005';
    }

}

# Return true if the token can be quantified, and false otherwise
# sub can_be_quantified { return };

sub __PPIX_TOKENIZER__regexp {
    my ( $class, $tokenizer, $character, $char_type ) = @_;

    # Note that the optional escapes are because any of the
    # non-open-bracket punctuation characters might be our delimiter.
    my $accept;
    $accept = $tokenizer->find_regexp(
	qr{ \A \\? [?] [[:lower:]]* \\? -? [[:lower:]]* \\? : }smx )
	and return $accept;
    $accept = $tokenizer->find_regexp(
	qr{ \A \\? [?] \^ [[:lower:]]* \\? : }smx )
	and return $accept;

    return;
}

1;

__END__

# ex: set textwidth=72 :