1PPIx::Regexp::Constant(U3s)er Contributed Perl DocumentatPiPoInx::Regexp::Constant(3)
2
3
4
6 PPIx::Regexp::Constant - Constants for the PPIx::Regexp system
7
9 use PPIx::Regexp::Constant qw{ TOKEN_UNKNOWN }
10 print "An unknown token's class is TOKEN_UNKNOWN\n";
11
13 "PPIx::Regexp::Constant" is an Exporter.
14
15 "PPIx::Regexp::Constant" has no descendants.
16
18 This module defines manifest constants for use by the various
19 "PPIx::Regexp" modules. These constants are to be considered private to
20 the "PPIx::Regexp" system, and the author reserves the right to change
21 them without notice.
22
23 This module exports the following manifest constants:
24
25 @CARP_NOT
26 This global variable contains the names of all modules in the package.
27
28 ARRAY_REF
29 This is the result of "ref []".
30
31 CODE_REF
32 This is the result of "ref sub {}".
33
34 COOKIE_CLASS
35 The name of the cookie used to control the construction of character
36 classes.
37
38 This cookie is set in PPIx::Regexp::Token::Structure when the left
39 square bracket is encountered, and cleared in the same module when a
40 right square bracket is encountered.
41
42 COOKIE_LOOKAROUND_ASSERTION
43 The name of the cookie used to control the parsing of zero-width
44 assertions.
45
46 This cookie is set in PPIx::Regexp::Token::GroupType::Assertion, and it
47 persists until the end of the assertion.
48
49 COOKIE_QUANT
50 The name of the cookie used to control the construction of curly
51 bracketed quantifiers.
52
53 This cookie is set in PPIx::Regexp::Token::Structure when a left curly
54 bracket is encountered. It requests itself to be cleared on
55 encountering anything other than a literal comma, a literal digit, or
56 an interpolation, or if more than one comma is encountered. If it
57 survives until PPIx::Regexp::Token::Structure processes the right curly
58 bracket, it is cleared there.
59
60 COOKIE_QUOTE
61 The name of the cookie used to control the parsing of "\Q ... \E"
62 quoted literals.
63
64 This cookie is set in PPIx::Regexp::Token::Control when a "\Q" is
65 encountered, and it persists until the next "\E".
66
67 COOKIE_REGEX_SET
68 The name of the cookie used to control regular expression sets.
69
70 FALSE
71 A false value. The author makes no commitment what the exact value is,
72 only that Boolean operations will see it as false.
73
74 HASH_REF
75 This is the result of "ref {}".
76
77 INFINITY
78 This is the IEEE 754 value of "Inf" if that can be generated, or an
79 opaque overloaded object if not. Because the object does not (and I
80 think can not) implement the complete behavior of IEEE 754 "Inf", this
81 manifest constant should only be used for stringification and numeric
82 comparison. Be aware that the numification of the object has to be the
83 same as its stringification to keep looks_like_number() happy. Caveat
84 coder.
85
86 LITERAL_LEFT_CURLY_ALLOWED
87 The Perl version at which allowed unescaped literal left curly brackets
88 were removed. This may make more sense if I mention that its value is
89 "undef".
90
91 LITERAL_LEFT_CURLY_REMOVED_PHASE_1
92 The Perl version at which the first phase of unescaped literal left
93 curly bracket removal took place. The value of this constant is
94 '5.025001'.
95
96 LITERAL_LEFT_CURLY_REMOVED_PHASE_2
97 The Perl version at which the second phase of unescaped literal left
98 curly bracket removal took place. The value of this constant is
99 "undef", but it will be assigned a value when the timing of the second
100 phase is known.
101
102 LITERAL_LEFT_CURLY_REMOVED_PHASE_3
103 The Perl version at which the third phase of unescaped literal left
104 curly bracket removal took place. This is the removal of curly brackets
105 after a left parenthesis. The value of this constant is "undef", but it
106 will be assigned a value when the timing of the second phase is known.
107
108 MINIMUM_PERL
109 The minimum version of Perl understood by this parser, as a float. It
110 is currently set to 5.000, since that is the minimum version of Perl
111 accessible to the author.
112
113 MODIFIER_GROUP_MATCH_SEMANTICS
114 The name of the PPIx::Regexp::Token::Modifier group used to control
115 match semantics.
116
117 MSG_LOOK_BEHIND_TOO_LONG
118 An appropriate error message for an unknown entity created from a
119 quantifier which would make a look-behind assertion too long. This is
120 cribbed verbatim from the Perl error message.
121
122 MSG_PROHIBITED_BY_STRICT
123 An appropriate error message for an unknown entity created because
124 'strict' was in effect. This is rank ad-hocery, and more than usually
125 subject to being changed, without any notice whatsoever. Caveat user.
126
127 NODE_UNKNOWN
128 The name of the class that represents an unknown node. That is,
129 PPIx::Regexp::Node::Unknown.
130
131 RE_CAPTURE_NAME
132 A string representation of a regular expression that matches the name
133 of a named capture buffer.
134
135 REGEXP_REF
136 This is the result of "ref qr{}".
137
138 SCALAR_REF
139 This is the result of "ref \0".
140
141 STRUCTURE_UNKNOWN
142 The name of the class that represents an unknown structure. That is,
143 PPIx::Regexp::Structure::Unknown.
144
145 SUFFICIENT_UTF8_SUPPORT_FOR_WEIRD_DELIMITERS
146 A Boolean which is true if the running version of Perl has UTF-8
147 support sufficient for our purposes.
148
149 Currently that means 5.8.3 or greater, with the specific requirements
150 being "use open qw{ :std :encoding(utf-8) }", "/\p{Mark}/", and the
151 ability to parse things like "qr \N{U+FFFF}foo\N{U+FFFF}".
152
153 TOKEN_LITERAL
154 The name of the class that represents a literal token. That is,
155 PPIx::Regexp::Token::Literal.
156
157 TOKEN_UNKNOWN
158 The name of the class that represents the unknown token. That is,
159 PPIx::Regexp::Token::Unknown.
160
161 TRUE
162 A true value. The author makes no commitment what the exact value is,
163 only that Boolean operations will see it as true.
164
165 VARIABLE_LENGTH_LOOK_BEHIND_INTRODUCED
166 The version in which variable-length look-behinds were introduced.
167 Currently this is '5.029009', and implies the limited lookbehind
168 introduced at or about that version.
169
171 Support is by the author. Please file bug reports at
172 <https://rt.cpan.org/Public/Dist/Display.html?Name=PPIx-Regexp>,
173 <https://github.com/trwyant/perl-PPIx-Regexp/issues>, or in electronic
174 mail to the author.
175
177 Thomas R. Wyant, III wyant at cpan dot org
178
180 Copyright (C) 2009-2023 by Thomas R. Wyant, III
181
182 This program is free software; you can redistribute it and/or modify it
183 under the same terms as Perl 5.10.0. For more details, see the full
184 text of the licenses in the directory LICENSES.
185
186 This program is distributed in the hope that it will be useful, but
187 without any warranty; without even the implied warranty of
188 merchantability or fitness for a particular purpose.
189
190
191
192perl v5.38.0 2023-07-21 PPIx::Regexp::Constant(3)