summaryrefslogtreecommitdiff
path: root/lib/bytes.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bytes.pm')
-rw-r--r--lib/bytes.pm24
1 files changed, 21 insertions, 3 deletions
diff --git a/lib/bytes.pm b/lib/bytes.pm
index cd82abc75b..775b2cdab5 100644
--- a/lib/bytes.pm
+++ b/lib/bytes.pm
@@ -18,6 +18,11 @@ sub AUTOLOAD {
}
sub length ($);
+sub chr ($);
+sub ord ($);
+sub substr ($$;$$);
+sub index ($$;$);
+sub rindex ($$;$);
1;
__END__
@@ -29,8 +34,15 @@ bytes - Perl pragma to force byte semantics rather than character semantics
=head1 SYNOPSIS
use bytes;
+ ... chr(...); # or bytes::chr
+ ... index(...); # or bytes::index
+ ... length(...); # or bytes::length
+ ... ord(...); # or bytes::ord
+ ... rindex(...); # or bytes::rindex
+ ... substr(...); # or bytes::substr
no bytes;
+
=head1 DESCRIPTION
The C<use bytes> pragma disables character semantics for the rest of the
@@ -53,16 +65,22 @@ up the UTF8 encoding - and C<length $x> returns C<2>:
print "Length is ", length $x, "\n"; # "Length is 1"
printf "Contents are %vd\n", $x; # "Contents are 400"
{
- use bytes;
+ use bytes; # or "require bytes; bytes::length()"
print "Length is ", length $x, "\n"; # "Length is 2"
printf "Contents are %vd\n", $x; # "Contents are 198.144"
}
+chr(), ord(), substr(), index() and rindex() behave similarly.
+
For more on the implications and differences between character
-semantics and byte semantics, see L<perlunicode>.
+semantics and byte semantics, see L<perluniintro> and L<perlunicode>.
+
+=head1 LIMITATIONS
+
+bytes::substr() does not work as an lvalue().
=head1 SEE ALSO
-L<perlunicode>, L<utf8>
+L<perluniintro>, L<perlunicode>, L<utf8>
=cut