X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltodo.pod;h=3c7243254ef7ba6086af40e281287cb6cb85f247;hb=a2efc82216efc10377cf26fd4aff1aa5e66c6687;hp=7625aa604904205437249c41d69b8e8871490841;hpb=f35392ae6417fec0cce48333103123d63f364254;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltodo.pod b/pod/perltodo.pod index 7625aa6..3c72432 100644 --- a/pod/perltodo.pod +++ b/pod/perltodo.pod @@ -28,7 +28,7 @@ always be set to true, but it needs to be set to false when F is being compiled. (To stop Perl trying to autoload the C pragma...) -=head2 Create a char *sv_printify(sv, STRLEN *lenp, UV flags) +=head2 Create a char *sv_pvprintify(sv, STRLEN *lenp, UV flags) For displaying PVs with control characters, embedded nulls, and Unicode. This would be useful for printing warnings, or data and regex dumping, @@ -36,17 +36,20 @@ not_a_number(), and so on. Requirements: should handle both byte and UTF8 strings. isPRINT() characters printed as-is, character less than 256 as \xHH, Unicode -characters as \x{HHH}. +characters as \x{HHH}. Don't assume ASCII-like, either, get somebody +on EBCDIC to test the output. Possible options, controlled by the flags: -- whitespace (other than ' ' of isPRINTF()) printed as-is +- whitespace (other than ' ' of isPRINT()) printed as-is - use isPRINT_LC() instead of isPRINT() - print control characters like this: "\cA" - print control characters like this: "^A" -- non-printables printed as '.' instead of \xHH -- print the \OOO instead of \xHH +- non-PRINTables printed as '.' instead of \xHH +- use \OOO instead of \xHH +- use the C/Perl-metacharacters like \n, \t - have a maximum length for the produced string (read it from *lenp) - append a "..." to the produced string if the maximum length is exceeded +- really fancy: print unicode characters as \N{...} =head2 Autoload byte.pm @@ -79,7 +82,8 @@ Simon Cozens promises to work on this. =head2 Unicode regular expression character classes -They have some tricks Perl doesn't yet implement. +They have some tricks Perl doesn't yet implement like character +class subtraction. http://www.unicode.org/unicode/reports/tr18/ @@ -325,6 +329,12 @@ has changed. Detecting a change is perhaps the difficult bit. There should be a way of restarting the debugger on demand. +=head2 Test Suite for the Debugger + +The debugger is a complex piece of software and fixing something +here may inadvertently break something else over there. To tame +this chaotic behaviour, a test suite is necessary. + =head2 my sub foo { } The basic principle is sound, but there are problems with the semantics