Lines Matching refs:av

25  * here; higher-level functions are in av.c, hv.c, and so on. Opcode
134 sv, av, hv...) contains type and reference count information, and for
6139 AV *av = NULL;
6164 av = newAV();
6165 AvREAL_off(av);
6166 SvREFCNT_inc_simple_void_NN(av);
6167 /* av now has a refcnt of 2; see discussion above */
6168 av_extend(av, *svp ? 2 : 1);
6171 AvARRAY(av)[++AvFILLp(av)] = *svp; /* av_push() */
6173 *svp = (SV*)av;
6176 av = MUTABLE_AV(*svp);
6177 if (!av) {
6182 assert(SvTYPE(av) == SVt_PVAV);
6183 if (AvFILLp(av) >= AvMAX(av)) {
6184 av_extend(av, AvFILLp(av)+1);
6188 AvARRAY(av)[++AvFILLp(av)] = sv; /* av_push() */
6253 AV * const av = (AV*)*svp;
6255 assert(!SvIS_FREED(av));
6256 fill = AvFILLp(av);
6258 svp = AvARRAY(av);
6269 AvARRAY(av)++;
6270 AvMAX(av)--;
6297 AvFILLp(av) = fill-1;
6313 Perl_sv_kill_backrefs(pTHX_ SV *const sv, AV *const av)
6321 if (!av)
6327 if (SvIS_FREED(av)) {
6335 is_array = (SvTYPE(av) == SVt_PVAV);
6337 assert(!SvIS_FREED(av));
6338 svp = AvARRAY(av);
6340 last = svp + AvFILLp(av);
6344 svp = (SV**)&av;
6396 AvFILLp(av) = -1;
6397 SvREFCNT_dec_NN(av); /* remove extra count added by sv_add_backref() */
6777 AV* av = MUTABLE_AV(sv);
6778 if (PL_comppad == av) {
6782 if (AvREAL(av) && AvFILLp(av) > -1) {
6783 next_sv = AvARRAY(av)[AvFILLp(av)--];
6786 AvARRAY(av)[AvMAX(av)] = iter_sv;
6790 Safefree(AvALLOC(av));
6979 AV *const av = (AV*)iter_sv;
6980 if (AvFILLp(av) > -1) {
6981 sv = AvARRAY(av)[AvFILLp(av)--];
6987 iter_sv = AvARRAY(av)[AvMAX(av)];
6988 Safefree(AvALLOC(av));
10643 Perl_newSVavdefelem(pTHX_ AV *av, SSize_t ix, bool extendible)
10649 LvTARG(lv) = SvREFCNT_inc_simple_NN(av);
15165 const AV *av;
15354 av = (const AV *)POPPTR(ss,ix);
15355 TOPPTR(nss,ix) = av_dup_inc(av, param);
15402 av = (const AV *)POPPTR(ss,ix);
15403 TOPPTR(nss,ix) = av_dup_inc(av, param);
15887 work inside av.c, filling slots between AvFILL() and AvMAX() with
16655 S_find_array_subscript(pTHX_ const AV *const av, const SV *const val)
16659 if (!av || SvMAGICAL(av) || !AvARRAY(av) ||
16660 (AvFILLp(av) > FUV_MAX_SEARCH_SIZE))
16664 SV ** const svp = AvARRAY(av);
16667 for (i=AvFILLp(av); i>=0; i--)
16892 AV *av = MUTABLE_AV(PAD_SV(obase->op_targ));
16893 if (!av || SvRMAGICAL(av))
16895 svp = av_fetch(av, (I8)obase->op_private, FALSE);
16905 AV *av = MUTABLE_AV(PAD_SV(obase->op_targ));
16906 if (!av || SvRMAGICAL(av))
16908 svp = av_fetch(av, (I8)obase->op_private, FALSE);
16922 AV *const av = GvAV(gv);
16923 if (!av || SvRMAGICAL(av))
16925 svp = av_fetch(av, (I8)obase->op_private, FALSE);
16955 /* get the av or hv, and optionally the gv */