diff options
author | Nicholas Clark <nick@ccl4.org> | 2007-09-21 09:16:37 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2007-09-21 09:16:37 +0000 |
commit | 8577170339c91290eca4c1c52a3a2009a3aa2c0d (patch) | |
tree | 3f0cc74551b2797ba86bd57f6d3211ea7c9d6124 /util.c | |
parent | 26488bcfd275389416b4ce41d2bbea51ab55b2ef (diff) | |
download | perl-8577170339c91290eca4c1c52a3a2009a3aa2c0d.tar.gz |
hv_stores() on a literal string is now fractionally more efficient than
hv_store().
p4raw-id: //depot/perl@31938
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 26 |
1 files changed, 13 insertions, 13 deletions
@@ -4225,11 +4225,11 @@ Perl_scan_version(pTHX_ const char *s, SV *rv, bool qv) pos = s; if ( qv ) - (void)hv_store((HV *)hv, "qv", 2, newSViv(qv), 0); + (void)hv_stores((HV *)hv, "qv", newSViv(qv)); if ( alpha ) - (void)hv_store((HV *)hv, "alpha", 5, newSViv(alpha), 0); + (void)hv_stores((HV *)hv, "alpha", newSViv(alpha)); if ( !qv && width < 3 ) - (void)hv_store((HV *)hv, "width", 5, newSViv(width), 0); + (void)hv_stores((HV *)hv, "width", newSViv(width)); while (isDIGIT(*pos)) pos++; @@ -4333,8 +4333,8 @@ Perl_scan_version(pTHX_ const char *s, SV *rv, bool qv) /* need to save off the current version string for later */ if ( vinf ) { SV * orig = newSVpvn("v.Inf", sizeof("v.Inf")-1); - (void)hv_store((HV *)hv, "original", 8, orig, 0); - (void)hv_store((HV *)hv, "vinf", 4, newSViv(1), 0); + (void)hv_stores((HV *)hv, "original", orig); + (void)hv_stores((HV *)hv, "vinf", newSViv(1)); } else if ( s > start ) { SV * orig = newSVpvn(start,s-start); @@ -4342,15 +4342,15 @@ Perl_scan_version(pTHX_ const char *s, SV *rv, bool qv) /* need to insert a v to be consistent */ sv_insert(orig, 0, 0, "v", 1); } - (void)hv_store((HV *)hv, "original", 8, orig, 0); + (void)hv_stores((HV *)hv, "original", orig); } else { - (void)hv_store((HV *)hv, "original", 8, newSVpvn("0",1), 0); + (void)hv_stores((HV *)hv, "original", newSVpvn("0",1)); av_push(av, newSViv(0)); } /* And finally, store the AV in the hash */ - (void)hv_store((HV *)hv, "version", 7, newRV_noinc((SV *)av), 0); + (void)hv_stores((HV *)hv, "version", newRV_noinc((SV *)av)); /* fix RT#19517 - special case 'undef' as string */ if ( *s == 'u' && strEQ(s,"undef") ) { @@ -4395,21 +4395,21 @@ Perl_new_version(pTHX_ SV *ver) /* Begin copying all of the elements */ if ( hv_exists((HV *)ver, "qv", 2) ) - (void)hv_store((HV *)hv, "qv", 2, &PL_sv_yes, 0); + (void)hv_stores((HV *)hv, "qv", &PL_sv_yes); if ( hv_exists((HV *)ver, "alpha", 5) ) - (void)hv_store((HV *)hv, "alpha", 5, &PL_sv_yes, 0); + (void)hv_stores((HV *)hv, "alpha", &PL_sv_yes); if ( hv_exists((HV*)ver, "width", 5 ) ) { const I32 width = SvIV(*hv_fetchs((HV*)ver, "width", FALSE)); - (void)hv_store((HV *)hv, "width", 5, newSViv(width), 0); + (void)hv_stores((HV *)hv, "width", newSViv(width)); } if ( hv_exists((HV*)ver, "original", 8 ) ) { SV * pv = *hv_fetchs((HV*)ver, "original", FALSE); - (void)hv_store((HV *)hv, "original", 8, newSVsv(pv), 0); + (void)hv_stores((HV *)hv, "original", newSVsv(pv)); } sav = (AV *)SvRV(*hv_fetchs((HV*)ver, "version", FALSE)); @@ -4420,7 +4420,7 @@ Perl_new_version(pTHX_ SV *ver) av_push(av, newSViv(rev)); } - (void)hv_store((HV *)hv, "version", 7, newRV_noinc((SV *)av), 0); + (void)hv_stores((HV *)hv, "version", newRV_noinc((SV *)av)); return rv; } #ifdef SvVOK |