/usr/lib64/perl5/CORE
NameSizeModeActions
av.h33200644editdlrm
bitcount.h8500644editdlrm
charclass_invlists.h9724770644editdlrm
config.h1675830644editdlrm
cop.h395360644editdlrm
cv.h120420644editdlrm
dosish.h55010644editdlrm
dquote_inline.h18430644editdlrm
ebcdic_tables.h298560644editdlrm
embed.h973510644editdlrm
embedvar.h189100644editdlrm
EXTERN.h17140644editdlrm
fakesdio.h32110644editdlrm
feature.h49150644editdlrm
form.h14630644editdlrm
git_version.h3570644editdlrm
gv.h107110644editdlrm
handy.h1233490644editdlrm
hv.h255710644editdlrm
hv_func.h134130644editdlrm
inline.h464840644editdlrm
INTERN.h12710644editdlrm
intrpvar.h294770644editdlrm
invlist_inline.h27500644editdlrm
iperlsys.h488060644editdlrm
keywords.h65870644editdlrm
l1_char_class_tab.h1269180644editdlrm
libperl.so21811440755editdlrm
malloc_ctl.h15120644editdlrm
metaconfig.h6740644editdlrm
mg.h30130644editdlrm
mg_data.h49240644editdlrm
mg_raw.h42570644editdlrm
mg_vtable.h93360644editdlrm
mydtrace.h16930644editdlrm
nostdio.h33920644editdlrm
op.h364190644editdlrm
opcode.h918870644editdlrm
opnames.h88360644editdlrm
op_reg_common.h59110644editdlrm
overload.h32760644editdlrm
pad.h172460644editdlrm
parser.h69140644editdlrm
patchlevel.h99360644editdlrm
perl.h2432370644editdlrm
perlapi.h58630644editdlrm
perldtrace.h33010644editdlrm
perlio.h94640644editdlrm
perliol.h137610644editdlrm
perlsdio.h5270644editdlrm
perlvars.h96900644editdlrm
perly.h43710644editdlrm
pp.h275770644editdlrm
pp_proto.h120860644editdlrm
proto.h2467620644editdlrm
reentr.h782700644editdlrm
regcharclass.h1445820644editdlrm
regcomp.h477960644editdlrm
regexp.h343790644editdlrm
regnodes.h358340644editdlrm
scope.h119050644editdlrm
sv.h842560644editdlrm
thread.h120130644editdlrm
time64.h15760644editdlrm
time64_config.h20300644editdlrm
uconfig.h1671290644editdlrm
unicode_constants.h79900644editdlrm
unixish.h51070644editdlrm
utf8.h591110644editdlrm
utfebcdic.h673020644editdlrm
util.h96000644editdlrm
uudmap.h9040644editdlrm
vutil.h74670644editdlrm
warnings.h78160644editdlrm
XSUB.h244470644editdlrm
Edit: /usr/lib64/perl5/CORE/invlist_inline.h (2750B)
/* invlist_inline.h * * Copyright (C) 2012 by Larry Wall and others * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. */ #if defined(PERL_IN_UTF8_C) || defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) /* An element is in an inversion list iff its index is even numbered: 0, 2, 4, * etc */ #define ELEMENT_RANGE_MATCHES_INVLIST(i) (! ((i) & 1)) #define PREV_RANGE_MATCHES_INVLIST(i) (! ELEMENT_RANGE_MATCHES_INVLIST(i)) /* This converts to/from our UVs to what the SV code is expecting: bytes. */ #define TO_INTERNAL_SIZE(x) ((x) * sizeof(UV)) #define FROM_INTERNAL_SIZE(x) ((x)/ sizeof(UV)) PERL_STATIC_INLINE bool* S_get_invlist_offset_addr(SV* invlist) { /* Return the address of the field that says whether the inversion list is * offset (it contains 1) or not (contains 0) */ PERL_ARGS_ASSERT_GET_INVLIST_OFFSET_ADDR; assert(SvTYPE(invlist) == SVt_INVLIST); return &(((XINVLIST*) SvANY(invlist))->is_offset); } PERL_STATIC_INLINE UV S__invlist_len(SV* const invlist) { /* Returns the current number of elements stored in the inversion list's * array */ PERL_ARGS_ASSERT__INVLIST_LEN; assert(SvTYPE(invlist) == SVt_INVLIST); return (SvCUR(invlist) == 0) ? 0 : FROM_INTERNAL_SIZE(SvCUR(invlist)) - *get_invlist_offset_addr(invlist); } PERL_STATIC_INLINE bool S__invlist_contains_cp(SV* const invlist, const UV cp) { /* Does contain code point as part of the set? */ IV index = _invlist_search(invlist, cp); PERL_ARGS_ASSERT__INVLIST_CONTAINS_CP; return index >= 0 && ELEMENT_RANGE_MATCHES_INVLIST(index); } PERL_STATIC_INLINE UV* S_invlist_array(SV* const invlist) { /* Returns the pointer to the inversion list's array. Every time the * length changes, this needs to be called in case malloc or realloc moved * it */ PERL_ARGS_ASSERT_INVLIST_ARRAY; /* Must not be empty. If these fail, you probably didn't check for * being non-zero before trying to get the array */ assert(_invlist_len(invlist)); /* The very first element always contains zero, The array begins either * there, or if the inversion list is offset, at the element after it. * The offset header field determines which; it contains 0 or 1 to indicate * how much additionally to add */ assert(0 == *(SvPVX(invlist))); return ((UV *) SvPVX(invlist) + *get_invlist_offset_addr(invlist)); } # if defined(PERL_IN_UTF8_C) || defined(PERL_IN_REGEXEC_C) /* These symbols are only needed later in regcomp.c */ # undef TO_INTERNAL_SIZE # undef FROM_INTERNAL_SIZE # endif #endif