summaryrefslogtreecommitdiff
path: root/pod
diff options
context:
space:
mode:
authorCasey West <casey@geeknest.com>2003-04-25 06:46:39 -0400
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2003-04-26 22:48:32 +0000
commit00cb5da129a8590d61ea16748bc9227b1757d0bf (patch)
tree3d5086cae2504f79a40b0b362c7248e4a5d3cdee /pod
parent3272a53d8ac41fb10d7f6637e3ffc4d16e9eb861 (diff)
downloadperl-00cb5da129a8590d61ea16748bc9227b1757d0bf.tar.gz
Some doc patches by Casey West :
Subject: Re: [PATCH] Re: [perl #21260] adding error handling info to perlfunc/readline Date: Fri, 25 Apr 2003 10:46:39 -0400 Message-ID: <20030425144639.GY34510@geeknest.com> Subject: Re: [perl #21785] [PATCH] clarify readdir in for conditional From: Casey West <casey@geeknest.com> Date: Fri, 25 Apr 2003 07:52:13 -0400 Message-ID: <20030425115213.GP34510@geeknest.com> Subject: Re: [perl #7213] [PATCH] Updating example in perldata From: Casey West <casey@geeknest.com> Date: Thu, 24 Apr 2003 21:27:22 -0400 Message-ID: <20030425012722.GN34510@geeknest.com> p4raw-id: //depot/perl@19344
Diffstat (limited to 'pod')
-rw-r--r--pod/perldata.pod2
-rw-r--r--pod/perlfunc.pod15
-rw-r--r--pod/perlsyn.pod8
3 files changed, 24 insertions, 1 deletions
diff --git a/pod/perldata.pod b/pod/perldata.pod
index 8e2e177e33..572058924f 100644
--- a/pod/perldata.pod
+++ b/pod/perldata.pod
@@ -644,7 +644,7 @@ values of the array or hash.
foreach (@array[ 4 .. 10 ]) { s/peter/paul/ }
- foreach (@hash{keys %hash}) {
+ foreach (@hash{qw[key1 key2]}) {
s/^\s+//; # trim leading whitespace
s/\s+$//; # trim trailing whitespace
s/(\w+)/\u\L$1/g; # "titlecase" words
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index 721b890982..70e604bebf 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -3834,6 +3834,21 @@ operator is discussed in more detail in L<perlop/"I/O Operators">.
$line = <STDIN>;
$line = readline(*STDIN); # same thing
+If readline encounters an operating system error, C<$!> will be set with the
+corresponding error message. It can be helpful to check C<$!> when you are
+reading from filehandles you don't trust, such as a tty or a socket. The
+following example uses the operator form of C<readline>, and takes the necessary
+steps to ensure that C<readline> was successful.
+
+ for (;;) {
+ undef $!;
+ unless (defined( $line = <> )) {
+ die $! if $!;
+ last; # reached EOF
+ }
+ # ...
+ }
+
=item readlink EXPR
=item readlink
diff --git a/pod/perlsyn.pod b/pod/perlsyn.pod
index 16bca2d6b5..1b5a6a940e 100644
--- a/pod/perlsyn.pod
+++ b/pod/perlsyn.pod
@@ -315,6 +315,14 @@ hang.
# do something
}
+Using C<readline> (or the operator form, C<< <EXPR> >>) as the
+conditional of a C<for> loop is shorthand for the following. This
+behaviour is the same as a C<while> loop conditional.
+
+ for ( prompt(); defined( $_ = <STDIN> ); prompt() ) {
+ # do something
+ }
+
=head2 Foreach Loops
The C<foreach> loop iterates over a normal list value and sets the