Author: wayland
Date: 2009-03-31 02:48:54 +0200 (Tue, 31 Mar 2009)
New Revision: 26031

Modified:
   docs/Perl6/Spec/S32-setting-library/IO.pod
Log:
S32/IO: Expanded IO::Socket, mostly at the expense of IO::Socket::INET.  


Modified: docs/Perl6/Spec/S32-setting-library/IO.pod
===================================================================
--- docs/Perl6/Spec/S32-setting-library/IO.pod  2009-03-31 00:30:46 UTC (rev 
26030)
+++ docs/Perl6/Spec/S32-setting-library/IO.pod  2009-03-31 00:48:54 UTC (rev 
26031)
@@ -451,7 +451,12 @@
 
 =head2 IO::Socket
 
-    role IO::Socket does IO::Closeable {
+    role IO::Socket 
+        does IO::Closeable 
+        does IO::Readable 
+        does IO::Writeable 
+        does IO::Streamable 
+    {
         has %.options;
         has Bool $.Listening = 0;
         ...
@@ -459,6 +464,11 @@
 
 Accessing the C<%.options> would on Unix be done with 
I<getsockopt(2)>/I<setsockopt(2)>.
 
+The $.Listening attribute indicates whether the socket will be a listening 
socket when 
+opened, rather than indicating whether it is currently listening.
+
+[TODO: come up with a better name for it -- $.Server maybe?]
+
 =over
 
 =item new
@@ -479,7 +489,7 @@
 
     method close()
 
-Reimplements the close() function from IO::Closeable by doing a shutdown on 
the connection 
+Implements the close() function from IO::Closeable by doing a shutdown on the 
connection 
 (see below) with @how set to ('Readable', 'Writeable').   
 
 =item shutdown
@@ -495,6 +505,16 @@
 
     method accept( --> IO::Socket)
 
+=item method read($buf is rw, Int $bytes --> Int)
+
+Implementes the IO::Readable interface by doing a I<recv(2)>.  
+
+=item method write($buf, Int $bytes --> Int)
+
+Implementes the IO::Writeable interface by doing  a I<send(2)>.
+
+=item getpeername
+
 =back
 
 =head2 IO::FileDescriptor
@@ -883,7 +903,7 @@
 
 =head2 IO::Socket::INET
 
-    class IO::Socket::INET does IO::Socket does IO::Streamable {
+    class IO::Socket::INET does IO::Socket {
         has Str $.Protocol = 'TCP';
         ...
     }
@@ -914,18 +934,6 @@
 
 IPv6 is supported.  
 
-=item method read($buf is rw, Int $bytes --> Int)
-
-Does a I<recv(2)>.  
-
-=item method write($buf, Int $bytes --> Int)
-
-Does a I<send(2)>.
-
-=item IO.getpeername
-
-=item /[get|set][host|net|proto|serv|sock].*/
-
 =back
 
 =head2 IO::Pipe
@@ -1123,6 +1131,10 @@
 
 See C<IO::FileDescriptor>.
 
+=item /(get|set)(host|net|proto|serv|sock).*/
+
+Should be implemented by an external library.  
+
 =item lstat
 
 Use C<stat> with the C<:link> option.  

Reply via email to