X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=8a23663a08abafbaf99069847521fad28f853d03;hb=d672126634c5e568812ed35d4c8ea53a9a55ee4c;hp=806e12f77a4f88773c6ef8213ac0521df53476e4;hpb=12b7c5c76c729a350869525e7426d5ca5b8092fa;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 806e12f..8a23663 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -29,6 +29,8 @@ through to locate the proper section you're looking for. =item Miscellaneous +=item Language-Specific + =item Platform-Specific =back @@ -101,8 +103,8 @@ Parentheses for capturing, Other regexp features =back -=head2 perlfaq - frequently asked questions about Perl ($Date: 2002/01/31 -04:27:54 $) +=head2 perlfaq - frequently asked questions about Perl ($Date: 2002/03/11 +21:32:23 $) =over 4 @@ -346,6 +348,8 @@ regular expressions =item Lvalue subroutines +Lvalue subroutines are EXPERIMENTAL + =item Passing Symbol Table Entries (typeglobs) =item When to Still Use local() @@ -396,44 +400,45 @@ in perl5 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, -binmode FILEHANDLE, DISCIPLINE, binmode FILEHANDLE, bless REF,CLASSNAME, -bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, -chomp( LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr -NUMBER, chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir -DIRHANDLE, connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt -PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, -defined, delete EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, -dump LABEL, dump, each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval -BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, -fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock -FILEHANDLE,OPERATION, fork, format, formline PICTURE,LIST, getc FILEHANDLE, -getc, getlogin, getpeername SOCKET, getpgrp PID, getppid, getpriority -WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME, getnetbyname -NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, getservbyname -NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, -getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, -gethostent, getnetent, getprotoent, getservent, setpwent, setgrent, -sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent -STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent, -endservent, getsockname SOCKET, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, -glob, gmtime EXPR, goto LABEL, goto EXPR, goto &NAME, grep BLOCK LIST, grep -EXPR,LIST, hex EXPR, hex, import, index STR,SUBSTR,POSITION, index -STR,SUBSTR, int EXPR, int, ioctl FILEHANDLE,FUNCTION,SCALAR, join -EXPR,LIST, keys HASH, kill SIGNAL, LIST, last LABEL, last, lc EXPR, lc, -lcfirst EXPR, lcfirst, length EXPR, length, link OLDFILE,NEWFILE, listen -SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock THING, log EXPR, log, -lstat EXPR, lstat, m//, map BLOCK LIST, map EXPR,LIST, mkdir FILENAME,MASK, -mkdir FILENAME, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgrcv -ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my EXPR : ATTRIBUTES, -next LABEL, next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open -FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST, open -FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, opendir DIRHANDLE,EXPR, ord -EXPR, ord, our EXPR, our EXPR : ATTRIBUTES, pack TEMPLATE,LIST, package -NAMESPACE, package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos -SCALAR, pos, print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE -FORMAT, LIST, printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, -q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, -quotemeta, rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read +binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless +REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp( +LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER, +chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, +connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT, +dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete +EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, +each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST, +exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl +FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION, +fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin, +getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam +NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname +NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr +ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, +getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, +getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent +STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, +endhostent, endnetent, endprotoent, endservent, getsockname SOCKET, +getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, +goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, +import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl +FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST, +last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, +link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, +lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map +EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget +KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my +TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no +Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct +EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open +FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, +opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : +ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE, +package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, +print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, +printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, +qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, +rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR, @@ -446,13 +451,15 @@ SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep -EXPR, sleep, sockatmark SOCKET, socket SOCKET,DOMAIN,TYPE,PROTOCOL, -socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort -BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice -ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, split -/PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, split /PATTERN/, split, sprintf -FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, srand, stat FILEHANDLE, stat -EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME, sub NAME BLOCK, +EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair +SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, +sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, +splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split +/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format +parameter index, flags, vector flag, (minimum) width, precision, or maximum +width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat +FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME +(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread @@ -849,10 +856,11 @@ B<-X>, B<-x> I =item ENVIRONMENT -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL -(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL, -PERL_ENCODING, PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to -the VMS port) +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap, +:perlio, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB, +PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS, +PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_ROOT (specific to the VMS port), +SYS$LOGIN (specific to the VMS port) =back @@ -906,7 +914,7 @@ B<-w>, B<-W>, B<-X> =item use strict -=item Looking at data and -w and w +=item Looking at data and -w and v =item help @@ -944,16 +952,16 @@ B<-w>, B<-W>, B<-X> =item Debugger Commands -h [command], p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], T, s -[expr], n [expr], r, , c [line|sub], l, l min+incr, l min-max, l line, -l subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], -t, t expr, b [line] [condition], b subname [condition], b postpone subname -[condition], b load filename, b compile subname, d [line], D, a [line] -command, a [line], A, W expr, W, O booloption .., O anyoption? .., O -option=value .., < ?, < [ command ], << command, > ?, > command, >> -command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !! -cmd, @ file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man -[manpage] +h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y +[level [vars]], T, s [expr], n [expr], r, , c [line|sub], l, l +min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/, +?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b +subname [condition], b postpone subname [condition], b load filename, b +compile subname, B line, B *, a [line] command, A line, A *, w expr, W +expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [ +command ], << command, > ?, > command, >> command, { ?, { [ command ], {{ +command, ! number, ! -number, ! pattern, !! cmd, source file, H -number, q +or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man [manpage] =item Configurable Options @@ -1022,7 +1030,7 @@ $FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, IO::Handle->format_line_break_characters EXPR, $FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, -$OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, +$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, @@ -1031,7 +1039,8 @@ ${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, $PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, ${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, ARGV, -$ARGV, @ARGV, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} +$ARGV, @ARGV, ARGVOUT, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, +$SIG{expr} =item Error Indicators @@ -1123,6 +1132,8 @@ $ARGV, @ARGV, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} =item File Locking +=item IO Layers + =back =item SEE ALSO @@ -1711,11 +1722,20 @@ safe subprocesses, sockets, and semaphores) =item Signals +=over 4 + +=item Handling the SIGHUP Signal in Daemons + +=back + =item Named Pipes =over 4 -=item WARNING +=item Deferred Signals + +Long running opcodes, Interrupting IO, Signals as "faults", Signals +triggered by operating system state =back @@ -1781,7 +1801,7 @@ Proto, LocalPort, Listen, Reuse =back -=head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change) +=head2 perlfork - Perl's fork() emulation =over 4 @@ -1833,8 +1853,8 @@ application, Thread-safety of extensions =item Flavors of Perl numeric operations -Arithmetic operators except, C, Arithmetic operators except, -C, Bitwise operators, C, Bitwise operators, C, Other +mathematical operators, Bitwise operators, Bitwise operators during C, Operators which expect an integer, Operators which expect a string @@ -1850,6 +1870,118 @@ string =item DESCRIPTION +=item Status + +=item What Is A Thread Anyway? + +=item Threaded Program Models + +=over 4 + +=item Boss/Worker + +=item Work Crew + +=item Pipeline + +=back + +=item Native threads + +=item What kind of threads are Perl threads? + +=item Thread-Safe Modules + +=item Thread Basics + +=over 4 + +=item Basic Thread Support + +=item A Note about the Examples + +=item Creating Threads + +=item Giving up control + +=item Waiting For A Thread To Exit + +=item Ignoring A Thread + +=back + +=item Threads And Data + +=over 4 + +=item Shared And Unshared Data + +=item Thread Pitfalls: Races + +=back + +=item Synchronization and control + +=over 4 + +=item Controlling access: lock() + +=item A Thread Pitfall: Deadlocks + +=item Queues: Passing Data Around + +=item Semaphores: Synchronizing Data Access + +=item Basic semaphores + +=item Advanced Semaphores + +=item cond_wait() and cond_signal() + +=back + +=item General Thread Utility Routines + +=over 4 + +=item What Thread Am I In? + +=item Thread IDs + +=item Are These Threads The Same? + +=item What Threads Are Running? + +=back + +=item A Complete Example + +=item Performance considerations + +=item Process-scope Changes + +=item Thread-Safety of System Libraries + +=item Conclusion + +=item Bibliography + +=over 4 + +=item Introductory Texts + +=item OS-Related References + +=item Other References + +=back + +=item Acknowledgements + +=item AUTHOR + +=item Copyrights + =back =head2 perlothrtut - old tutorial on threads in Perl @@ -1989,6 +2121,8 @@ portable =item System Interaction +=item Command names versus file pathnames + =item Interprocess Communication (IPC) =item External Subroutines (XS) @@ -2050,16 +2184,15 @@ FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, -getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent -STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, -endhostent, endnetent, endprotoent, endservent, getsockopt -SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, -kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, -lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv -ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe -READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select -RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget -KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, +getprotoent, getservent, sethostent STAYOPEN, setnetent STAYOPEN, +setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent, +endnetent, endprotoent, endservent, getsockopt SOCKET,LEVEL,OPTNAME, glob +EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, kill SIGNAL, LIST, link +OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, +msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open +FILEHANDLE,EXPR, open FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink +EXPR, readlink, select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, +semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET, @@ -2086,8 +2219,6 @@ v1.30, 03 August 1998, v1.23, 10 July 1998 =item AUTHORS / CONTRIBUTORS -=item VERSION - =back =head2 perllocale - Perl locale handling (internationalization and @@ -2170,6 +2301,8 @@ LC_NUMERIC, LC_TIME, LANG =back +=item Unicode and UTF-8 + =item BUGS =over 4 @@ -2198,6 +2331,8 @@ LC_NUMERIC, LC_TIME, LANG =item Perl's Unicode Model +=item Unicode and EBCDIC + =item Creating Unicode =item Handling Unicode @@ -2216,12 +2351,6 @@ LC_NUMERIC, LC_TIME, LANG =item Questions With Answers -Will My Old Scripts Break?, How Do I Make My Scripts Work With Unicode?, -How Do I Know Whether My String Is In Unicode?, How Do I Detect Data That's -Not Valid In a Particular Encoding, How Do I Convert Binary Data Into a -Particular Encoding, Or Vice Versa?, How Do I Display Unicode? How Do I -Input Unicode?, How Does Unicode Work With Traditional Locales? - =item Hexadecimal Notation =item Further Resources @@ -2232,7 +2361,7 @@ Input Unicode?, How Does Unicode Work With Traditional Locales? =item SEE ALSO -=item ACKNOWLEDGEMENTS +=item ACKNOWLEDGMENTS =item AUTHOR, COPYRIGHT, AND LICENSE @@ -2248,40 +2377,47 @@ Input Unicode?, How Does Unicode Work With Traditional Locales? =item Important Caveats -Input and Output Disciplines, Regular Expressions, C still needed -to enable UTF-8/UTF-EBCDIC in scripts +Input and Output Layers, Regular Expressions, C still needed to +enable UTF-8/UTF-EBCDIC in scripts -=item Byte and Character semantics +=item Byte and Character Semantics -=item Effects of character semantics +=item Effects of Character Semantics =item Scripts =item Blocks -=item Character encodings for input and output - -=back - -=item CAVEATS +=item User-Defined Character Properties -=item UNICODE REGULAR EXPRESSION SUPPORT LEVEL +=item Character Encodings for Input and Output -=over 4 +=item Unicode Regular Expression Support Level =item Unicode Encodings -UTF-8, UTF-EBCDIC, UTF-16, UTF-16BE, UTF16-LE, Surrogates, and BOMs (Byte -Order Marks), UTF-32, UTF-32BE, UTF32-LE, UCS-2, UCS-4, UTF-7 - -=item Security Implications of Malformed UTF-8 +=item Security Implications of Unicode =item Unicode in Perl on EBCDIC +=item Locales + =item Using Unicode in XS =back +=item BUGS + +=over 4 + +=item Interaction with Locales + +=item Interaction with Extensions + +=item Speed + +=back + =item SEE ALSO =back @@ -2312,8 +2448,14 @@ Order Marks), UTF-32, UTF-32BE, UTF32-LE, UCS-2, UCS-4, UTF-7 =item POSIX-BC +=item Unicode code points versus EBCDIC code points + +=item Remaining Perl Unicode problems in EBCDIC + =item Unicode and UTF +=item Using Encode + =back =item SINGLE OCTET TABLES @@ -2426,6 +2568,8 @@ chcp, dataset access, OS/390, z/OS iconv, locales =item Protecting Your Programs +=item Unicode + =back =item SEE ALSO @@ -2495,49 +2639,59 @@ module (sometimes unnecessary), B the module =item Pragmatic Modules -attributes, autouse, base, blib, bytes, charnames, constant, diagnostics, -encoding, fields, filetest, integer, less, locale, open, overload, sigtrap, -sort, strict, subs, utf8, vars, vmsish, warnings, warnings::register +attributes, attrs, autouse, base, bigint, bignum, bigrat, blib, bytes, +charnames, constant, diagnostics, encoding, fields, filetest, if, integer, +less, locale, open, ops, overload, re, sigtrap, sort, strict, subs, +threads, utf8, vars, vmsish, warnings, warnings::register =item Standard Modules -AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, Benchmark, CGI, -CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, -CGI::Switch, CGI::Util, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, -Carp::Heavy, Class::ISA, Class::Struct, Cwd, DB, Devel::SelfStubber, -Digest, DirHandle, Dumpvalue, English, Env, Exporter, Exporter::Heavy, -ExtUtils::Command, ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install, -ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin, -ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, -ExtUtils::MM_Win32, ExtUtils::MakeMaker, ExtUtils::Manifest, +AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata, +B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug, +B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, +B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, +CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, +CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, +Class::Struct, Config, Cwd, DB, DB_File, Devel::SelfStubber, Digest, +DirHandle, Dumpvalue, Encode, English, Env, Errno, Exporter, +Exporter::Heavy, ExtUtils::Command, ExtUtils::Command::MM, +ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install, +ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_Any, +ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS, +ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_UWIN, +ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, +ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist, -ExtUtils::testlib, Fatal, File::Basename, File::CheckTree, File::Compare, -File::Copy, File::DosGlob, File::Find, File::Path, File::Spec, -File::Spec::Cygwin, File::Spec::Epoc, File::Spec::Functions, +ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree, +File::Compare, File::Copy, File::DosGlob, File::Find, File::Path, +File::Spec, File::Spec::Cygwin, File::Spec::Epoc, File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, FileHandle, -Filter::Simple, FindBin, Getopt::Long, Getopt::Std, I18N::Collate, -I18N::LangTags, I18N::LangTags::List, IPC::Open2, IPC::Open3, -Locale::Constants, Locale::Country, Locale::Currency, Locale::Language, -Locale::Maketext, Locale::Maketext::TPJ13, Math::BigFloat, Math::BigInt, -Math::BigInt::Calc, Math::Complex, Math::Trig, Memoize, -Memoize::AnyDBM_File, Memoize::Expire, Memoize::ExpireFile, -Memoize::ExpireTest, Memoize::NDBM_File, Memoize::SDBM_File, -Memoize::Storable, NEXT, Net::Cmd, Net::Config, Net::Domain, Net::FTP, -Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, Net::SMTP, Net::Time, -Net::hostent, Net::libnetFAQ, Net::netent, Net::protoent, Net::servent, -PerlIO, Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, -Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, -Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color, -Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, Pod::t::basic, -Search::Dict, SelectSaver, SelfLoader, Shell, Switch, Symbol, -Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, -Test::Builder, Test::Harness, Test::More, Test::Simple, Test::Tutorial, -Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs, -Text::Wrap, Thread, Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash, -Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, -Time::tm, UNIVERSAL, Unicode::Collate, Unicode::UCD, User::grent, -User::pwent, Win32 +Filter::Simple, FindBin, Getopt::Long, Getopt::Std, Hash::Util, +I18N::Collate, I18N::LangTags, I18N::LangTags::List, IO, IPC::Open2, +IPC::Open3, Locale::Constants, Locale::Country, Locale::Currency, +Locale::Language, Locale::Maketext, Locale::Maketext::TPJ13, +Locale::Script, Math::BigFloat, Math::BigInt, Math::BigInt::Calc, +Math::BigRat, Math::Complex, Math::Trig, Memoize, Memoize::AnyDBM_File, +Memoize::Expire, Memoize::ExpireFile, Memoize::ExpireTest, +Memoize::NDBM_File, Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, +Net::Cmd, Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, +Net::POP3, Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, +Net::netent, Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, +PerlIO, PerlIO::via::QuotedPrint, Pod::Checker, Pod::Find, Pod::Functions, +Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseLink, +Pod::ParseUtils, Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, +Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, +SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, Socket, +Storable, Switch, Symbol, Term::ANSIColor, Term::Cap, Term::Complete, +Term::ReadLine, Test, Test::Builder, Test::Harness, Test::Harness::Assert, +Test::Harness::Iterator, Test::Harness::Straps, Test::More, Test::Simple, +Test::Tutorial, Text::Abbrev, Text::Balanced, Text::ParseWords, +Text::Soundex, Text::Tabs, Text::Wrap, Thread, Thread::Queue, +Thread::Semaphore, Tie::Array, Tie::File, Tie::Handle, Tie::Hash, +Tie::Memoize, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, +Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, +Unicode::UCD, User::grent, User::pwent, Win32 =item Extension Modules @@ -2549,18 +2703,46 @@ User::pwent, Win32 =item Africa +South Africa + =item Asia +China, India, Indonesia, Israel, Japan, Korea, Philippines, Russian +Federation, Saudi Arabia, Singapore, South Korea, Taiwan, Thailand + =item Central America +Costa Rica + =item Europe +Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, +Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, +Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Russia, +Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United +Kingdom + =item North America +Alberta, Manitoba, Nova Scotia, Ontario, Quebec, Mexico + +=item United States + +Alabama, California, Colorado, Delaware, District of Columbia, Florida, +Illinois, Indiana, Kentucky, Massachusetts, Michigan, New Jersey, New York, +North Carolina, Ohio, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas, +Utah, Virginia, ashington, Wisconsin + =item Oceania +Australia, New Zealand + =item South America +Argentina, Brazil, Chile + +=item RSYNC Mirrors + =back =item Modules: Creation, Use, and Abuse @@ -2715,8 +2897,8 @@ tarball, Announce to the modules list, Announce to clpa, Fix bugs! =back -=head2 perlfaq1 - General Questions About Perl ($Revision: 1.6 $, $Date: -2002/01/31 01:46:23 $) +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.8 $, $Date: +2002/04/07 18:46:13 $) =over 4 @@ -2762,8 +2944,8 @@ Scheme, or Tcl? =back -=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.8 $, -$Date: 2002/02/08 22:31:57 $) +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.13 $, +$Date: 2002/04/26 16:56:35 $) =over 4 @@ -2818,8 +3000,8 @@ References, Tutorials, Task-Oriented, Special Topics =back -=head2 perlfaq3 - Programming Tools ($Revision: 1.15 $, $Date: 2002/02/11 -19:29:52 $) +=head2 perlfaq3 - Programming Tools ($Revision: 1.22 $, $Date: 2002/05/06 +13:11:13 $) =over 4 @@ -2845,7 +3027,7 @@ References, Tutorials, Task-Oriented, Special Topics =item Is there an IDE or Windows Perl Editor? -Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, +Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, OptiPerl, CodeMagicCD, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright, MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha @@ -2903,8 +3085,8 @@ my C program; what am I doing wrong? =back -=head2 perlfaq4 - Data Manipulation ($Revision: 1.14 $, $Date: 2002/02/08 -22:30:23 $) +=head2 perlfaq4 - Data Manipulation ($Revision: 1.25 $, $Date: 2002/05/30 +07:04:25 $) =over 4 @@ -2924,10 +3106,10 @@ Trig functions? =item How do I convert between numeric representations? -B, B, B, B, B, B +How do I convert hexadecimal into decimal, How do I convert from decimal to +hexadecimal, How do I convert from octal to decimal, How do I convert from +decimal to octal, How do I convert from binary to decimal, How do I convert +from decimal to binary =item Why doesn't & work the way I want it to? @@ -2939,6 +3121,8 @@ decimal:>, B =item Why aren't my random numbers random? +=item How do I get a random number between X and Y? + =back =item Data: Dates @@ -3118,8 +3302,8 @@ array of hashes or arrays? =back -=head2 perlfaq5 - Files and Formats ($Revision: 1.9 $, $Date: 2002/02/11 -19:30:21 $) +=head2 perlfaq5 - Files and Formats ($Revision: 1.18 $, $Date: 2002/05/30 +07:04:25 $) =over 4 @@ -3193,7 +3377,7 @@ file. Do I still have to use locking? =item How do I close a file descriptor by number? -=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't +=item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't `C:\temp\foo.exe` work? =item Why doesn't glob("*.*") get all the files? @@ -3211,8 +3395,8 @@ protected files? Isn't this a bug in Perl? =back -=head2 perlfaq6 - Regular Expressions ($Revision: 1.8 $, $Date: 2002/01/31 -04:27:55 $) +=head2 perlfaq6 - Regular Expressions ($Revision: 1.12 $, $Date: 2002/06/01 +22:31:09 $) =over 4 @@ -3278,8 +3462,8 @@ file? =back -=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.7 $, $Date: -2002/01/31 04:27:55 $) +=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.8 $, $Date: +2002/03/26 15:48:32 $) =over 4 @@ -3357,8 +3541,8 @@ is in scope? =back -=head2 perlfaq8 - System Interaction ($Revision: 1.6 $, $Date: 2002/01/28 -04:17:27 $) +=head2 perlfaq8 - System Interaction ($Revision: 1.8 $, $Date: 2002/05/16 +12:41:42 $) =over 4 @@ -3485,7 +3669,7 @@ search path? =back -=head2 perlfaq9 - Networking ($Revision: 1.7 $, $Date: 2002/01/28 04:17:27 +=head2 perlfaq9 - Networking ($Revision: 1.9 $, $Date: 2002/04/07 18:46:13 $) =over 4 @@ -3587,12 +3771,14 @@ i, &, s, r =item The Optimized C Back End -B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, -B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, -B::Stash, B::Terse, B::Xref - =back +=item Module List for the Compiler Suite + +B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, +B::Concise, B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, +B::Stackobj, B::Stash, B::Terse, B::Xref + =item KNOWN PROBLEMS =item AUTHOR @@ -3778,7 +3964,7 @@ C, C, C =item EXAMPLE 8 (Coming Soon) -=item EXAMPLE 9 (Coming Soon) +=item EXAMPLE 9 Passing open files to XSes =item Troubleshooting these Examples @@ -3842,6 +4028,8 @@ C, C, C =item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords +=item The C Keyword + =item Variable-length Parameter Lists =item The C_ARGS: Keyword @@ -3866,6 +4054,8 @@ C, C, C =item The ALIAS: Keyword +=item The OVERLOAD: Keyword + =item The INTERFACE: Keyword =item The INTERFACE_MACRO: Keyword @@ -3964,6 +4154,8 @@ C, C

, C, C =item Creating New Variables +GV_ADDMULTI, GV_ADDWARN + =item Reference Counts and Mortality =item Stashes and Globs @@ -4307,8 +4499,12 @@ CvSTASH, get_cv, Nullcv =item Embedding Functions -load_module, perl_alloc, perl_construct, perl_destruct, perl_free, -perl_parse, perl_run, require_pv +load_module, nothreadhook, perl_alloc, perl_construct, perl_destruct, +perl_free, perl_parse, perl_run, require_pv + +=item Functions in file pp_pack.c + +pack_cat, unpack_str =item Global Variables @@ -4316,8 +4512,8 @@ PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes =item GV Functions -GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, gv_stashpv, -gv_stashsv +GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, +gv_fetchmeth_autoload, gv_stashpv, gv_stashsv =item Handy Values @@ -4328,8 +4524,8 @@ HEf_SVKEY, Nullch, Nullsv get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set, HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey, -hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, hv_store, -hv_store_ent, hv_undef, newHV, Nullhv +hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iternext_flags, hv_iterval, +hv_magic, hv_store, hv_store_ent, hv_undef, newHV, Nullhv =item Magical Functions @@ -4339,8 +4535,8 @@ SvSetSV, SvSetSV_nosteal, SvSHARE =item Memory Management -Copy, Move, New, Newc, NEWSV, Newz, Renew, Renewc, Safefree, savepv, -savepvn, savesharedpv, StructCopy, Zero +Copy, Move, New, Newc, NEWSV, Newz, Poison, Renew, Renewc, Safefree, +savepv, savepvn, savesharedpv, StructCopy, Zero =item Miscellaneous Functions @@ -4373,12 +4569,12 @@ svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG get_sv, looks_like_number, newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVpvn_share, newSVrv, newSVsv, newSVuv, new_vstring, SvCUR, SvCUR_set, SvEND, SvGROW, SvIOK, SvIOKp, SvIOK_notUV, -SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVX, -SvIVx, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, -SvNOK_on, SvNOK_only, SvNV, SvNVx, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, +SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVx, +SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, +SvNOK_on, SvNOK_only, SvNV, SvNVX, SvNVx, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only_UTF8, SvPV, SvPVbyte, SvPVbytex, SvPVbytex_force, SvPVbyte_force, SvPVbyte_nolen, SvPVutf8, -SvPVutf8x, SvPVutf8x_force, SvPVutf8_force, SvPVutf8_nolen, SvPVX, SvPVx, +SvPVutf8x, SvPVutf8x_force, SvPVutf8_force, SvPVutf8_nolen, SvPVx, SvPVX, SvPV_force, SvPV_force_nomg, SvPV_nolen, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SvTRUE, SvTYPE, SvUNLOCK, SvUOK, @@ -4387,21 +4583,22 @@ sv_2cv, sv_2io, sv_2iv, sv_2mortal, sv_2nv, sv_2pvbyte, sv_2pvbyte_nolen, sv_2pvutf8, sv_2pvutf8_nolen, sv_2pv_flags, sv_2pv_nolen, sv_2uv, sv_backoff, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn, sv_catpvn_flags, sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_flags, -sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_collxfrm, sv_dec, -sv_derived_from, sv_eq, sv_force_normal, sv_force_normal_flags, sv_free, -sv_gets, sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_iv, sv_len, -sv_len_utf8, sv_magic, sv_magicext, sv_mortalcopy, sv_newmortal, sv_newref, -sv_nolocking, sv_nosharing, sv_nounlocking, sv_nv, sv_pos_b2u, sv_pos_u2b, -sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force, sv_pvn, sv_pvn_force, -sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n, sv_pvutf8n_force, sv_reftype, -sv_replace, sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, -sv_setnv, sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv, -sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, -sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setref_uv, sv_setsv, -sv_setsv_flags, sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, -sv_true, sv_unmagic, sv_unref, sv_unref_flags, sv_untaint, sv_upgrade, -sv_usepvn, sv_usepvn_mg, sv_utf8_decode, sv_utf8_downgrade, sv_utf8_encode, -sv_utf8_upgrade, sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn, sv_vsetpvfn +sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_collxfrm, +sv_copypv, sv_dec, sv_derived_from, sv_eq, sv_force_normal, +sv_force_normal_flags, sv_free, sv_gets, sv_grow, sv_inc, sv_insert, +sv_isa, sv_isobject, sv_iv, sv_len, sv_len_utf8, sv_magic, sv_magicext, +sv_mortalcopy, sv_newmortal, sv_newref, sv_nolocking, sv_nosharing, +sv_nounlocking, sv_nv, sv_pos_b2u, sv_pos_u2b, sv_pv, sv_pvbyte, +sv_pvbyten, sv_pvbyten_force, sv_pvn, sv_pvn_force, sv_pvn_force_flags, +sv_pvutf8, sv_pvutf8n, sv_pvutf8n_force, sv_reftype, sv_replace, +sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, sv_setnv, +sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpvn, sv_setpvn_mg, +sv_setpv_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, +sv_setref_uv, sv_setsv, sv_setsv_flags, sv_setsv_mg, sv_setuv, sv_setuv_mg, +sv_taint, sv_tainted, sv_true, sv_unmagic, sv_unref, sv_unref_flags, +sv_untaint, sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_utf8_decode, +sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, sv_utf8_upgrade_flags, +sv_uv, sv_vcatpvfn, sv_vsetpvfn =item Unicode Support @@ -4495,25 +4692,11 @@ PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS =item Methods in Detail -char * name;, Size_t size;, IV kind;, PERLIO_K_BUFFERED, PERLIO_K_CANCRLF, -PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, PERLIO_K_RAW, IV -(*Pushed)(pTHX_ PerlIO *f,const char *mode, SV *arg);, IV -(*Popped)(pTHX_ PerlIO *f);, PerlIO * (*Open)(...);, SV * -(*Getarg)(pTHX_ PerlIO *f, CLONE_PARAMS *param, int flags), IV -(*Fileno)(pTHX_ PerlIO *f);, PerlIO * (*Dup)(pTHX_ PerlIO *f, PerlIO *o, -CLONE_PARAMS *param, int flags), SSize_t (*Read)(pTHX_ PerlIO *f, -void *vbuf, Size_t count);, SSize_t (*Unread)(pTHX_ PerlIO *f, const -void *vbuf, Size_t count);, SSize_t (*Write)(PerlIO *f, const void -*vbuf, Size_t count);, IV (*Seek)(pTHX_ PerlIO *f, Off_t -offset, int whence);, Off_t (*Tell)(pTHX_ PerlIO *f);, IV - (*Close)(pTHX_ PerlIO *f);, IV (*Flush)(pTHX_ PerlIO *f);, -IV (*Fill)(pTHX_ PerlIO *f);, IV (*Eof)(pTHX_ PerlIO -*f);, IV (*Error)(pTHX_ PerlIO *f);, void -(*Clearerr)(pTHX_ PerlIO *f);, void (*Setlinebuf)(pTHX_ PerlIO -*f);, STDCHAR * (*Get_base)(pTHX_ PerlIO *f);, Size_t -(*Get_bufsiz)(pTHX_ PerlIO *f);, STDCHAR * (*Get_ptr)(pTHX_ PerlIO -*f);, SSize_t (*Get_cnt)(pTHX_ PerlIO *f);, void -(*Set_ptrcnt)(pTHX_ PerlIO *f,STDCHAR *ptr,SSize_t cnt); +fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF, +PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode, +Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof, +Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, +Set_ptrcnt =item Core Layers @@ -4521,7 +4704,7 @@ IV (*Fill)(pTHX_ PerlIO *f);, IV (*Eof)(pTHX_ PerlIO =item Extension Layers -":encoding", ":Scalar", ":Object" or ":Perl" +":encoding", ":scalar", ":via" =back @@ -4553,8 +4736,8 @@ B, B, B =item Co-existence with stdio -B, B, -B, B +B, B, +B, B =item "Fast gets" Functions @@ -4594,12 +4777,10 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Unicode -=item use Thread for iThreads - -=item make perl_clone optionally clone ops - =item Work out exit/die semantics for threads +=item Better support for nonpreemptive threading systems like GNU pth + =item Typed lexicals for compiler =item Compiler workarounds for Win32 @@ -4624,8 +4805,6 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Locales -=item Thread-safe regexes - =item Arithmetic on non-Arabic numerals =item POSIX Unicode character classes @@ -4636,6 +4815,8 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Sort out the uid-setting mess +=item Custom opcodes + =item DLL Versioning =item Introduce @( and @) @@ -4670,10 +4851,6 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Memory leaks after failed eval -=item pack for IV, UVs, NVs, and long doubles - -=item pack "(stuff)*" - =item bitfields in pack =item Cross compilation @@ -4700,8 +4877,6 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Cache recently used regexps -=item Re-entrant functions - =item Cross-compilation support =item Bit-shifting bitvectors @@ -4756,6 +4931,12 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Make v-strings overloaded objects +=item Allow restricted hash assignment + +=item Should overload be inheritable? + +=item Taint rethink + =back =item Vague ideas @@ -4798,6 +4979,12 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Update auxiliary tools +=item Create debugging macros + +=item truncate to the people + +=item Unicode in Filenames + =back =item Recently done things @@ -4918,10 +5105,6 @@ PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), =item Unicode collation and normalization -=item Create debugging macros - -=item truncate to the people - =item pack/unpack tutorial =back @@ -4951,7 +5134,7 @@ NFS, rsync'ing the patches =item Why rsync the source tree -It's easier to rsync the source tree, It's more recent, It's more reliable +It's easier to rsync the source tree, It's more reliable =item Why rsync the patches @@ -5006,6 +5189,11 @@ finish, 'enter', print F, F, F, F, F, F, F, F, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib +=item Special Make Test Targets + +coretest, test.deparse, minitest, test.third check.third utest.third +ucheck.third, test.torture torturetest, utest ucheck test.utf8 check.utf8 + =back =item EXTERNAL TOOLS FOR DEBUGGING PERL @@ -5022,7 +5210,7 @@ F, F, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -=item Compaq's/Digital's Third Degree +=item Compaq's/Digital's/HP's Third Degree =item PERL_DESTRUCT_LEVEL @@ -5039,6 +5227,8 @@ DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage, -z[ero] +=item Miscellaneous tricks + =item CONCLUSION I @@ -5091,22 +5281,28 @@ I =over 4 +=item Binary Incompatibility + =item 64-bit platforms and malloc =item AIX Dynaloading -=item Attributes for C variables now handled at run-time. +=item Attributes for C variables now handled at run-time =item Socket Extension Dynamic in VMS =item IEEE-format Floating Point Default on OpenVMS Alpha -=item New Unicode Properties +=item New Unicode Semantics (no more C, almost) -=item Perl Parser Stress Tested +=item New Unicode Properties =item REF(...) Instead Of SCALAR(...) +=item pack/unpack D/F recycled + +=item glob() now returns filenames in alphabetical order + =item Deprecations =back @@ -5115,14 +5311,20 @@ I =over 4 +=item Unicode Overhaul + =item PerlIO is Now The Default -=item Safe Signals +=item ithreads -=item Unicode Overhaul +=item Restricted Hashes + +=item Safe Signals =item Understanding of Numbers +=item Arrays now always interpolate into double-quoted strings [561] + =item Miscellaneous Changes =back @@ -5165,7 +5367,7 @@ I =item Changed Internals -=item Security Vulnerability Closed +=item Security Vulnerability Closed [561] =item New Tests @@ -5173,49 +5375,99 @@ I =over 4 -=item AIX +=item The Compiler Suite Is Still Very Experimental -=item Amiga Perl Invoking Mystery +=item Localising Tied Arrays and Hashes Is Broken + +=item Building Extensions Can Fail Because Of Largefiles + +=item Modifying $_ Inside for(..) + +=item mod_perl 1.26 Doesn't Build With Threaded Perl =item lib/ftmp-security tests warn 'system possibly insecure' -=item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12 +=item libwww-perl (LWP) fails base/date #51 -=item HP-UX lib/io_multihomed Fails When LP64-Configured +=item PDL failing some tests -=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured +=item Perl_get_sv + +=item Self-tying Problems + +=item ext/threads/t/libc + +=item Failure of Thread (5.005-style) tests + +=item Timing problems + +=item Tied/Magical Array/Hash Elements Do Not Autovivify + +=item Unicode in package/class and subroutine names does not work + +=back + +=item Platform Specific Problems + +=over 4 + +=item AIX + +=item Alpha systems with old gccs fail several tests + +=item AmigaOS + +=item BeOS + +=item Cygwin "unable to remap" + +=item Cygwin ndbm tests fail on FAT + +=item DJGPP Failures + +=item FreeBSD built with ithreads coredumps reading large directories + +=item FreeBSD Failing locale Test 117 For ISO 8859-15 Locales + +=item IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5 + +=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured + +=item Linux with glibc 2.2.5 fails t/op/int subtest #6 with -Duse64bitint =item Linux With Sfio Fails op/misc Test 48 =item Mac OS X -=item OS/390 +=item Mac OS X dyld undefined symbols -=item op/sprintf tests 129 and 130 +=item OS/2 Test Failures -=item Failure of Thread tests +=item op/sprintf tests 91, 129, and 130 -=item UNICOS +=item Solaris 2.5 -=item UTS +=item Solaris x86 Fails Tests With -Duse64bitint -=item VMS +=item SUPER-UX (NEC SX) -=item Win32 +=item Term::ReadKey not working on Win32 -=item Localising a Tied Variable Leaks Memory +=item UNICOS/mk -=item Localising Tied Arrays and Hashes Is Broken +=item UTS -=item Self-tying of Arrays and Hashes Is Forbidden +=item VOS (Stratus) -=item Building Extensions Can Fail Because Of Largefiles +=item VMS -=item Unicode Support on EBCDIC Still Spotty +=item Win32 -=item The Compiler Suite Is Still Experimental +=item XML::Parser not working + +=item z/OS (OS/390) -=item The Long Double Support Is Still Experimental +=item Unicode Support on EBCDIC Still Spotty =item Seen In Perl 5.7 But Gone Now @@ -5957,9 +6209,6 @@ C is now C =item Known test failures -64-bit builds, Failure of Thread tests, NEXTSTEP 3.3 POSIX test failure, -Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with gcc - =item EBCDIC platforms not fully supported =item UNICOS/mk CC failures during Configure run @@ -6795,6 +7044,8 @@ long, Process terminated by SIG%s =over 4 +=item NOTE + =item SYNOPSIS =back @@ -6847,6 +7098,8 @@ B, B =back +=item PERL 5.8.0 BROKEN IN AMIGAOS + =item AUTHORS =item SEE ALSO @@ -6869,7 +7122,7 @@ R4 x86, R4 PPC =item Contact Information -=item Update 2001-12-26 +=item Update 2002-05-30 =back @@ -6968,12 +7221,13 @@ C, I, Permissions =item Optional Libraries for Perl on Cygwin C<-lcrypt>, C<-lgdbm> (C), C<-ldb> (C), -C<-lcygipc> (C) +C<-lcygipc> (C), C<-lutil> =item Configure-time Options for Perl on Cygwin C<-Uusedl>, C<-Uusemymalloc>, C<-Uuseperlio>, C<-Dusemultiplicity>, -C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles> +C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles>, +C<-Dmksymlinks> =item Suspicious Warnings on Cygwin @@ -6997,6 +7251,8 @@ I, Win9x and C, Compiler/Preprocessor defines =item File Permissions on Cygwin +=item NDBM_File does not work on FAT filesystems + =item Script Portability on Cygwin Pathnames, Text/Binary, F<.exe>, chown(), Miscellaneous @@ -7106,16 +7362,8 @@ DJGPP, Pthreads =item STARTING PERL ON EPOC -=item STOPPING PERL ON EPOC - -=item USING PERL ON EPOC - =over 4 -=item I/O Redirection on Epoc - -=item PATH Names on Epoc - =item Editors on Epoc =item Features of Perl on Epoc @@ -7134,6 +7382,26 @@ DJGPP, Pthreads =back +=head2 perlfreebsd, README.freebsd - Perl version 5 on FreeBSD systems + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item FreeBSD core dumps from readdir_r with ithreads + +=item $^X doesn't always contain a full path in FreeBSD + +=item Perl will no longer be part of "base FreeBSD" + +=back + +=item AUTHOR + +=back + =head2 perlhpux, README.hpux - Perl version 5 on Hewlett-Packard Unix (HP-UX) systems @@ -7165,12 +7433,16 @@ DJGPP, Pthreads =item The HP ANSI C Compiler +=item The GNU C Compiler + =item Using Large Files with Perl on HP-UX =item Threaded Perl on HP-UX =item 64-bit Perl on HP-UX +=item Oracle on HP-UX + =item GDBM and Threads on HP-UX =item NFS filesystems and utime(2) on HP-UX @@ -7205,6 +7477,32 @@ DJGPP, Pthreads =back +=head2 perlirix, README.irix - Perl version 5 on Irix systems + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Building 32-bit Perl in Irix + +=item Building 64-bit Perl in Irix + +=item About Compiler Versions of Irix + +=item Linker Problems in Irix + +=item Malloc in Irix + +=item Building with threads in Irix + +=back + +=item AUTHOR + +=back + =head2 perlmachten, README.machten - Perl version 5 on Power MachTen systems @@ -7307,7 +7605,7 @@ public_html/feedback.cgi, src/perl-5.6.0-mpe =item Setup -Buildtype.bat, SetNWBld.bat, MPKBuild.bat +SetNWBld.bat, Buildtype.bat =item Make @@ -7321,8 +7619,6 @@ Buildtype.bat, SetNWBld.bat, MPKBuild.bat =item Build new extensions -=item Known Issues - =item Acknowledgements =item Authors @@ -7413,7 +7709,7 @@ Perl manual in F<.INF> format, Pdksh =item GNU C files -=item F<.PDF> files +=item F files =item C docs @@ -7490,11 +7786,13 @@ C, C, OS2::SysInfo(), OS2::BootDrive(), C, C, C, C, C, -OS2::get_control87(), C +OS2::get_control87(), C, +C =item Prebuilt variables: -$OS2::emx_rev, $OS2::emx_env, $OS2::os_ver +$OS2::emx_rev, $OS2::emx_env, $OS2::os_ver, $OS2::is_aout, $OS2::can_fork, +$OS2::nsyserror =item Misfeatures @@ -7507,7 +7805,10 @@ C =item Centralized management of resources -C, C +C, C, Treating errors reported by OS/2 API, +C, C, C, +C, C, +C, C, Loading DLLs and ordinals in DLLs =back @@ -7553,6 +7854,8 @@ C, C =over 4 +=item Text-mode filehandles + =item Priorities =item DLL name mangling: pre 5.6.2 @@ -7810,6 +8113,10 @@ Digital UNIX formerly known as DEC OSF/1) systems =item Testing Perl on Tru64 +=item ext/ODBM_File/odbm Test Failing With Static Builds + +=item Perl Fails Because Of Unresolved Symbol sockatmark + =item AUTHOR =back @@ -7969,8 +8276,12 @@ LIST, waitpid PID,FLAGS =item Restrictions of Perl on VOS +=item Handling of underflow and overflow + =back +=item TEST STATUS + =item SUPPORT STATUS =item AUTHOR @@ -7979,7 +8290,7 @@ LIST, waitpid PID,FLAGS =back -=head2 perlwin32 - Perl under Win32 +=head2 perlwin32 - Perl under Windows =over 4 @@ -7991,7 +8302,8 @@ LIST, waitpid PID,FLAGS =item Setting Up Perl on Win32 -Make, Command Shell, Borland C++, Microsoft Visual C++, Mingw32 with GCC +Make, Command Shell, Borland C++, Microsoft Visual C++, Microsoft Platform +SDK 64-bit Compiler, Mingw32 with GCC =item Building @@ -8003,7 +8315,11 @@ Make, Command Shell, Borland C++, Microsoft Visual C++, Mingw32 with GCC Environment Variables, File Globbing, Using perl from the command line, Building Extensions, Command-line Wildcard Expansion, Win32 Specific -Extensions, Running Perl Scripts, Miscellaneous Things +Extensions, Notes on 64-bit Windows + +=item Running Perl Scripts + +Miscellaneous Things =back @@ -8058,8 +8374,8 @@ data structures between threads =item FUNCTIONS -share VARIABLE, lock VARIABLE, unlock VARIABLE, cond_wait VARIABLE, -cond_signal VARIABLE, cond_broadcast VARIABLE +share VARIABLE, lock VARIABLE, cond_wait VARIABLE, cond_signal VARIABLE, +cond_broadcast VARIABLE =item NOTES @@ -8081,19 +8397,21 @@ from perl =item DESCRIPTION $thread = threads->create(function, LIST), $thread->join, $thread->detach, -threads->self, $thread->tid +threads->self, $thread->tid, threads->object( tid ), threads->yield();, +threads->list();, async BLOCK; -=item TODO +=item WARNINGS -Fix so the return value is returned when you join, Add join_all, Fix memory -leaks! +A thread exited while %d other threads were still running -=item AUTHOR and COPYRIGHT +=item TODO =item BUGS -creating a thread from within a thread is unsafe under win32, -PERL_OLD_SIGNALS are not threadsafe, will not be +Parent-Child threads, Returning objects, Creating threads inside BEGIN +blocks, PERL_OLD_SIGNALS are not threadsafe, will not be + +=item AUTHOR and COPYRIGHT =item SEE ALSO @@ -8185,6 +8503,114 @@ method, locked =back +=head2 bigint - Transparent big integer support for Perl + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item OPTIONS + +a or accuracy, p or precision, t or trace, l or lib, v or version + +=item MATH LIBRARY + +=item INTERNAL FORMAT + +=item SIGN + +=item METHODS + +=back + +=item MODULES USED + +=item EXAMPLES + +=item LICENSE + +=item SEE ALSO + +=item AUTHORS + +=back + +=head2 bignum - Transparent BigNumber support for Perl + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item OPTIONS + +a or accuracy, p or precision, t or trace, l or lib, v or version + +=item MATH LIBRARY + +=item INTERNAL FORMAT + +=item SIGN + +=item METHODS + +=back + +=item MODULES USED + +=item EXAMPLES + +=item LICENSE + +=item SEE ALSO + +=item AUTHORS + +=back + +=head2 bigrat - Transparent BigNumber/BigRational support for Perl + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item MODULES USED + +=item MATH LIBRARY + +=item SIGN + +=item METHODS + +=back + +=item EXAMPLES + + perl -Mbigrat -le 'print sqrt(33)' + perl -Mbigrat -le 'print 2*255' + perl -Mbigrat -le 'print 4.5+2*255' + perl -Mbigrat -le 'print 3/7 + 5/7 + 8/3' + perl -Mbigrat -le 'print 12->is_odd()'; + +=item LICENSE + +=item SEE ALSO + +=item AUTHORS + +=back + =head2 blib - Use MakeMaker's uninstalled version of a package =over 4 @@ -8213,7 +8639,7 @@ semantics =back =head2 charnames - define character names for C<\N{named}> string literal -escapes. +escapes =over 4 @@ -8225,7 +8651,9 @@ escapes. =item charnames::viacode(code) -=item charnames::vianame(code) +=item charnames::vianame(name) + +=item ALIASES =item ILLEGAL CHARACTERS @@ -8290,14 +8718,34 @@ diagnostics =back -=head2 encoding - pragma to control the conversion of legacy data into -Unicode +=head2 encoding - allows you to write your script in non-ascii or non-utf8 =over 4 =item SYNOPSIS -=item DESCRIPTION +=item ABSTRACT + +=item USAGE + +use encoding [I] ;, use encoding I [ STDIN =E +I ...] ;, no encoding; + +=item CAVEATS + +=over 4 + +=item NOT SCOPED + +=item DO NOT MIX MULTIPLE ENCODINGS + +=back + +=item Non-ASCII Identifiers and Filter option + +use encoding I Filter=E1; + +=item EXAMPLE - Greekperl =item KNOWN PROBLEMS @@ -8390,6 +8838,8 @@ point =item CAVEATS +=item NOTES + =item SEE ALSO =item AUTHOR @@ -8407,7 +8857,7 @@ operations =back -=head2 open - perl pragma to set default disciplines for input and output +=head2 open - perl pragma to set default PerlIO layers for input and output =over 4 @@ -8582,6 +9032,8 @@ B, B, I, I =item DESCRIPTION +=item CAVEATS + =back =head2 strict - Perl pragma to restrict unsafe constructs @@ -8616,19 +9068,21 @@ from perl =item DESCRIPTION $thread = threads->create(function, LIST), $thread->join, $thread->detach, -threads->self, $thread->tid +threads->self, $thread->tid, threads->object( tid ), threads->yield();, +threads->list();, async BLOCK; -=item TODO +=item WARNINGS -Fix so the return value is returned when you join, Add join_all, Fix memory -leaks! +A thread exited while %d other threads were still running -=item AUTHOR and COPYRIGHT +=item TODO =item BUGS -creating a thread from within a thread is unsafe under win32, -PERL_OLD_SIGNALS are not threadsafe, will not be +Parent-Child threads, Returning objects, Creating threads inside BEGIN +blocks, PERL_OLD_SIGNALS are not threadsafe, will not be + +=item AUTHOR and COPYRIGHT =item SEE ALSO @@ -8647,8 +9101,8 @@ structures between threads =item FUNCTIONS -share VARIABLE, lock VARIABLE, unlock VARIABLE, cond_wait VARIABLE, -cond_signal VARIABLE, cond_broadcast VARIABLE +share VARIABLE, lock VARIABLE, cond_wait VARIABLE, cond_signal VARIABLE, +cond_broadcast VARIABLE =item NOTES @@ -8673,11 +9127,14 @@ code =item Utility functions -$num_octets = utf8::upgrade($string);, utf8::downgrade($string[, CHECK]), -utf8::encode($string), $flag = utf8::decode($string) +$num_octets = utf8::upgrade($string);, utf8::downgrade($string[, FAIL_OK]), +utf8::encode($string), $flag = utf8::decode($string), $flag = +utf8::valid(STRING) =back +=item BUGS + =item SEE ALSO =back @@ -8974,7 +9431,7 @@ main_cv, init_av, begin_av, end_av, main_root, main_start, comppadlist, regex_padav, sv_undef, sv_yes, sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG), walksymtable(SYMREF, METHOD, RECURSE, PREFIX), svref_2object(SV), ppname(OPNUM), hash(STR), cast_I32(I), minus_c, -cstring(STR), class(OBJ), threadsv_names +cstring(STR), perlstring(STR), class(OBJ), threadsv_names =item AUTHOR @@ -9116,6 +9573,8 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =item DESCRIPTION +=item EXAMPLE + =item OPTIONS B<-basic>, B<-exec>, B<-tree>, B<-compact>, B<-loose>, B<-vt>, B<-ascii>, @@ -9127,8 +9586,8 @@ B<-terse>, B<-linenoise>, B<-debug>, B<-env> B<(x(>IB<;>IB<)x)>, B<(*(>IB<)*)>, B<(*(>IB<;>IB<)*)>, B<(?(>IB<#>IIB<)?)>, B<#>I, B<#>II, B<~>, B<#addr>, B<#arg>, B<#class>, -B<#classym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>, -B<#flags>, B<#flagval>, B<#hyphenseq>, B<#label>, B<#lastaddr>, B<#name>, +B<#classsym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>, +B<#flags>, B<#flagval>, B<#hyphseq>, B<#label>, B<#lastaddr>, B<#name>, B<#NAME>, B<#next>, B<#nextaddr>, B<#noise>, B<#private>, B<#privval>, B<#seq>, B<#seqnum>, B<#sibaddr>, B<#svaddr>, B<#svclass>, B<#svval>, B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum> @@ -9245,6 +9704,8 @@ B<-u Package> =item IMPLEMENTATION +=item BUGS + =item AUTHOR =back @@ -9297,7 +9758,7 @@ B<-u Package> =item OPTIONS -C<-oFILENAME>, C<-r>, C<-D[tO]> +C<-oFILENAME>, C<-r>, C<-d>, C<-D[tO]> =item BUGS @@ -9568,8 +10029,7 @@ B =item CREATING A CLICKABLE IMAGE BUTTON -B, 3. The third option (-align, optional) is an alignment -type, and may be TOP, BOTTOM or MIDDLE +B =item CREATING A JAVASCRIPT ACTION BUTTON @@ -9599,9 +10059,8 @@ the

tag =item FETCHING ENVIRONMENT VARIABLES B, B, B, B, -B, B, B Return the script -name as a partial URL, for self-refering scripts, B, B, B, B, B, +B, B, B, B, +B, B, B, B, B, B, B, B, B, B, B @@ -10084,12 +10543,11 @@ C<_a>, C<_exe>, C<_o> C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C +C, C =item b -C, C, C, C, C, C, -C, C +C, C, C, C, C, C, C =item c @@ -10098,38 +10556,48 @@ C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C +C, C, C, C, C, +C, C, C =item d C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, @@ -10138,53 +10606,58 @@ C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, -C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, +C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, C, C, C, -C, C, C +C, C, C, C =item e -C, C, C, C, C, C, -C, C, C, C +C, C, C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C =item f @@ -10194,8 +10667,15 @@ C =item g -C, C, C, C, C, -C, C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C =item h @@ -10205,9 +10685,9 @@ C, C, C, C =item i C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, @@ -10239,8 +10719,9 @@ C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +C, C, C, C, +C, C, C, C, C, C, +C =item m @@ -10257,8 +10738,9 @@ C, C, C, C, C, C C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +C, C, C, C, +C, C, C, C, C, +C, C =item o @@ -10283,30 +10765,35 @@ C, C =item r -C, C, C, C, C, -C, C, C, C, C +C, C, C, C, C, +C, C, C, C, C, +C, C, C =item s C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C =item t C, C, C, C, C, C, C, -C, C, C, C, C, C +C, C, C, C, C, C, C, +C =item u @@ -10786,8 +11273,8 @@ stopDbSignal =item Methods -dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump, -veryCompact, set, get +dumpValue, dumpValues, stringify, dumpvars, set_quote, set_unctrl, +compactDump, veryCompact, set, get =back @@ -10830,83 +11317,85 @@ Perl code =item SYNOPSIS -=item DESCRIPTION - =over 4 -=item TERMINOLOGY +=item Table of Contents =back -=item ENCODINGS +=item DESCRIPTION =over 4 -=item Characteristics of an Encoding +=item TERMINOLOGY -=item Types of Encodings +=back -Fixed length 8-bit (or less) encodings, Fixed length 16-bit encodings, -Fixed length 32-bit encodings, Multi-byte encodings, "Escape" encodings +=item PERL ENCODING API -=item Specifying Encodings +$octets = encode(ENCODING, $string [, CHECK]), $string = decode(ENCODING, +$octets [, CHECK]), [$length =] from_to($octets, FROM_ENC, TO_ENC [, +CHECK]), $octets = encode_utf8($string);, $string = decode_utf8($octets [, +CHECK]); -1. By name, 2. As an object +=over 4 -=item Encoding Names +=item Listing available encodings -The MIME name as defined in IETF RFCs, The name in the IANA registry, The -name used by the organization that defined it +=item Defining Aliases =back -=item PERL ENCODING API +=item Encoding via PerlIO -=over 4 +=item Handling Malformed Data -=item Generic Encoding Interface +I = Encode::FB_DEFAULT ( == 0), I = Encode::FB_CROAK ( == 1), +I = Encode::FB_QUIET, I = Encode::FB_WARN, perlqq mode +(I = Encode::FB_PERLQQ), HTML charref mode (I = +Encode::FB_HTMLCREF), XML charref mode (I = Encode::FB_XMLCREF), The +bitmask -=item Handling Malformed Data +=over 4 -Scheme 1, Scheme 2, Other Schemes +=item Unimplemented fallback schemes -=item UTF-8 / utf8 +=back -=item Other Encodings of Unicode +=item Defining Encodings -=item Listing available encodings +=item The UTF-8 flag -=item Defining Aliases +Goal #1:, Goal #2:, Goal #3:, Goal #4: -As a simple string, As a qr// compiled regular expression, e.g.:, As a code -reference, e.g.: +=over 4 -=item Defining Encodings +=item Messing with Perl's Internals + +is_utf8(STRING [, CHECK]), _utf8_on(STRING), _utf8_off(STRING) =back -=item Encoding and IO +=item SEE ALSO + +=item MAINTAINER -=item Encoding How to ... +=back -IO with mixed content (faking iso-2020-*), MIME's Content-Length:, UTF-8 -strings in binary data, Perl/Encode wrappers on non-Unicode XS modules +=head2 Encode::Alias - alias definitions to encodings -=item Messing with Perl's Internals +=over 4 -is_utf8(STRING [, CHECK]), valid_utf8(STRING) +=item SYNOPSIS -=item IMPLEMENTATION CLASSES +=item DESCRIPTION --Ename, -Enew_sequence, -Eencode($string,$check), --Edecode($octets,$check) +As a simple string, As a qr// compiled regular expression, e.g.:, As a code +reference, e.g.: =over 4 -=item Compiled Encodings - -.enc, .ucm, .ucm, .c, .xs, ascii and iso-8859-*, IBM-1047 and two other -variants of EBCDIC, symbol and dingbats as used by Tk on X11 +=item Alias overloading =back @@ -10914,54 +11403,57 @@ variants of EBCDIC, symbol and dingbats as used by Tk on X11 =back -=head2 Encode::Tcl - Tcl encodings - -=head2 Encode::lib::Encode::Tcl, Encode::Tcl - Tcl encodings - -=head2 Encode::lib::EncodeFormat, EncodeFormat - the format of encoding -tables of the Encode extension +=head2 Encode::Byte - Single Byte Encodings =over 4 -=item DESCRIPTION +=item SYNOPSIS -[1] B, [2] B, [3] B, [4] B +=item ABSTRACT -=item KEYWORDS +=item DESCRIPTION -=item COPYRIGHT +=item SEE ALSO =back -=head2 EncodeFormat - the format of encoding tables of the Encode extension +=head2 Encode::CJKConstants -- Internally used by Encode::??::ISO_2022_* + +=head2 Encode::CN - China-based Chinese Encodings =over 4 +=item SYNOPSIS + =item DESCRIPTION -[1] B, [2] B, [3] B, [4] B +=item NOTES -=item KEYWORDS +=item BUGS -=item COPYRIGHT +=item SEE ALSO =back -=head2 English - use nice English (or awk) names for ugly punctuation -variables +=head2 Encode::CN::HZ -- internally used by Encode::CN + +=head2 Encode::Config -- internally used by Encode + +=head2 Encode::EBCDIC - EBCDIC Encodings =over 4 =item SYNOPSIS +=item ABSTRACT + =item DESCRIPTION -=item PERFORMANCE +=item SEE ALSO =back -=head2 Env - perl module that imports environment variables as scalars or -arrays +=head2 Encode::Encoding - Encode Implementation Base Class =over 4 @@ -10969,19 +11461,656 @@ arrays =item DESCRIPTION -=item LIMITATIONS +=over 4 -=item AUTHOR +=item Methods you should implement -=back +-Eencode($string [,$check]), -Edecode($octets [,$check]) -=head2 Errno - System errno constants +=item Other methods defined in Encode::Encodings -=over 4 +-Ename, -Enew_sequence, -Eperlio_ok(), -Eneeds_lines() -=item SYNOPSIS +=item Example: Encode::ROT13 -=item DESCRIPTION +=back + +=item Why the heck Encode API is different? + +=over 4 + +=item Compiled Encodings + +=back + +=item SEE ALSO + +Scheme 1, Scheme 2, Other Schemes + +=back + +=head2 Encode::Guess -- Guesses encoding from data + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +Encode::Guess->set_suspects, Encode::Guess->add_suspects, +Encode::decode("Guess" ...), Encode::Guess->guess($data), +guess_encoding($data, [, I]) + +=item CAVEATS + +=item TO DO + +=item SEE ALSO + +=back + +=head2 Encode::JP - Japanese Encodings + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +=item Note on ISO-2022-JP(-1)? + +=item BUGS + +=item SEE ALSO + +=back + +=head2 Encode::JP::H2Z -- internally used by Encode::JP::2022_JP* + +=head2 Encode::JP::JIS7 -- internally used by Encode::JP + +=head2 Encode::KR - Korean Encodings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item BUGS + +=item SEE ALSO + +=back + +=head2 Encode::KR::2022_KR -- internally used by Encode::KR + +=head2 Encode::MIME::Header -- MIME 'B' and 'Q' header encoding + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +=item BUGS + +=item SEE ALSO + +=back + +=head2 Encode::PerlIO -- a detailed document on Encode and PerlIO + +=over 4 + +=item Overview + +=item How does it work? + +=item BUGS + +=over 4 + +=item Workaround + +=item How can I tell whether my encoding fully supports PerlIO ? + +=back + +=item SEE ALSO + +=back + +=head2 Encode::Supported -- Encodings supported by Encode + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Encoding Names + +=back + +=item Supported Encodings + +=over 4 + +=item Built-in Encodings + +=item Encode::Unicode -- other Unicode encodings + +=item Encode::Byte -- Extended ASCII + +ISO-8859 and corresponding vendor mappings, KOI8 - De Facto Standard for +the Cyrillic world, gsm0338 - Hentai Latin 1 + +=item CJK: Chinese, Japanese, Korean (Multibyte) + +Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea, +Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN, +Encode::JIS2K -- JIS X 0213 encodings via CPAN + +=item Miscellaneous encodings + +Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess + +=back + +=item Unsupported encodings + + ISO-2022-JP-2 [RFC1554], ISO-2022-CN [RFC1922], Various HP-UX encodings, +Cyrillic encoding ISO-IR-111, ISO-8859-8-1 [Hebrew], ISIRI 3342, Iran +System, ISIRI 2900 [Farsi], Thai encoding TCVN, Vietnamese encodings VPS, +Various Mac encodings, (Mac) Indic encodings + +=item Encoding vs. Charset -- terminology + +=item Encoding Classification (by Anton Tagunov and Dan Kogai) + +=over 4 + +=item Microsoft-related naming mess + +KS_C_5601-1987, GB2312, Big5, Shift_JIS + +=back + +=item Glossary + +character repertoire, coded character set (CCS), character encoding scheme +(CES), charset (in MIME context), EUC, ISO-2022, UCS, UCS-2, Unicode, UTF, +UTF-16 + +=item See Also + +=item References + +ECMA, ECMA-035 (eq C), IANA, Assigned Charset Names by IANA, ISO, +RFC, UC, Unicode Glossary + +=over 4 + +=item Other Notable Sites + +czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: +"Introduction to i18n" + +=item Offline sources + +C by Ken Lunde + +=back + +=back + +=head2 Encode::Symbol - Symbol Encodings + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 Encode::TW - Taiwan-based Chinese Encodings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item NOTES + +=item BUGS + +=item SEE ALSO + +=back + +=head2 Encode::Unicode -- Various Unicode Transformation Formats + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +L says:, Quick Reference + +=item Size, Endianness, and BOM + +=over 4 + +=item by size + +=item by endianness + +BOM as integer when fetched in network byte order + +=back + +=item Surrogate Pairs + +=item SEE ALSO + +=back + +=head2 Encode::lib::Encode::Alias, Encode::Alias - alias definitions to +encodings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +As a simple string, As a qr// compiled regular expression, e.g.:, As a code +reference, e.g.: + +=over 4 + +=item Alias overloading + +=back + +=item SEE ALSO + +=back + +=head2 Encode::lib::Encode::CJKConstants, Encode::CJKConstants.pm -- +Internally used by Encode::??::ISO_2022_* + +=head2 Encode::lib::Encode::CN::HZ, Encode::CN::HZ -- internally used by +Encode::CN + +=head2 Encode::lib::Encode::Config, Encode::Config -- internally used by +Encode + +=head2 Encode::lib::Encode::Encoding, Encode::Encoding - Encode +Implementation Base Class + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Methods you should implement + +-Eencode($string [,$check]), -Edecode($octets [,$check]) + +=item Other methods defined in Encode::Encodings + +-Ename, -Enew_sequence, -Eperlio_ok(), -Eneeds_lines() + +=item Example: Encode::ROT13 + +=back + +=item Why the heck Encode API is different? + +=over 4 + +=item Compiled Encodings + +=back + +=item SEE ALSO + +Scheme 1, Scheme 2, Other Schemes + +=back + +=head2 Encode::lib::Encode::Guess, Encode::Guess -- Guesses encoding from +data + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +Encode::Guess->set_suspects, Encode::Guess->add_suspects, +Encode::decode("Guess" ...), Encode::Guess->guess($data), +guess_encoding($data, [, I]) + +=item CAVEATS + +=item TO DO + +=item SEE ALSO + +=back + +=head2 Encode::lib::Encode::JP::H2Z, Encode::JP::H2Z -- internally used by +Encode::JP::2022_JP* + +=head2 Encode::lib::Encode::JP::JIS7, Encode::JP::JIS7 -- internally used +by Encode::JP + +=head2 Encode::lib::Encode::KR::2022_KR, Encode::KR::2022_KR -- internally +used by Encode::KR + +=head2 Encode::lib::Encode::MIME::Header, Encode::MIME::Header -- MIME 'B' +and 'Q' header encoding + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +=item BUGS + +=item SEE ALSO + +=back + +=head2 Encode::lib::Encode::PerlIO, Encode::PerlIO -- a detailed document +on Encode and PerlIO + +=over 4 + +=item Overview + +=item How does it work? + +=item BUGS + +=over 4 + +=item Workaround + +=item How can I tell whether my encoding fully supports PerlIO ? + +=back + +=item SEE ALSO + +=back + +=head2 Encode::lib::Encode::Supported, Encode::Supported -- Encodings +supported by Encode + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Encoding Names + +=back + +=item Supported Encodings + +=over 4 + +=item Built-in Encodings + +=item Encode::Unicode -- other Unicode encodings + +=item Encode::Byte -- Extended ASCII + +ISO-8859 and corresponding vendor mappings, KOI8 - De Facto Standard for +the Cyrillic world, gsm0338 - Hentai Latin 1 + +=item CJK: Chinese, Japanese, Korean (Multibyte) + +Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea, +Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN, +Encode::JIS2K -- JIS X 0213 encodings via CPAN + +=item Miscellaneous encodings + +Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess + +=back + +=item Unsupported encodings + + ISO-2022-JP-2 [RFC1554], ISO-2022-CN [RFC1922], Various HP-UX encodings, +Cyrillic encoding ISO-IR-111, ISO-8859-8-1 [Hebrew], ISIRI 3342, Iran +System, ISIRI 2900 [Farsi], Thai encoding TCVN, Vietnamese encodings VPS, +Various Mac encodings, (Mac) Indic encodings + +=item Encoding vs. Charset -- terminology + +=item Encoding Classification (by Anton Tagunov and Dan Kogai) + +=over 4 + +=item Microsoft-related naming mess + +KS_C_5601-1987, GB2312, Big5, Shift_JIS + +=back + +=item Glossary + +character repertoire, coded character set (CCS), character encoding scheme +(CES), charset (in MIME context), EUC, ISO-2022, UCS, UCS-2, Unicode, UTF, +UTF-16 + +=item See Also + +=item References + +ECMA, ECMA-035 (eq C), IANA, Assigned Charset Names by IANA, ISO, +RFC, UC, Unicode Glossary + +=over 4 + +=item Other Notable Sites + +czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: +"Introduction to i18n" + +=item Offline sources + +C by Ken Lunde + +=back + +=back + +=head2 Encode::lib::Encoder, Encode::Encoder -- Object Oriented Encoder + +=over 4 + +=item SYNOPSIS + + use Encode::Encoder; + # Encode::encode("ISO-8859-1", $data); + Encode::Encoder->new($data)->iso_8859_1; # OOP way + # shortcut + use Encode::Encoder qw(encoder); + encoder($data)->iso_8859_1; + # you can stack them! + encoder($data)->iso_8859_1->base64; # provided base64() is defined + # you can use it as a decoder as well + encoder($base64)->bytes('base64')->latin1; + # stringified + print encoder($data)->utf8->latin1; # prints the string in latin1 + # numified + encoder("\x{abcd}\x{ef}g")->utf8 == 6; # true. bytes::length($data) + +=item ABSTRACT + +=item Description + +=over 4 + +=item Predefined Methods + +$e = Encode::Encoder-Enew([$data, $encoding]);, encoder(), +$e-Edata([$data]), $e-Eencoding([$encoding]), +$e-Ebytes([$encoding]) + +=item Example: base64 transcoder + +=item Operator Overloading + +=back + +=item SEE ALSO + +=back + +=head2 Encodencoding, encoding - allows you to write your script in +non-ascii or non-utf8 + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item USAGE + +use encoding [I] ;, use encoding I [ STDIN =E +I ...] ;, no encoding; + +=item CAVEATS + +=over 4 + +=item NOT SCOPED + +=item DO NOT MIX MULTIPLE ENCODINGS + +=back + +=item Non-ASCII Identifiers and Filter option + +use encoding I Filter=E1; + +=item EXAMPLE - Greekperl + +=item KNOWN PROBLEMS + +=item SEE ALSO + +=back + +=head2 Encoder, Encode::Encoder -- Object Oriented Encoder + +=over 4 + +=item SYNOPSIS + + use Encode::Encoder; + # Encode::encode("ISO-8859-1", $data); + Encode::Encoder->new($data)->iso_8859_1; # OOP way + # shortcut + use Encode::Encoder qw(encoder); + encoder($data)->iso_8859_1; + # you can stack them! + encoder($data)->iso_8859_1->base64; # provided base64() is defined + # you can use it as a decoder as well + encoder($base64)->bytes('base64')->latin1; + # stringified + print encoder($data)->utf8->latin1; # prints the string in latin1 + # numified + encoder("\x{abcd}\x{ef}g")->utf8 == 6; # true. bytes::length($data) + +=item ABSTRACT + +=item Description + +=over 4 + +=item Predefined Methods + +$e = Encode::Encoder-Enew([$data, $encoding]);, encoder(), +$e-Edata([$data]), $e-Eencoding([$encoding]), +$e-Ebytes([$encoding]) + +=item Example: base64 transcoder + +=item Operator Overloading + +=back + +=item SEE ALSO + +=back + +=head2 English - use nice English (or awk) names for ugly punctuation +variables + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item PERFORMANCE + +=back + +=head2 Env - perl module that imports environment variables as scalars or +arrays + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item LIMITATIONS + +=item AUTHOR + +=back + +=head2 Errno - System errno constants + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION =item CAVEATS @@ -11084,6 +12213,18 @@ test_f file =back +=head2 ExtUtils::Command::MM - Commands for the MM's to use in Makefiles + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +B + +=back + =head2 ExtUtils::Constant - generate XS code to import C header constants =over 4 @@ -11102,6 +12243,8 @@ IV, UV, NV, PV, PVN, SV, YES, NO, UNDEF C_stringify NAME +perl_stringify NAME + constant_types memEQ_clause NAME, CHECKED_AT, INDENT @@ -11119,7 +12262,7 @@ dump_names dogfood C_constant, name, type, value, macro, default, pre, post, def_pre =item -def_post +def_post, utf8 XS_constant PACKAGE, TYPES, SUBNAME, C_SUBNAME @@ -11198,7 +12341,8 @@ packlist(), version() =item DESCRIPTION -For static extensions, For dynamic extensions, For dynamic extensions +For static extensions, For dynamic extensions at build/link time, For +dynamic extensions at load time =over 4 @@ -11224,6 +12368,66 @@ For static extensions, For dynamic extensions, For dynamic extensions =back +=head2 ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 ExtUtils::MM_Any - Platform agnostic MM methods + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item Inherently Cross-Platform Methods + +=over 4 + +=item File::Spec wrappers B + +canonpath + +=back + +=back + +catdir + +catfile + +curdir + +file_name_is_absolute + +path + +rootdir + +updir + +=over 4 + +=item Thought To Be Cross-Platform Methods + +test_via_harness + +=back + +test_via_script + +=over 4 + +=item AUTHOR + +=back + =head2 ExtUtils::MM_BeOS - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11250,7 +12454,33 @@ canonpath, cflags, manifypods, perl_archive =back -=head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in +=head2 ExtUtils::MM_DOS - DOS specific subclass of ExtUtils::MM_Unix + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Overridden methods + +B + +=back + +=back + +=over 4 + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 ExtUtils::MM_MacOS - methods to override UN*X behaviour in ExtUtils::MakeMaker =over 4 @@ -11261,41 +12491,54 @@ ExtUtils::MakeMaker =back -catfile +maybe_command -constants (o) +guess_name -static_lib (o) +macify -dynamic_bs (o) +patternify -dynamic_lib (o) +init_main -canonpath +init_others -perl_script +init_dirscan -pm_to_blib +libscan (o) -test_via_harness (o) +constants (o) -tool_autosplit (override) +static (o) -tools_other (o) +dlsyms (o) -xs_o (o) +dynamic (o) -top_targets (o) +clean (o) -htmlifypods (o) +realclean (o) -manifypods (o) +rulez (o) -dist_ci (o) +processPL (o) -dist_core (o) +=head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in +ExtUtils::MakeMaker -pasthru (o) +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +constants (o) + +static_lib (o) + +dynamic_lib (o) =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11312,7 +12555,7 @@ ExtUtils::MakeMaker perl_archive_after -=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker +=head2 ExtUtils::MM_UWIN - U/WIN specific subclass of ExtUtils::MM_Unix =over 4 @@ -11320,27 +12563,35 @@ perl_archive_after =item DESCRIPTION -=item METHODS - =over 4 -=item Preloaded methods +=item Overridden methods -canonpath +B + +=back =back +=over 4 + +=item AUTHOR + +=item SEE ALSO + =back -catdir +=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker + +=over 4 -catfile +=item SYNOPSIS -curdir +=item DESCRIPTION -rootdir +=item METHODS -updir +=back =over 4 @@ -11374,9 +12625,9 @@ dist_ci (o) dist_core (o) -dist_dir (o) +dist_dir -dist_test (o) +dist_test dlsyms (o) @@ -11390,10 +12641,10 @@ exescan extliblist -file_name_is_absolute - find_perl +find_tests + =over 4 =item Methods to actually produce chunks of text for the Makefile @@ -11408,14 +12659,22 @@ guess_name has_link_code -htmlifypods (o) - init_dirscan init_main init_others +init_INST + +init_INSTALL + +init_lib2arch + +init_PERL + +init_PERM + install (o) installbin (o) @@ -11442,20 +12701,16 @@ needs_linking (o) nicetext -parse_version - parse_abstract -pasthru (o) +parse_version -path +pasthru (o) perl_script perldepend (o) -ppd - perm_rw (o) perm_rwx (o) @@ -11468,6 +12723,8 @@ post_initialize (o) postamble (o) +ppd + prefixify processPL (o) @@ -11490,9 +12747,9 @@ subdirs (o) test (o) -test_via_harness (o) +test_via_harness (override) -test_via_script (o) +test_via_script (override) tool_autosplit (o) @@ -11541,11 +12798,9 @@ wraplist =back -rootdir (override) - =over 4 -=item SelfLoaded methods +=item Methods guess_name (override) @@ -11553,18 +12808,16 @@ guess_name (override) find_perl (override) -path (override) - maybe_command (override) maybe_command_in_dirs (override) perl_script (override) -file_name_is_absolute (override) - replace_manpage_separator +init_main (override) + init_others (override) constants (override) @@ -11613,12 +12866,8 @@ clean (override) realclean (override) -dist_basics (override) - dist_core (override) -dist_dir (override) - dist_test (override) install (override) @@ -11627,16 +12876,16 @@ perldepend (override) makefile (override) -test (override) - -test_via_harness (override) +find_tests (override) -test_via_script (override) +test (override) makeaperl (override) nicetext (override) +prefixify (override) + =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11648,8 +12897,6 @@ ExtUtils::MakeMaker =back -catfile - constants (o) static_lib (o) @@ -11658,14 +12905,10 @@ dynamic_bs (o) dynamic_lib (o) -canonpath - perl_script pm_to_blib -test_via_harness (o) - tool_autosplit (override) tools_other (o) @@ -11674,8 +12917,6 @@ xs_o (o) top_targets (o) -htmlifypods (o) - manifypods (o) dist_ci (o) @@ -11684,6 +12925,26 @@ dist_core (o) pasthru (o) +=head2 ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 ExtUtils::MY - ExtUtils::MakeMaker subclass for customization + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + =head2 ExtUtils::MakeMaker - create an extension Makefile =over 4 @@ -11718,20 +12979,21 @@ pasthru (o) ABSTRACT, ABSTRACT_FROM, AUTHOR, BINARY_LOCATION, C, CCFLAGS, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT, -EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, HTMLLIBPODS, -HTMLSCRIPTPODS, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, -INSTALLDIRS, INSTALLHTMLPRIVLIBDIR, INSTALLHTMLSCRIPTDIR, -INSTALLHTMLSITELIBDIR, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, -INSTALLSCRIPT, INSTALLSITEARCH, INSTALLSITELIB, INST_ARCHLIB, INST_BIN, -INST_EXE, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_LIB, INST_MAN1DIR, -INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE, -MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME, -NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERL_CORE, -PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, PERLRUN, PERM_RW, -PERM_RWX, PL_FILES, PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, -PPM_INSTALL_SCRIPT, PREFIX, PREREQ_PM, PREREQ_FATAL, PREREQ_PRINT, -PRINT_PREREQ, SKIP, TEST_LIBS, VERSION, VERSION_FROM, XS, XSOPT, -XSPROTOARG, XS_VERSION +EXE_FILES, FIRST_MAKEFILE, FULLPERL, FULLPERLRUN, FULLPERLRUNINST, +FUNCLIST, H, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, +INSTALLDIRS, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, +INSTALLSITEARCH, INSTALLSITEBIN, INSTALLSITELIB, INSTALLSITEMAN1DIR, +INSTALLSITEMAN3DIR, INSTALLVENDORARCH, INSTALLVENDORBIN, INSTALLVENDORLIB, +INSTALLVENDORMAN1DIR, INSTALLVENDORMAN3DIR, INST_ARCHLIB, INST_BIN, +INST_LIB, INST_MAN1DIR, INST_MAN3DIR, INST_SCRIPT, LDDLFLAGS, LDFROM, LIB, +LIBPERL_A, LIBS, LINKTYPE, MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, +MAP_TARGET, MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, +OPTIMIZE, PERL, PERL_CORE, PERLMAINCC, PERL_ARCHLIB, PERL_LIB, +PERL_MALLOC_OK, PERLRUN, PERLRUNINST, PERL_SRC, PERM_RW, PERM_RWX, +PL_FILES, PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, +PPM_INSTALL_SCRIPT, PREFIX, PREREQ_FATAL, PREREQ_PM, PREREQ_PRINT, +PRINT_PREREQ, SITEPREFIX, SKIP, TYPEMAPS, VENDORPREFIX, VERBINST, VERSION, +VERSION_FROM, XS, XSOPT, XSPROTOARG, XS_VERSION =item Additional lowercase attributes @@ -11740,13 +13002,17 @@ tool_autosplit =item Overriding MakeMaker Methods +=item The End Of Cargo Cult Programming + +C< ' '>> + =item Hintsfile support =item Distribution Support make distcheck, make skipcheck, make distclean, make manifest, - make distdir, make tardist, make dist, make uutardist, make -shdist, make zipdist, make ci + make distdir, make disttest, make tardist, make dist, make +uutardist, make shdist, make zipdist, make ci =item Disabling an extension @@ -11778,8 +13044,8 @@ PERL_MM_OPT, PERL_MM_USE_DEFAULT =item DIAGNOSTICS -C I, C I, C I<$!>, -C I +C I, C I, C I, +C I<$!>, C I =item ENVIRONMENT @@ -11910,6 +13176,10 @@ C, C =item DESCRIPTION +=item AUTHOR + +=item HISTORY + =back =head2 File::Compare - Compare files or filehandles @@ -12082,25 +13352,9 @@ splitdir, catpath(), abs2rel, rel2abs() =item DESCRIPTION -devnull - -=back - -tmpdir - -path - canonpath() -splitpath - -splitdir - -catpath - -abs2rel - -rel2abs() +=back =over 4 @@ -12333,6 +13587,12 @@ catpath =over 4 +=item Note For File::Spec::Win32 Maintainers + +=back + +=over 4 + =item SEE ALSO =back @@ -12435,6 +13695,8 @@ TopSystemUID =item DESCRIPTION +=item BUGS + =item NOTE =item AUTHOR @@ -12449,6 +13711,10 @@ TopSystemUID =item DESCRIPTION +cacheout EXPR, cacheout MODE, EXPR + +=item CAVEATS + =item BUGS =back @@ -12624,7 +13890,8 @@ B<$_>, B<$status>, B and B, B =item Summary of Option Specifications -!, +, s, i, o, f, : I [ I ] +!, +, s, i, o, f, : I [ I ], : I [ I ], : ++ [ I ] =back @@ -12634,6 +13901,8 @@ B<$_>, B<$status>, B and B, B =item Object oriented interface +=item Thread Safety + =item Documentation and help texts =item Storing options in a hash @@ -12700,6 +13969,36 @@ clustering =back +=head2 Hash::Util - A selection of general-utility hash subroutines + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Restricted hashes + +lock_keys, unlock_keys + +=back + +=back + +lock_value, unlock_value + +B, B + +=over 4 + +=item AUTHOR + +=item SEE ALSO + +=back + =head2 I18N::Collate - compare 8-bit scalar data according to the current locale @@ -13593,7 +14892,7 @@ general-utility scalar subroutines =item DESCRIPTION -blessed EXPR, dualvar NUM, STRING, isweak EXPR, readonly SCALAR, reftype +blessed EXPR, dualvar NUM, STRING, isweak EXPR, openhandle FH, reftype EXPR, tainted EXPR, weaken REF =item KNOWN BUGS @@ -13643,7 +14942,15 @@ country_code2code( CODE, CODESET, CODESET ) C, C -=item CODE ALIASING +=item SEMI-PRIVATE ROUTINES + +=over 4 + +=item alias_code + +=item rename_country + +=back =item EXAMPLES @@ -13653,10 +14960,10 @@ C, C =item SEE ALSO -Locale::Language, Locale::Script, Locale::Currency, ISO 3166, -http://www.din.de/gremien/nas/nabd/iso3166ma/, +Locale::Language, Locale::Script, Locale::Currency, Locale::SubCountry, ISO +3166-1, http://www.iso.org/iso/en/prods-services/iso3166ma/index.html, http://www.egt.ie/standards/iso3166/iso3166-1-en.html, -http://www.cia.gov/cia/publications/factbook/docs/app-f.html +http://www.cia.gov/cia/publications/factbook/docs/app-d-1.html =item AUTHOR @@ -13859,108 +15166,229 @@ http://www.evertype.com/standards/iso15924/ =back -=head2 MIME::Base64 - Encoding and decoding of base64 strings +=head2 MIME::Base64 - Encoding and decoding of base64 strings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +encode_base64($str, [$eol]), decode_base64($str) + +=item DIAGNOSTICS + +Premature end of base64 data, Premature padding of base64 data + +=item EXAMPLES + +=item COPYRIGHT + +=back + +=head2 MIME::Base64::QuotedPrint, MIME::QuotedPrint - Encoding and decoding +of quoted-printable strings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +encode_qp($str), decode_qp($str); + +=item COPYRIGHT + +=back + +=head2 MIME::QuotedPrint - Encoding and decoding of quoted-printable +strings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +encode_qp($str), decode_qp($str); + +=item COPYRIGHT + +=back + +=head2 Math::BigFloat - Arbitrary size floating point math package + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Canonical notation + +=item Output + +=item C, C and C + +=item Accuracy vs. Precision + +=item Rounding + +ffround ( +$scale ), ffround ( -$scale ), ffround ( 0 ), fround ( +$scale +), fround ( -$scale ) and fround ( 0 ) + +=back + +=item EXAMPLES + + # not ready yet + +=item Autocreating constants + +=over 4 + +=item Math library + +=item Using Math::BigInt::Lite + +=back + +=item BUGS + +=item CAVEAT + +stringify, bstr(), bdiv, Modifying and =, bpow + +=item LICENSE + +=item AUTHORS + +=back + +=head2 Math::BigInt - Arbitrary size integer math package + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +Canonical notation, Input, Output + +=item METHODS + +=over 4 + +=item config + +=item accuracy + +=item brsft + +=item new + +=item bnan -=over 4 +=item bzero -=item SYNOPSIS +=item binf -=item DESCRIPTION +=item bone -encode_base64($str, [$eol]), decode_base64($str) +=item is_one()/is_zero()/is_nan()/is_inf() -=item DIAGNOSTICS +=item is_positive()/is_negative() -Premature end of base64 data, Premature padding of base64 data + $x->is_positive(); # true if >= 0 + $x->is_negative(); # true if < 0 -=item EXAMPLES +=item is_odd()/is_even()/is_int() -=item COPYRIGHT +=item bcmp -=back +=item bacmp -=head2 MIME::Base64::QuotedPrint, MIME::QuotedPrint - Encoding and decoding -of quoted-printable strings +=item sign -=over 4 +=item bcmp -=item SYNOPSIS +=item bneg -=item DESCRIPTION +=item babs -encode_qp($str), decode_qp($str); +=item bnorm -=item COPYRIGHT +=item bnot -=back +=item binc -=head2 MIME::QuotedPrint - Encoding and decoding of quoted-printable -strings +=item bdec -=over 4 +=item badd -=item SYNOPSIS +=item bsub -=item DESCRIPTION +=item bmul -encode_qp($str), decode_qp($str); +=item bdiv -=item COPYRIGHT +=item bmod -=back +=item bmodinv -=head2 Math::BigFloat - Arbitrary size floating point math package +=item bmodpow -=over 4 +=item bpow -=item SYNOPSIS +=item blsft -=item DESCRIPTION +=item brsft -=over 4 +=item band -=item Canonical notation +=item bior -=item Output +=item bxor -=item C, C and C +=item bnot -=item Accuracy vs. Precision +=item bsqrt -=item Rounding +=item bfac -ffround ( +$scale ), ffround ( -$scale ), ffround ( 0 ), fround ( +$scale -), fround ( -$scale ) and fround ( 0 ) +=item round -=back +=item bround -=item EXAMPLES +=item bfround - # not ready yet +=item bfloor -=item Autocreating constants +=item bceil -=item BUGS +=item bgcd -=item CAVEAT +=item blcm -stringify, bstr(), bdiv, Modifying and =, bpow +=item exponent -=item LICENSE +=item mantissa -=item AUTHORS +=item parts -=back +=item copy -=head2 Math::BigInt - Arbitrary size integer math package +=item as_number -=over 4 +=item bsstr -=item SYNOPSIS +=item as_hex -=item DESCRIPTION +=item as_bin -Canonical notation, Input, Output +=back =item ACCURACY and PRECISION @@ -14005,6 +15433,20 @@ Remarks =item Alternative math libraries +=item SUBCLASSING + +=back + +=item Subclassing Math::BigInt + +=item UPGRADING + +=over 4 + +=item Auto-upgrade + +bsqrt(), div(), blog() + =back =item BUGS @@ -14015,7 +15457,7 @@ Out of Memory!, Fails to load Calc on Perl prior 5.6.0 stringify, bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity handling, Modifying and =, bpow, Overloading -$x, Mixing different object -types, bsqrt() +types, bsqrt(), brsft() =item LICENSE @@ -14049,6 +15491,54 @@ the same terms as Perl itself. =back +=head2 Math::BigRat - arbitrarily big rationals + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item MATH LIBRARY + +=back + +=item METHODS + +=over 4 + +=item new() + +=item numerator() + +=item denominator() + + $d = $x->denominator(); + +=item parts() + +=item as_number() + +=item bfac() + +=item blog() + +=item bround()/round()/bfround() + +=back + +=item BUGS + +=item LICENSE + +=item SEE ALSO + +=item AUTHORS + +=back + =head2 Math::Complex - complex numbers and associated mathematical functions @@ -14133,7 +15623,7 @@ cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical =back -=head2 Memoize - Make your functions faster by trading space for time +=head2 Memoize - Make functions faster by trading space for time =over 4 @@ -14322,7 +15812,7 @@ dataend () debug_print ( DIR, TEXT ), debug_text ( TEXT ), command ( CMD [, ARGS, ... ]), unsupported (), response (), parse_response ( TEXT ), getline (), -ungetline ( TEXT ), read_until_dot () +ungetline ( TEXT ), read_until_dot (), tied_fh () =item EXPORTS @@ -14447,11 +15937,12 @@ new ( [ HOST ] [, OPTIONS ]) =item METHODS article ( [ MSGID|MSGNUM ], [FH] ), body ( [ MSGID|MSGNUM ], [FH] ), head ( -[ MSGID|MSGNUM ], [FH] ), nntpstat ( [ MSGID|MSGNUM ] ), group ( [ GROUP ] -), ihave ( MSGID [, MESSAGE ]), last (), date (), postok (), authinfo ( -USER, PASS ), list (), newgroups ( SINCE [, DISTRIBUTIONS ]), newnews ( -SINCE [, GROUPS [, DISTRIBUTIONS ]]), next (), post ( [ MESSAGE ] ), slave -(), quit () +[ MSGID|MSGNUM ], [FH] ), articlefh ( [ MSGID|MSGNUM ] ), bodyfh ( [ +MSGID|MSGNUM ] ), headfh ( [ MSGID|MSGNUM ] ), nntpstat ( [ MSGID|MSGNUM ] +), group ( [ GROUP ] ), ihave ( MSGID [, MESSAGE ]), last (), date (), +postok (), authinfo ( USER, PASS ), list (), newgroups ( SINCE [, +DISTRIBUTIONS ]), newnews ( SINCE [, GROUPS [, DISTRIBUTIONS ]]), next (), +post ( [ MESSAGE ] ), postfh (), slave (), quit () =over 4 @@ -14479,7 +15970,7 @@ MESSAGE-SPEC, PATTERN, Examples, C<[^]-]>, C<*bdc>, C<[0-9a-zA-Z]>, C =back -=head2 Net::POP3 - Post Office Protocol 3 Client class (RFC1081) +=head2 Net::POP3 - Post Office Protocol 3 Client class (RFC1939) =over 4 @@ -14495,10 +15986,10 @@ new ( [ HOST, ] [ OPTIONS ] ) =item METHODS -user ( USER ), pass ( PASS ), login ( [ USER [, PASS ]] ), apop ( USER, -PASS ), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM [, -FH ] ), last (), popstat (), ping ( USER ), uidl ( [ MSGNUM ] ), delete ( -MSGNUM ), reset (), quit () +user ( USER ), pass ( PASS ), login ( [ USER [, PASS ]] ), apop ( [ USER [, +PASS ]] ), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM +[, FH ] ), getfh ( MSGNUM ), last (), popstat (), ping ( USER ), uidl ( [ +MSGNUM ] ), delete ( MSGNUM ), reset (), quit () =item NOTES @@ -14522,9 +16013,10 @@ MSGNUM ), reset (), quit () =item Functions -Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, -$p->bind($local_addr);, $p->ping($host [, $timeout]);, $p->open($host);, -$p->open($host);, $p->close();, pingecho($host [, $timeout]); +Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [, +$timeout]);, $p->source_verify( { 0 | 1 } );, $p->hires( { 0 | 1 } );, +$p->bind($local_addr);, $p->open($host);, $p->close();, pingecho($host [, +$timeout]); =back @@ -14532,6 +16024,8 @@ $p->open($host);, $p->close();, pingecho($host [, $timeout]); =item NOTES +=item INSTALL + =item AUTHORS =item COPYRIGHT @@ -14562,6 +16056,8 @@ ADDRESS [, ADDRESS [...]] ), bcc ( ADDRESS [, ADDRESS [...]] ), data ( [ DATA ] ), expand ( ADDRESS ), verify ( ADDRESS ), help ( [ $subject ] ), quit () +=item ADDRESSES + =item SEE ALSO =item AUTHOR @@ -14795,6 +16291,8 @@ login (), password (), account (), lpa () =item IMPLEMENTATION +=item BUGS + =item AUTHOR =back @@ -15052,10 +16550,12 @@ name space =item DESCRIPTION -unix, stdio, perlio, crlf, utf8, raw +unix, stdio, perlio, crlf, utf8, bytes, raw, pop =over 4 +=item Alternatives to raw + =item Defaults and how to override them =back @@ -15066,7 +16566,19 @@ unix, stdio, perlio, crlf, utf8, raw =back -=head2 PerlIO::Scalar - support module for in-memory IO. +=head2 PerlIO::encoding - encoding layer + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 PerlIO::scalar - support module for in-memory IO. =over 4 @@ -15076,7 +16588,7 @@ unix, stdio, perlio, crlf, utf8, raw =back -=head2 PerlIO::Via - Helper class for PerlIO layers implemented in perl +=head2 PerlIO::via - Helper class for PerlIO layers implemented in perl =over 4 @@ -15084,13 +16596,18 @@ unix, stdio, perlio, crlf, utf8, raw =item DESCRIPTION +=item EXPECTED METHODS + $class->PUSHED([$mode[,$fh]]), $obj->POPPED([$fh]), -$class->OPEN($path,$mode[,$fh]), $class->FDOPEN($fd), -$class->SYSOPEN($path,$imode,$perm,$fh), $obj->FILENO($fh), -$obj->READ($buffer,$len,$fh), $obj->WRITE($buffer,$fh), $obj->FILL($fh), -$obj->CLOSE($fh), $obj->SEEK($posn,$whence,$fh), $obj->TELL($fh), -$obj->UNREAD($buffer,$fh), $obj->FLUSH($fh), $obj->SETLINEBUF($fh), -$obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh) +$obj->OPEN($path,$mode[,$fh]), $obj->BINMODE([,$fh]), +$obj->FDOPEN($fd[,$fh]), $obj->SYSOPEN($path,$imode,$perm,[,$fh]), +$obj->FILENO($fh), $obj->READ($buffer,$len,$fh), $obj->WRITE($buffer,$fh), +$obj->FILL($fh), $obj->CLOSE($fh), $obj->SEEK($posn,$whence,$fh), +$obj->TELL($fh), $obj->UNREAD($buffer,$fh), $obj->FLUSH($fh), +$obj->SETLINEBUF($fh), $obj->CLEARERR($fh), $obj->ERROR($fh), +$obj->EOF($fh) + +=item EXAMPLES =over 4 @@ -15100,6 +16617,20 @@ $obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh) =back +=head2 PerlIO::via::QuotedPrint - PerlIO layer for quoted-printable strings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=item COPYRIGHT + +=back + =head2 Pod::Checker, podchecker() - check pod documents for syntax errors =over 4 @@ -15136,7 +16667,7 @@ after =back =item Warnings -multiple occurence of link target I, line containing nothing but +multiple occurrence of link target I, line containing nothing but whitespace in paragraph, file does not start with =head, previous =item has no contents, preceding non-item paragraph(s), =item type mismatch (I vs. I), I unescaped CE> in paragraph, Unknown entity, No @@ -15635,7 +17166,7 @@ escape EE%sE, %s:%d: Unknown formatting code %s, %s:%d: Unmatched =back -=head2 Pod::ParseLink -- Parse an LEE formatting code in POD text +=head2 Pod::ParseLink - Parse an LEE formatting code in POD text =over 4 @@ -15643,6 +17174,8 @@ escape EE%sE, %s:%d: Unknown formatting code %s, %s:%d: Unmatched =item DESCRIPTION +=item SEE ALSO + =item AUTHOR =item COPYRIGHT AND LICENSE @@ -16185,8 +17718,8 @@ text =back -=head2 Pod::Text::Termcap, Pod::Text::Color - Convert POD data to ASCII -text with format escapes +=head2 Pod::Text::Termcap - Convert POD data to ASCII text with format +escapes =over 4 @@ -16274,6 +17807,43 @@ E, E, E, E, E, E =back +=head2 Pod::t::htmlescp, Escape Sequences Test + +=over 4 + +=item DESCRIPTION + +=back + +=head2 Pod::t::htmlview, Test HTML Rendering + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item METHODS =E OTHER STUFF + +=over 4 + +=item new() + +foo, bar, baz, C Cat, Sat S the>, MatE!E, 1 Cat, 2 +Sat, 3 Mat + +=item old() + +=back + +=item TESTING FOR AND BEGIN + +=item TESTING URLs hyperlinking + +=item SEE ALSO + +=back + =head2 SDBM_File - Tied access to sdbm files =over 4 @@ -16337,7 +17907,7 @@ Memory, CPU, Snooping, Signals, State Changes =item DESCRIPTION -blessed EXPR, dualvar NUM, STRING, isweak EXPR, readonly SCALAR, reftype +blessed EXPR, dualvar NUM, STRING, isweak EXPR, openhandle FH, reftype EXPR, tainted EXPR, weaken REF =item KNOWN BUGS @@ -16431,7 +18001,7 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN =back -=head2 Storable - persistency for perl data structures +=head2 Storable - persistence for Perl data structures =over 4 @@ -16447,6 +18017,10 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN =item CANONICAL REPRESENTATION +=item FORWARD COMPATIBILITY + +utf8 data, restricted hashes, files from future versions of Storable + =item ERROR REPORTING =item WIZARDS ONLY @@ -16477,9 +18051,13 @@ C =item BUGS -=item CREDITS +=over 4 -=item TRANSLATIONS +=item 64 bit data in perl 5.6.0 and 5.6.1 + +=back + +=item CREDITS =item AUTHOR @@ -16555,8 +18133,8 @@ interface to the UNIX syslog(3) calls =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, -setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), -closelog +setlogmask $mask_priority, setlogsock $sock_type [$stream_location] (added +in 5.004_02), closelog =item EXAMPLES @@ -16576,8 +18154,8 @@ Perl interface to the UNIX syslog(3) calls =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, -setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), -closelog +setlogmask $mask_priority, setlogsock $sock_type [$stream_location] (added +in 5.004_02), closelog =item EXAMPLES @@ -16613,7 +18191,7 @@ ANSI_COLORS_DISABLED =item AUTHORS -=item LICENSE +=item COPYRIGHT AND LICENSE =back @@ -16731,7 +18309,7 @@ NORMAL TESTS, SKIPPED TESTS, TODO TESTS =item BUGS and CAVEATS -=item TODO +=item NOTE =item SEE ALSO @@ -16787,6 +18365,8 @@ B, B B, B +B + B B @@ -16843,6 +18423,8 @@ B<_my_exit> =over 4 +=item THREADS + =item EXAMPLES =item SEE ALSO @@ -16907,13 +18489,13 @@ B<_leader_width> C, C, C, C, C, C +%s>, C =item ENVIRONMENT -C, C, C, -C, C, C, -C +C, C, C, +C, C, C, +C, C =item EXAMPLE @@ -17105,6 +18687,8 @@ B B, B +When do I use SKIP vs. TODO? + =over 4 =item Comparison functions @@ -17361,7 +18945,7 @@ unexpand(1) =back -=head2 Thread - manipulate threads in Perl +=head2 Thread - manipulate threads in Perl (for old code only) =over 4 @@ -17418,9 +19002,12 @@ new, new NUMBER, down, down NUMBER, up, up NUMBER =back =head2 Thread::Signal - Start a thread which runs signal handlers reliably +(for old code) =over 4 +=item CAVEAT + =item SYNOPSIS =item DESCRIPTION @@ -17458,6 +19045,70 @@ SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST =back +=head2 Tie::File - Access the lines of a disk file via a Perl array + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item C + +=item C + +=item C + +=item C + +=item C + +=item Option Format + +=back + +=item Public Methods + +=over 4 + +=item C + +=item C + +=item C, C, C, and C + +=back + +=item Tying to an already-opened filehandle + +=item Deferred Writing + +=over 4 + +=item Autodeferring + +=back + +=item CAVEATS + +=item SUBCLASSING + +=item WHAT ABOUT C? + +=item AUTHOR + +=item LICENSE + +=item WARRANTY + +=item THANKS + +=item TODO + +=back + =head2 Tie::Handle, Tie::StdHandle - base class definitions for tied handles @@ -17660,7 +19311,7 @@ $obj->isa( TYPE ), CLASS->isa( TYPE ), isa( VAL, TYPE ), $obj->can( METHOD =back -=head2 Unicode::Collate - use UCA (Unicode Collation Algorithm) +=head2 Unicode::Collate - Unicode Collation Algorithm =over 4 @@ -17676,32 +19327,44 @@ alternate, backwards, entry, ignoreName, ignoreChar, level, normalization, overrideCJK, overrideHangul, preprocess, rearrange, table, undefName, undefChar, katakana_before_hiragana, upper_before_lower -=item Other methods +=item Methods for Collation C<@sorted = $Collator-Esort(@not_sorted)>, C<$result = $Collator-Ecmp($a, $b)>, C<$result = $Collator-Eeq($a, $b)>, C<$result = $Collator-Ene($a, $b)>, C<$result = $Collator-Elt($a, $b)>, C<$result = $Collator-Ele($a, $b)>, C<$result = $Collator-Egt($a, $b)>, C<$result = $Collator-Ege($a, $b)>, -C<$sortKey = $Collator-EgetSortKey($string)>, C<$position = +C<$sortKey = $Collator-EgetSortKey($string)>, C<$sortKeyForm = +$Collator-EviewSortKey($string)>, C<$position = $Collator-Eindex($string, $substring)>, C<($position, $length) = $Collator-Eindex($string, $substring)> +=item Other Methods + +UCA_Version, Base_Unicode_Version + =item EXPORT +=item TODO + =item CAVEAT +=item BUGS + =back =item AUTHOR =item SEE ALSO -Unicode Collation Algorithm - Unicode TR #10, L +http://www.unicode.org/unicode/reports/tr10/, +http://www.unicode.org/unicode/reports/tr10/allkeys.txt, +http://www.unicode.org/unicode/reports/tr15/, +http://www.unicode.org/unicode/reports/tr18, L =back -=head2 Unicode::Normalize - normalized forms of Unicode text +=head2 Unicode::Normalize - Unicode Normalization Forms =over 4 @@ -17713,16 +19376,31 @@ Unicode Collation Algorithm - Unicode TR #10, L =item Normalization Forms -C<$string_NFD = NFD($raw_string)>, C<$string_NFC = NFC($raw_string)>, -C<$string_NFKD = NFKD($raw_string)>, C<$string_NFKC = NFKC($raw_string)>, -C<$normalized_string = normalize($form_name, $raw_string)> +C<$NFD_string = NFD($string)>, C<$NFC_string = NFC($string)>, +C<$NFKD_string = NFKD($string)>, C<$NFKC_string = NFKC($string)>, +C<$normalized_string = normalize($form_name, $string)> + +=item Decomposition and Composition + +C<$decomposed_string = decompose($string)>, C<$decomposed_string = +decompose($string, $useCompatMapping)>, C<$reordered_string = +reorder($string)>, C<$composed_string = compose($string)> + +=item Quick Check + +C<$result = checkNFD($string)>, C<$result = checkNFC($string)>, C<$result = +checkNFKD($string)>, C<$result = checkNFKC($string)>, C<$result = +check($form_name, $string)> =item Character Data C<$canonical_decomposed = getCanon($codepoint)>, -C<$compatibility_decomposed = getCompat($codepoint)>, C<$uv_composite = -getComposite($uv_here, $uv_next)>, C<$combining_class = -getCombinClass($codepoint)>, C<$is_exclusion = isExclusion($codepoint)> +C<$compatibility_decomposed = getCompat($codepoint)>, +C<$codepoint_composite = getComposite($codepoint_here, $codepoint_next)>, +C<$combining_class = getCombinClass($codepoint)>, C<$is_exclusion = +isExclusion($codepoint)>, C<$is_singleton = isSingleton($codepoint)>, +C<$is_non_startar_decomposition = isNonStDecomp($codepoint)>, +C<$may_be_composed_with_prev_char = isComp2nd($codepoint)> =item EXPORT @@ -17732,7 +19410,8 @@ getCombinClass($codepoint)>, C<$is_exclusion = isExclusion($codepoint)> =item SEE ALSO -http://www.unicode.org/unicode/reports/tr15/ +http://www.unicode.org/unicode/reports/tr15/, +http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt =back @@ -17882,7 +19561,7 @@ Win32::ExpandEnvironmentStrings(STRING), Win32::FormatMessage(ERRORCODE), Win32::FsType(), Win32::FreeLibrary(HANDLE), Win32::GetArchName(), Win32::GetChipName(), Win32::GetCwd(), Win32::GetFullPathName(FILENAME), Win32::GetLastError(), Win32::GetLongPathName(PATHNAME), -Win32::GetNextAvailDrive(), Win32::GetOSVersion(), +Win32::GetNextAvailDrive(), Win32::GetOSVersion(), Win32::GetOSName(), Win32::GetShortPathName(PATHNAME), Win32::GetProcAddress(INSTANCE, PROCNAME), Win32::GetTickCount(), Win32::InitiateSystemShutdown, Win32::IsWinNT(), Win32::IsWin95(), Win32::LoadLibrary(LIBNAME), @@ -17898,24 +19577,6 @@ Win32::UnregisterServer(LIBRARYNAME) =back -=head2 XS::Typemap - module to test the XS typemaps distributed with perl - -=over 4 - -=item SYNOPSIS - -=item DESCRIPTION - -=back - -=over 4 - -=item NOTES - -=item AUTHOR - -=back - =head2 XSLoader - Dynamically load C libraries into Perl code =over 4