ApR |I32 |is_lvalue_sub
: Used in cop.h
XopR |I32 |was_lvalue_sub
-AMpPR |U32 |to_uni_upper_lc|U32 c
-AMpPR |U32 |to_uni_title_lc|U32 c
-AMpPR |U32 |to_uni_lower_lc|U32 c
+ADMpPR |U32 |to_uni_upper_lc|U32 c
+ADMpPR |U32 |to_uni_title_lc|U32 c
+ADMpPR |U32 |to_uni_lower_lc|U32 c
AMpPR |bool |is_uni_alnum |UV c
AMpPR |bool |is_uni_alnumc |UV c
AMpPR |bool |is_uni_idfirst |UV c
AMpPR |bool |is_uni_alpha |UV c
-AMpPR |bool |is_uni_ascii |UV c
-AMpPR |bool |is_uni_blank |UV c
-AMpPR |bool |is_uni_space |UV c
-AMpPR |bool |is_uni_cntrl |UV c
+ADMpPR |bool |is_uni_ascii |UV c
+ADMpPR |bool |is_uni_blank |UV c
+ADMpPR |bool |is_uni_space |UV c
+ADMpPR |bool |is_uni_cntrl |UV c
AMpPR |bool |is_uni_graph |UV c
AMpPR |bool |is_uni_digit |UV c
AMpPR |bool |is_uni_upper |UV c
AMpPR |bool |is_uni_lower |UV c
AMpPR |bool |is_uni_print |UV c
AMpPR |bool |is_uni_punct |UV c
-AMpPR |bool |is_uni_xdigit |UV c
+ADMpPR |bool |is_uni_xdigit |UV c
AMp |UV |to_uni_upper |UV c|NN U8 *p|NN STRLEN *lenp
AMp |UV |to_uni_title |UV c|NN U8 *p|NN STRLEN *lenp
#ifdef PERL_IN_UTF8_C
AMp |UV |_to_uni_fold_flags|UV c|NN U8 *p|NN STRLEN *lenp|const U8 flags
AMpPR |bool |is_uni_alnum_lc|UV c
AMpPR |bool |is_uni_alnumc_lc|UV c
-AMpPR |bool |is_uni_idfirst_lc|UV c
+ADMpPR |bool |is_uni_idfirst_lc|UV c
AMpR |bool |_is_uni_perl_idstart|UV c
AMpPR |bool |is_uni_alpha_lc|UV c
-AMpPR |bool |is_uni_ascii_lc|UV c
-AMpPR |bool |is_uni_space_lc|UV c
-AMpPR |bool |is_uni_blank_lc|UV c
-AMpPR |bool |is_uni_cntrl_lc|UV c
+ADMpPR |bool |is_uni_ascii_lc|UV c
+ADMpPR |bool |is_uni_space_lc|UV c
+ADMpPR |bool |is_uni_blank_lc|UV c
+ADMpPR |bool |is_uni_cntrl_lc|UV c
AMpPR |bool |is_uni_graph_lc|UV c
AMpPR |bool |is_uni_digit_lc|UV c
AMpPR |bool |is_uni_upper_lc|UV c
AMpPR |bool |is_uni_lower_lc|UV c
AMpPR |bool |is_uni_print_lc|UV c
AMpPR |bool |is_uni_punct_lc|UV c
-AMpPR |bool |is_uni_xdigit_lc|UV c
+ADMpPR |bool |is_uni_xdigit_lc|UV c
Anpd |bool |is_ascii_string|NN const U8 *s|STRLEN len
AnpdD |STRLEN |is_utf8_char |NN const U8 *s
Anpd |STRLEN |is_utf8_char_buf|NN const U8 *buf|NN const U8 *buf_end
Anpd |bool |is_utf8_string_loclen|NN const U8 *s|STRLEN len|NULLOK const U8 **ep|NULLOK STRLEN *el
AMpR |bool |is_utf8_alnum |NN const U8 *p
AMpR |bool |is_utf8_alnumc |NN const U8 *p
-AMpR |bool |is_utf8_idfirst|NN const U8 *p
-AMpR |bool |is_utf8_xidfirst|NN const U8 *p
+ADMpR |bool |is_utf8_idfirst|NN const U8 *p
+ADMpR |bool |is_utf8_xidfirst|NN const U8 *p
AMpR |bool |_is_utf8_perl_idstart|NN const U8 *p
-AMpR |bool |is_utf8_idcont |NN const U8 *p
-AMpR |bool |is_utf8_xidcont |NN const U8 *p
+ADMpR |bool |is_utf8_idcont |NN const U8 *p
+ADMpR |bool |is_utf8_xidcont |NN const U8 *p
AMpR |bool |is_utf8_alpha |NN const U8 *p
-AMpR |bool |is_utf8_ascii |NN const U8 *p
-AMpR |bool |is_utf8_blank |NN const U8 *p
-AMpR |bool |is_utf8_space |NN const U8 *p
-AMpR |bool |is_utf8_perl_space |NN const U8 *p
-AMpR |bool |is_utf8_perl_word |NN const U8 *p
-AMpR |bool |is_utf8_cntrl |NN const U8 *p
+ADMpR |bool |is_utf8_ascii |NN const U8 *p
+ADMpR |bool |is_utf8_blank |NN const U8 *p
+ADMpR |bool |is_utf8_space |NN const U8 *p
+ADMpR |bool |is_utf8_perl_space |NN const U8 *p
+ADMpR |bool |is_utf8_perl_word |NN const U8 *p
+ADMpR |bool |is_utf8_cntrl |NN const U8 *p
AMpR |bool |is_utf8_digit |NN const U8 *p
-AMpR |bool |is_utf8_posix_digit |NN const U8 *p
+ADMpR |bool |is_utf8_posix_digit |NN const U8 *p
AMpR |bool |is_utf8_graph |NN const U8 *p
AMpR |bool |is_utf8_upper |NN const U8 *p
AMpR |bool |is_utf8_lower |NN const U8 *p
AMpR |bool |is_utf8_print |NN const U8 *p
AMpR |bool |is_utf8_punct |NN const U8 *p
-AMpR |bool |is_utf8_xdigit |NN const U8 *p
+ADMpR |bool |is_utf8_xdigit |NN const U8 *p
AMpR |bool |is_utf8_mark |NN const U8 *p
: Used in perly.y
p |OP* |jmaybe |NN OP *o
[ List each deprecation as a =head2 entry ]
+=head2 Various XS-callable functions are now deprecated
+
+The following functions will be removed from a future version of Perl,
+and should not be used. With participating C compilers (e.g., gcc),
+compiling any file that uses any of these will generate a warning.
+These were not intended for public use; there are equivalent, faster,
+macros for most of them. See L<perlapi/Character classes>:
+C<is_uni_ascii>,
+C<is_uni_ascii_lc>,
+C<is_uni_blank>,
+C<is_uni_blank_lc>,
+C<is_uni_cntrl>,
+C<is_uni_cntrl_lc>,
+C<is_uni_idfirst_lc>,
+C<is_uni_space>,
+C<is_uni_space_lc>,
+C<is_uni_xdigit>,
+C<is_uni_xdigit_lc>,
+C<is_utf8_ascii>,
+C<is_utf8_blank>,
+C<is_utf8_cntrl>,
+C<is_utf8_idcont>,
+C<is_utf8_idfirst>,
+C<is_utf8_perl_space>,
+C<is_utf8_perl_word>,
+C<is_utf8_posix_digit>,
+C<is_utf8_space>,
+C<is_utf8_xdigit>.
+C<is_utf8_xidcont>,
+C<is_utf8_xidfirst>,
+C<to_uni_lower_lc>,
+C<to_uni_title_lc>,
+and
+C<to_uni_upper_lc>.
+
=head1 Performance Enhancements
XXX Changes which enhance performance without changing behaviour go here.
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_ascii(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_ascii_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_blank(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_blank_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_cntrl(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_cntrl_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_idfirst_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_space(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_space_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_xdigit(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
PERL_CALLCONV bool Perl_is_uni_xdigit_lc(pTHX_ UV c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
assert(p)
PERL_CALLCONV bool Perl_is_utf8_ascii(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_ASCII \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_blank(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_BLANK \
assert(buf); assert(buf_end)
PERL_CALLCONV bool Perl_is_utf8_cntrl(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_CNTRL \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_idcont(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_IDCONT \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_idfirst(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_IDFIRST \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_perl_space(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_PERL_SPACE \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_perl_word(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_PERL_WORD \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_posix_digit(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_POSIX_DIGIT \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_space(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_SPACE \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_xdigit(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_XDIGIT \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_xidcont(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_XIDCONT \
assert(p)
PERL_CALLCONV bool Perl_is_utf8_xidfirst(pTHX_ const U8 *p)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_IS_UTF8_XIDFIRST \
assert(p); assert(lenp)
PERL_CALLCONV U32 Perl_to_uni_lower_lc(pTHX_ U32 c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
assert(p); assert(lenp)
PERL_CALLCONV U32 Perl_to_uni_title_lc(pTHX_ U32 c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
assert(p); assert(lenp)
PERL_CALLCONV U32 Perl_to_uni_upper_lc(pTHX_ U32 c)
+ __attribute__deprecated__
__attribute__warn_unused_result__
__attribute__pure__;
return is_utf8_alnumc(tmpbuf);
}
+bool /* Internal function so we can deprecate the external one, and call
+ this one from other deprecated functions in this file */
+S_is_utf8_idfirst(pTHX_ const U8 *p)
+{
+ dVAR;
+
+ if (*p == '_')
+ return TRUE;
+ /* is_utf8_idstart would be more logical. */
+ return is_utf8_common(p, &PL_utf8_idstart, "IdStart");
+}
+
bool
Perl_is_uni_idfirst(pTHX_ UV c)
{
U8 tmpbuf[UTF8_MAXBYTES+1];
uvchr_to_utf8(tmpbuf, c);
- return is_utf8_idfirst(tmpbuf);
+ return S_is_utf8_idfirst(aTHX_ tmpbuf);
}
bool
if (c < 256) {
return isBLANK_LC(UNI_TO_NATIVE(c));
}
- return is_uni_blank(c);
+ return isBLANK_uni(c);
}
bool
if (c < 256) {
return isSPACE_LC(UNI_TO_NATIVE(c));
}
- return is_uni_space(c);
+ return isSPACE_uni(c);
}
bool
if (c < 256) {
return isCNTRL_LC(UNI_TO_NATIVE(c));
}
- return is_uni_cntrl(c);
+ return 0;
}
bool
if (c < 256) {
return isXDIGIT_LC(UNI_TO_NATIVE(c));
}
- return is_uni_xdigit(c);
+ return isXDIGIT_uni(c);
}
U32
PERL_ARGS_ASSERT_IS_UTF8_IDFIRST;
- if (*p == '_')
- return TRUE;
- /* is_utf8_idstart would be more logical. */
- return is_utf8_common(p, &PL_utf8_idstart, "IdStart");
+ return S_is_utf8_idfirst(aTHX_ p);
}
bool