/usr/lib64/perl5/CORE
NameSizeModeActions
av.h33530644editdlrm
bitcount.h8500644editdlrm
charclass_invlists.h43535110644editdlrm
config.h1643670644editdlrm
cop.h419970644editdlrm
cv.h123320644editdlrm
dosish.h54240644editdlrm
ebcdic_tables.h497630644editdlrm
embed.h1012370644editdlrm
embedvar.h218330644editdlrm
EXTERN.h16300644editdlrm
fakesdio.h32100644editdlrm
feature.h110540644editdlrm
form.h14630644editdlrm
git_version.h3570644editdlrm
gv.h107110644editdlrm
handy.h1297600644editdlrm
hv.h255930644editdlrm
hv_func.h115300644editdlrm
hv_macro.h31090644editdlrm
inline.h747440644editdlrm
INTERN.h13090644editdlrm
intrpvar.h322270644editdlrm
invlist_inline.h74290644editdlrm
iperlsys.h493920644editdlrm
keywords.h66090644editdlrm
l1_char_class_tab.h1225120644editdlrm
libperl.so37289440755editdlrm
malloc_ctl.h15240644editdlrm
metaconfig.h6920644editdlrm
mg.h30130644editdlrm
mg_data.h50210644editdlrm
mg_raw.h43770644editdlrm
mg_vtable.h95620644editdlrm
mydtrace.h16930644editdlrm
nostdio.h33920644editdlrm
op.h382480644editdlrm
opcode.h939280644editdlrm
opnames.h89270644editdlrm
op_reg_common.h59110644editdlrm
overload.h32760644editdlrm
pad.h172320644editdlrm
parser.h69930644editdlrm
patchlevel.h91790644editdlrm
perl.h2835670644editdlrm
perlapi.h76800644editdlrm
perldtrace.h33010644editdlrm
perlio.h95550644editdlrm
perliol.h137610644editdlrm
perlsdio.h5270644editdlrm
perlvars.h129340644editdlrm
perly.h46890644editdlrm
perl_inc_macro.h62230644editdlrm
perl_langinfo.h29140644editdlrm
pp.h289810644editdlrm
pp_proto.h120670644editdlrm
proto.h2775020644editdlrm
reentr.h866390644editdlrm
regcharclass.h1677480644editdlrm
regcomp.h530540644editdlrm
regexp.h366090644editdlrm
regnodes.h403500644editdlrm
sbox32_hash.h572940644editdlrm
scope.h118930644editdlrm
stadtx_hash.h92210644editdlrm
sv.h888990644editdlrm
thread.h120950644editdlrm
time64.h11680644editdlrm
time64_config.h20480644editdlrm
uconfig.h1639220644editdlrm
unicode_constants.h80310644editdlrm
unixish.h52690644editdlrm
uni_keywords.h5547110644editdlrm
utf8.h504310644editdlrm
utfebcdic.h656360644editdlrm
util.h105750644editdlrm
uudmap.h9040644editdlrm
vutil.h79930644editdlrm
warnings.h114640644editdlrm
XSUB.h246070644editdlrm
zaphod32_hash.h96580644editdlrm
Edit: /usr/lib64/perl5/CORE/av.h (3353B)
/* av.h * * Copyright (C) 1991, 1992, 1993, 1995, 1996, 1997, 1998, 1999, 2000, * 2001, 2002, 2005, 2006, 2007, 2008, 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. * */ struct xpvav { HV* xmg_stash; /* class package */ union _xmgu xmg_u; SSize_t xav_fill; /* Index of last element present */ SSize_t xav_max; /* max index for which array has space */ SV** xav_alloc; /* pointer to beginning of C array of SVs */ }; /* SV* xav_arylen; */ /* SVpav_REAL is set for all AVs whose xav_array contents are refcounted. * Some things like "@_" and the scratchpad list do not set this, to * indicate that they are cheating (for efficiency) by not refcounting * the AV's contents. * * SVpav_REIFY is only meaningful on such "fake" AVs (i.e. where SVpav_REAL * is not set). It indicates that the fake AV is capable of becoming * real if the array needs to be modified in some way. Functions that * modify fake AVs check both flags to call av_reify() as appropriate. * * Note that the Perl stack has neither flag set. (Thus, * items that go on the stack are never refcounted.) * * These internal details are subject to change any time. AV * manipulations external to perl should not care about any of this. * GSAR 1999-09-10 */ /* =head1 Handy Values =for apidoc ADmnU||Nullav Null AV pointer. (deprecated - use C<(AV *)NULL> instead) =head1 Array Manipulation Functions =for apidoc Am|int|AvFILL|AV* av Same as C or C. =for apidoc av_tindex Same as C. =for apidoc m|int|AvFILLp|AV* av =cut */ #ifndef PERL_CORE # define Nullav Null(AV*) #endif #define AvARRAY(av) ((av)->sv_u.svu_array) #define AvALLOC(av) ((XPVAV*) SvANY(av))->xav_alloc #define AvMAX(av) ((XPVAV*) SvANY(av))->xav_max #define AvFILLp(av) ((XPVAV*) SvANY(av))->xav_fill #define AvARYLEN(av) (*Perl_av_arylen_p(aTHX_ MUTABLE_AV(av))) #define AvREAL(av) (SvFLAGS(av) & SVpav_REAL) #define AvREAL_on(av) (SvFLAGS(av) |= SVpav_REAL) #define AvREAL_off(av) (SvFLAGS(av) &= ~SVpav_REAL) #define AvREAL_only(av) (AvREIFY_off(av), SvFLAGS(av) |= SVpav_REAL) #define AvREIFY(av) (SvFLAGS(av) & SVpav_REIFY) #define AvREIFY_on(av) (SvFLAGS(av) |= SVpav_REIFY) #define AvREIFY_off(av) (SvFLAGS(av) &= ~SVpav_REIFY) #define AvREIFY_only(av) (AvREAL_off(av), SvFLAGS(av) |= SVpav_REIFY) #define AvREALISH(av) (SvFLAGS(av) & (SVpav_REAL|SVpav_REIFY)) #define AvFILL(av) ((SvRMAGICAL((const SV *) (av))) \ ? mg_size(MUTABLE_SV(av)) : AvFILLp(av)) #define av_top_index(av) AvFILL(av) #define av_tindex(av) av_top_index(av) /* Note that it doesn't make sense to do this: * SvGETMAGIC(av); IV x = av_tindex_nomg(av); */ # define av_top_index_skip_len_mg(av) \ (__ASSERT_(SvTYPE(av) == SVt_PVAV) AvFILLp(av)) # define av_tindex_skip_len_mg(av) av_top_index_skip_len_mg(av) #define NEGATIVE_INDICES_VAR "NEGATIVE_INDICES" /* =for apidoc newAV Creates a new AV. The reference count is set to 1. Perl equivalent: C. =cut */ #define newAV() MUTABLE_AV(newSV_type(SVt_PVAV)) /* * ex: set ts=8 sts=4 sw=4 et: */