XString#
📦 std
The string quoting helpers of B, without loading B.
XString::cstring and XString::perlstring return a string quoted and escaped so that it reads back as the same bytes: as a C string literal, or as a Perl double-quoted string. They are B::cstring and B::perlstring, packaged so that a module can quote strings without pulling in the compiler backend.
Synopsis#
use XString;
print XString::cstring(qq[a"b\n]), "\n"; # "a\"b\n"
print XString::perlstring('cost: $5 @ 2'), "\n"; # "cost: \$5 \@ 2"
print XString::cstring(undef), "\n"; # 0
Nothing is exported; call them by their full names.
This is a native implementation of XString 0.005’s XString.xs; its XString.pm is used unchanged.
Differences from upstream#
None.
Functions#
Quoting#
cstring#
Quote a string as a C string literal.
perlstring#
Quote a string as a Perl double-quoted string.