summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2018-03-29 16:32:49 -0600
committerKarl Williamson <khw@cpan.org>2018-03-31 15:36:46 -0600
commitb74fe592196bcf9f41b2e13d774c2c6513a650df (patch)
tree9f90d065de465962410e8f0c88529939b7ce22a7 /proto.h
parentd2aadf62cbb988487f162551df71b8a36cb54fb6 (diff)
downloadperl-b74fe592196bcf9f41b2e13d774c2c6513a650df.tar.gz
Use compiled-in C structure for inverted case folds
This commit changes to use the C data structures generated by the previous commit to compute what characters fold to a given one. This is used to find out what things should match under /i. This now avoids the expensive start up cost of switching to perl utf8_heavy.pl, loading a file from disk, and constructing a hash from it.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/proto.h b/proto.h
index 82ab3ebe91..ebead79cc2 100644
--- a/proto.h
+++ b/proto.h
@@ -62,6 +62,11 @@ PERL_CALLCONV char * Perl__byte_dump_string(pTHX_ const U8 * const start, const
PERL_CALLCONV void Perl__force_out_malformed_utf8_message(pTHX_ const U8 *const p, const U8 * const e, const U32 flags, const bool die_here);
#define PERL_ARGS_ASSERT__FORCE_OUT_MALFORMED_UTF8_MESSAGE \
assert(p); assert(e)
+PERL_CALLCONV Size_t Perl__inverse_folds(pTHX_ const UV cp, int * first_folds_to, const int ** remaining_folds_to)
+ __attribute__warn_unused_result__;
+#define PERL_ARGS_ASSERT__INVERSE_FOLDS \
+ assert(first_folds_to); assert(remaining_folds_to)
+
PERL_CALLCONV bool Perl__is_in_locale_category(pTHX_ const bool compiling, const int category);
PERL_CALLCONV bool Perl__is_uni_FOO(pTHX_ const U8 classnum, const UV c)
__attribute__warn_unused_result__;