Returns the highest index in the array. Returns -1 if the array is
empty.
- I32 av_len(AV* ar)
+ I32 av_len(const AV* ar)
=for hackers
Found in file av.c
Finds the magic pointer for type matching the SV. See C<sv_magic>.
- MAGIC* mg_find(SV* sv, int type)
+ MAGIC* mg_find(const SV* sv, int type)
=for hackers
Found in file mg.c
On return I<*len> is set to the length of the scanned string,
and I<*flags> gives output flags.
-If the value is <= UV_MAX it is returned as a UV, the output flags are clear,
+If the value is <= C<UV_MAX> it is returned as a UV, the output flags are clear,
and nothing is written to I<*result>. If the value is > UV_MAX C<grok_bin>
returns UV_MAX, sets C<PERL_SCAN_GREATER_THAN_UV_MAX> in the output flags,
and writes the value to I<*result> (or the value is discarded if I<result>
C<PERL_SCAN_ALLOW_UNDERSCORES> is set in I<*flags> then the binary
number may use '_' characters to separate digits.
- UV grok_bin(char* start, STRLEN* len, I32* flags, NV *result)
+ UV grok_bin(const char* start, STRLEN* len, I32* flags, NV *result)
=for hackers
Found in file numeric.c
C<PERL_SCAN_ALLOW_UNDERSCORES> is set in I<*flags> then the hex
number may use '_' characters to separate digits.
- UV grok_hex(char* start, STRLEN* len, I32* flags, NV *result)
+ UV grok_hex(const char* start, STRLEN* len, I32* flags, NV *result)
=for hackers
Found in file numeric.c
If C<PERL_SCAN_ALLOW_UNDERSCORES> is set in I<*flags> then the octal
number may use '_' characters to separate digits.
- UV grok_oct(char* start, STRLEN* len, I32* flags, NV *result)
+ UV grok_oct(const char* start, STRLEN* len, I32* flags, NV *result)
=for hackers
Found in file numeric.c
=item bytes_from_utf8
Converts a string C<s> of length C<len> from UTF-8 into byte encoding.
-Unlike <utf8_to_bytes> but like C<bytes_to_utf8>, returns a pointer to
+Unlike C<utf8_to_bytes> but like C<bytes_to_utf8>, returns a pointer to
the newly-created string, and updates C<len> to contain the new
length. Returns the original string if no conversion occurs, C<len>
is unchanged. Do nothing if C<is_utf8> points to 0. Sets C<is_utf8> to
NOTE: this function is experimental and may change or be
removed without notice.
- U8* bytes_to_utf8(U8 *s, STRLEN *len)
+ U8* bytes_to_utf8(const U8 *s, STRLEN *len)
=for hackers
Found in file utf8.c
UTF-8 character. The actual number of bytes in the UTF-8 character
will be returned if it is valid, otherwise 0.
- STRLEN is_utf8_char(U8 *p)
+ STRLEN is_utf8_char(const U8 *p)
=for hackers
Found in file utf8.c
not mean 'a string that contains code points above 0x7F encoded in UTF-8'
because a valid ASCII string is a valid UTF-8 string.
- bool is_utf8_string(U8 *s, STRLEN len)
+ bool is_utf8_string(const U8 *s, STRLEN len)
=for hackers
Found in file utf8.c
Like is_ut8_string but store the location of the failure in
the last argument.
- bool is_utf8_string_loc(U8 *s, STRLEN len, U8 **p)
+ bool is_utf8_string_loc(const U8 *s, STRLEN len, const U8 **p)
=for hackers
Found in file utf8.c
The "normal" is a string like "ToLower" which means the swash
%utf8::ToLower.
- UV to_utf8_case(U8 *p, U8* ustrp, STRLEN *lenp, SV **swash, char *normal, char *special)
+ UV to_utf8_case(const U8 *p, U8* ustrp, STRLEN *lenp, SV **swash, char *normal, char *special)
=for hackers
Found in file utf8.c
The first character of the foldcased version is returned
(but note, as explained above, that there may be more.)
- UV to_utf8_fold(U8 *p, U8* ustrp, STRLEN *lenp)
+ UV to_utf8_fold(const U8 *p, U8* ustrp, STRLEN *lenp)
=for hackers
Found in file utf8.c
The first character of the lowercased version is returned
(but note, as explained above, that there may be more.)
- UV to_utf8_lower(U8 *p, U8* ustrp, STRLEN *lenp)
+ UV to_utf8_lower(const U8 *p, U8* ustrp, STRLEN *lenp)
=for hackers
Found in file utf8.c
The first character of the titlecased version is returned
(but note, as explained above, that there may be more.)
- UV to_utf8_title(U8 *p, U8* ustrp, STRLEN *lenp)
+ UV to_utf8_title(const U8 *p, U8* ustrp, STRLEN *lenp)
=for hackers
Found in file utf8.c
The first character of the uppercased version is returned
(but note, as explained above, that there may be more.)
- UV to_utf8_upper(U8 *p, U8* ustrp, STRLEN *lenp)
+ UV to_utf8_upper(const U8 *p, U8* ustrp, STRLEN *lenp)
=for hackers
Found in file utf8.c
Allows length and flags to be passed to low level routine.
- UV utf8n_to_uvchr(U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags)
+ UV utf8n_to_uvchr(const U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags)
=for hackers
Found in file utf8.c
Most code should use utf8_to_uvchr() rather than call this directly.
- UV utf8n_to_uvuni(U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags)
+ UV utf8n_to_uvuni(const U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags)
=for hackers
Found in file utf8.c
WARNING: use only if you *know* that the pointers point inside the
same UTF-8 buffer.
- IV utf8_distance(U8 *a, U8 *b)
+ IV utf8_distance(const U8 *a, const U8 *b)
=for hackers
Found in file utf8.c
Stops at C<e> (inclusive). If C<e E<lt> s> or if the scan would end
up past C<e>, croaks.
- STRLEN utf8_length(U8* s, U8 *e)
+ STRLEN utf8_length(const U8* s, const U8 *e)
=for hackers
Found in file utf8.c
If C<s> does not point to a well-formed UTF-8 character, zero is
returned and retlen is set, if possible, to -1.
- UV utf8_to_uvchr(U8 *s, STRLEN* retlen)
+ UV utf8_to_uvchr(const U8 *s, STRLEN* retlen)
=for hackers
Found in file utf8.c
If C<s> does not point to a well-formed UTF-8 character, zero is
returned and retlen is set, if possible, to -1.
- UV utf8_to_uvuni(U8 *s, STRLEN* retlen)
+ UV utf8_to_uvuni(const U8 *s, STRLEN* retlen)
=for hackers
Found in file utf8.c