File Coverage

blib/lib/PPIx/Regexp/Token/CharClass/POSIX/Unknown.pm
Criterion Covered Total %
statement 14 16 87.5
branch n/a
condition n/a
subroutine 5 7 71.4
pod 1 1 100.0
total 20 24 83.3


line stmt bran cond sub pod time code
1             package PPIx::Regexp::Token::CharClass::POSIX::Unknown;
2              
3 9     9   181 use 5.006;
  9         28  
4              
5 9     9   38 use strict;
  9         13  
  9         197  
6 9     9   29 use warnings;
  9         11  
  9         445  
7              
8 9     9   48 use base qw{ PPIx::Regexp::Token::CharClass::POSIX };
  9         24  
  9         875  
9              
10 9     9   65 use PPIx::Regexp::Constant qw{ MINIMUM_PERL @CARP_NOT };
  9         16  
  9         1313  
11              
12             our $VERSION = '0.091';
13              
14             sub perl_version_introduced {
15             # my ( $self ) = @_;
16 0     0 1   return MINIMUM_PERL;
17             }
18              
19             # Note that these guys are recognized by PPIx::Regexp::CharClass::POSIX,
20             # and if one of them becomes supported that is where the change needs to
21             # be made.
22              
23             # This is the handiest way to make this object represent a parse error.
24             sub __PPIX_LEXER__finalize {
25 0     0     return 1;
26             }
27              
28             1;
29              
30             __END__
31              
32             =head1 NAME
33              
34             PPIx::Regexp::Token::CharClass::POSIX::Unknown - Represent an unknown or unsupported POSIX character class
35              
36             =head1 SYNOPSIS
37              
38             use PPIx::Regexp::Dumper;
39             PPIx::Regexp::Dumper->new( 'qr{ [[=a=]] }smx' )
40             -print()
41              
42             =head1 INHERITANCE
43              
44             C<PPIx::Regexp::Token::CharClass::POSIX::Unknown> is a
45             L<PPIx::Regexp::Token::CharClass::POSIX|PPIx::Regexp::Token::CharClass::POSIX>.
46              
47             C<PPIx::Regexp::Token::CharClass::POSIX::Unknown> has no descendants.
48              
49             =head1 DESCRIPTION
50              
51             This class represents POSIX character classes which are recognized but
52             not supported by Perl. At the moment this means C<[=a=]> (equivalence
53             classes), and C<[.ch.]> (collating symbols).
54              
55             B<Caveat:> If any of these becomes supported by Perl in the future, they
56             will become represented as
57             L<PPIx::Regexp::Token::CharClass::POSIX|PPIx::Regexp::Token::CharClass::POSIX>
58             objects, with an appropriate C<perl_version_introduced()> value.
59              
60             =head1 METHODS
61              
62             This class provides no public methods beyond those provided by its
63             superclass.
64              
65             =head1 SUPPORT
66              
67             Support is by the author. Please file bug reports at
68             L<https://rt.cpan.org/Public/Dist/Display.html?Name=PPIx-Regexp>,
69             L<https://github.com/trwyant/perl-PPIx-Regexp/issues>, or in
70             electronic mail to the author.
71              
72             =head1 AUTHOR
73              
74             Thomas R. Wyant, III F<wyant at cpan dot org>
75              
76             =head1 COPYRIGHT AND LICENSE
77              
78             Copyright (C) 2010-2023, 2025 by Thomas R. Wyant, III
79              
80             This program is free software; you can redistribute it and/or modify it
81             under the same terms as Perl 5.10.0. For more details, see the full text
82             of the licenses in the directory LICENSES.
83              
84             This program is distributed in the hope that it will be useful, but
85             without any warranty; without even the implied warranty of
86             merchantability or fitness for a particular purpose.
87              
88             =cut
89              
90             # ex: set textwidth=72 :