Ap |SV** |stack_grow |NN SV** sp|NN SV** p|int n
Ap |I32 |start_subparse |I32 is_format|U32 flags
p |void |sub_crush_depth|NN CV* cv
-Apd |bool |sv_2bool |NN SV* sv
+Apd |bool |sv_2bool |NN SV *const sv
Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV** st|NN GV** gvp|I32 lref
Apd |IO* |sv_2io |NN SV* sv
#ifdef PERL_IN_SV_C
pMd |SV* |sv_2num |NN SV *const sv
Amb |char* |sv_2pv |NULLOK SV *sv|NULLOK STRLEN *lp
Apd |char* |sv_2pv_flags |NULLOK SV *const sv|NULLOK STRLEN *const lp|const I32 flags
-Apd |char* |sv_2pvutf8 |NN SV* sv|NULLOK STRLEN* lp
+Apd |char* |sv_2pvutf8 |NN SV *const sv|NULLOK STRLEN *const lp
Apd |char* |sv_2pvbyte |NN SV *const sv|NULLOK STRLEN *const lp
Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp
Amb |UV |sv_2uv |NULLOK SV *sv
Apd |void |sv_setnv_mg |NN SV *const sv|const NV num
Apd |void |sv_setpv_mg |NN SV *sv|NULLOK const char *ptr
Apd |void |sv_setpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len
-Apd |void |sv_setsv_mg |NN SV *dstr|NULLOK SV *sstr
+Apd |void |sv_setsv_mg |NN SV *const dstr|NULLOK SV *const sstr
Apdbm |void |sv_usepvn_mg |NN SV *sv|NULLOK char *ptr|STRLEN len
ApR |MGVTBL*|get_vtbl |int vtbl_id
Apd |char* |pv_display |NN SV *dsv|NN const char *pv|STRLEN cur|STRLEN len \
AmdbR |char* |sv_pvutf8 |NN SV *sv
AmdbR |char* |sv_pvbyte |NN SV *sv
Amdb |STRLEN |sv_utf8_upgrade|NN SV *sv
-ApdM |bool |sv_utf8_downgrade|NN SV *sv|bool fail_ok
-Apd |void |sv_utf8_encode |NN SV *sv
-ApdM |bool |sv_utf8_decode |NN SV *sv
+ApdM |bool |sv_utf8_downgrade|NN SV *const sv|const bool fail_ok
+Apd |void |sv_utf8_encode |NN SV *const sv
+ApdM |bool |sv_utf8_decode |NN SV *const sv
Apdmb |void |sv_force_normal|NN SV *sv
Apd |void |sv_force_normal_flags|NN SV *sv|U32 flags
Ap |void |tmps_grow |I32 n
s |SV * |more_sv
s |void * |more_bodies |const svtype sv_type
s |bool |sv_2iuv_common |NN SV *const sv
-s |void |glob_assign_glob|NN SV *dstr|NN SV *sstr|const int dtype
-s |void |glob_assign_ref|NN SV *dstr|NN SV *sstr
+s |void |glob_assign_glob|NN SV *const dstr|NN SV *const sstr \
+ |const int dtype
+s |void |glob_assign_ref|NN SV *const dstr|NN SV *const sstr
sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NULLOK const void *sv
#endif
START_EXTERN_C
-Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|I32 flags
+Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags
Apd |void |sv_catpvn_flags|NN SV *dstr|NN const char *sstr|STRLEN len \
|I32 flags
Apd |void |sv_catsv_flags |NN SV* dsv|NULLOK SV* ssv|I32 flags
-Apd |STRLEN |sv_utf8_upgrade_flags|NN SV *sv|I32 flags
+Apd |STRLEN |sv_utf8_upgrade_flags|NN SV *const sv|const I32 flags
Apd |char* |sv_pvn_force_flags|NN SV* sv|NULLOK STRLEN* lp|I32 flags
Apd |void |sv_copypv |NN SV *const dsv|NN SV *const ssv
Ap |char* |my_atof2 |NN const char *s|NN NV* value
This function is only called on magical items, and is only used by
sv_true() or its macro equivalent.
- bool sv_2bool(SV* sv)
+ bool sv_2bool(SV *const sv)
=for hackers
Found in file sv.c
Usually accessed via the C<SvPVutf8> macro.
- char* sv_2pvutf8(SV* sv, STRLEN* lp)
+ char* sv_2pvutf8(SV *const sv, STRLEN *const lp)
=for hackers
Found in file sv.c
This is the primary function for copying scalars, and most other
copy-ish functions and macros use this underneath.
- void sv_setsv_flags(SV *dstr, SV *sstr, I32 flags)
+ void sv_setsv_flags(SV *dstr, SV *sstr, const I32 flags)
=for hackers
Found in file sv.c
Like C<sv_setsv>, but also handles 'set' magic.
- void sv_setsv_mg(SV *dstr, SV *sstr)
+ void sv_setsv_mg(SV *const dstr, SV *const sstr)
=for hackers
Found in file sv.c
NOTE: this function is experimental and may change or be
removed without notice.
- bool sv_utf8_decode(SV *sv)
+ bool sv_utf8_decode(SV *const sv)
=for hackers
Found in file sv.c
NOTE: this function is experimental and may change or be
removed without notice.
- bool sv_utf8_downgrade(SV *sv, bool fail_ok)
+ bool sv_utf8_downgrade(SV *const sv, const bool fail_ok)
=for hackers
Found in file sv.c
Converts the PV of an SV to UTF-8, but then turns the C<SvUTF8>
flag off so that it looks like octets again.
- void sv_utf8_encode(SV *sv)
+ void sv_utf8_encode(SV *const sv)
=for hackers
Found in file sv.c
This is not as a general purpose byte encoding to Unicode interface:
use the Encode extension for that.
- STRLEN sv_utf8_upgrade_flags(SV *sv, I32 flags)
+ STRLEN sv_utf8_upgrade_flags(SV *const sv, const I32 flags)
=for hackers
Found in file sv.c
#define PERL_ARGS_ASSERT_SUB_CRUSH_DEPTH \
assert(cv)
-PERL_CALLCONV bool Perl_sv_2bool(pTHX_ SV* sv)
+PERL_CALLCONV bool Perl_sv_2bool(pTHX_ SV *const sv)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_2BOOL \
assert(sv)
/* PERL_CALLCONV char* Perl_sv_2pv(pTHX_ SV *sv, STRLEN *lp); */
PERL_CALLCONV char* Perl_sv_2pv_flags(pTHX_ SV *const sv, STRLEN *const lp, const I32 flags);
-PERL_CALLCONV char* Perl_sv_2pvutf8(pTHX_ SV* sv, STRLEN* lp)
+PERL_CALLCONV char* Perl_sv_2pvutf8(pTHX_ SV *const sv, STRLEN *const lp)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_2PVUTF8 \
assert(sv)
#define PERL_ARGS_ASSERT_SV_SETPVN_MG \
assert(sv); assert(ptr)
-PERL_CALLCONV void Perl_sv_setsv_mg(pTHX_ SV *dstr, SV *sstr)
+PERL_CALLCONV void Perl_sv_setsv_mg(pTHX_ SV *const dstr, SV *const sstr)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_SETSV_MG \
assert(dstr)
#define PERL_ARGS_ASSERT_SV_UTF8_UPGRADE \
assert(sv)
-PERL_CALLCONV bool Perl_sv_utf8_downgrade(pTHX_ SV *sv, bool fail_ok)
+PERL_CALLCONV bool Perl_sv_utf8_downgrade(pTHX_ SV *const sv, const bool fail_ok)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_UTF8_DOWNGRADE \
assert(sv)
-PERL_CALLCONV void Perl_sv_utf8_encode(pTHX_ SV *sv)
+PERL_CALLCONV void Perl_sv_utf8_encode(pTHX_ SV *const sv)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_UTF8_ENCODE \
assert(sv)
-PERL_CALLCONV bool Perl_sv_utf8_decode(pTHX_ SV *sv)
+PERL_CALLCONV bool Perl_sv_utf8_decode(pTHX_ SV *const sv)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_UTF8_DECODE \
assert(sv)
#define PERL_ARGS_ASSERT_SV_2IUV_COMMON \
assert(sv)
-STATIC void S_glob_assign_glob(pTHX_ SV *dstr, SV *sstr, const int dtype)
+STATIC void S_glob_assign_glob(pTHX_ SV *const dstr, SV *const sstr, const int dtype)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2);
#define PERL_ARGS_ASSERT_GLOB_ASSIGN_GLOB \
assert(dstr); assert(sstr)
-STATIC void S_glob_assign_ref(pTHX_ SV *dstr, SV *sstr)
+STATIC void S_glob_assign_ref(pTHX_ SV *const dstr, SV *const sstr)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2);
#define PERL_ARGS_ASSERT_GLOB_ASSIGN_REF \
START_EXTERN_C
-PERL_CALLCONV void Perl_sv_setsv_flags(pTHX_ SV *dstr, SV *sstr, I32 flags)
+PERL_CALLCONV void Perl_sv_setsv_flags(pTHX_ SV *dstr, SV *sstr, const I32 flags)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_SETSV_FLAGS \
assert(dstr)
#define PERL_ARGS_ASSERT_SV_CATSV_FLAGS \
assert(dsv)
-PERL_CALLCONV STRLEN Perl_sv_utf8_upgrade_flags(pTHX_ SV *sv, I32 flags)
+PERL_CALLCONV STRLEN Perl_sv_utf8_upgrade_flags(pTHX_ SV *const sv, const I32 flags)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_SV_UTF8_UPGRADE_FLAGS \
assert(sv)
*/
char *
-Perl_sv_2pvutf8(pTHX_ register SV *sv, STRLEN *lp)
+Perl_sv_2pvutf8(pTHX_ register SV *const sv, STRLEN *const lp)
{
PERL_ARGS_ASSERT_SV_2PVUTF8;
*/
bool
-Perl_sv_2bool(pTHX_ register SV *sv)
+Perl_sv_2bool(pTHX_ register SV *const sv)
{
dVAR;
*/
STRLEN
-Perl_sv_utf8_upgrade_flags(pTHX_ register SV *sv, I32 flags)
+Perl_sv_utf8_upgrade_flags(pTHX_ register SV *const sv, const I32 flags)
{
dVAR;
*/
bool
-Perl_sv_utf8_downgrade(pTHX_ register SV* sv, bool fail_ok)
+Perl_sv_utf8_downgrade(pTHX_ register SV *const sv, const bool fail_ok)
{
dVAR;
*/
void
-Perl_sv_utf8_encode(pTHX_ register SV *sv)
+Perl_sv_utf8_encode(pTHX_ register SV *const sv)
{
PERL_ARGS_ASSERT_SV_UTF8_ENCODE;
*/
bool
-Perl_sv_utf8_decode(pTHX_ register SV *sv)
+Perl_sv_utf8_decode(pTHX_ register SV *const sv)
{
PERL_ARGS_ASSERT_SV_UTF8_DECODE;
*/
static void
-S_glob_assign_glob(pTHX_ SV *dstr, SV *sstr, const int dtype)
+S_glob_assign_glob(pTHX_ SV *const dstr, SV *const sstr, const int dtype)
{
I32 mro_changes = 0; /* 1 = method, 2 = isa */
}
static void
-S_glob_assign_ref(pTHX_ SV *dstr, SV *sstr)
+S_glob_assign_ref(pTHX_ SV *const dstr, SV *const sstr)
{
SV * const sref = SvREFCNT_inc(SvRV(sstr));
SV *dref = NULL;
}
void
-Perl_sv_setsv_flags(pTHX_ SV *dstr, register SV *sstr, I32 flags)
+Perl_sv_setsv_flags(pTHX_ SV *dstr, register SV* sstr, const I32 flags)
{
dVAR;
register U32 sflags;
*/
void
-Perl_sv_setsv_mg(pTHX_ SV *dstr, register SV *sstr)
+Perl_sv_setsv_mg(pTHX_ SV *const dstr, register SV *const sstr)
{
PERL_ARGS_ASSERT_SV_SETSV_MG;