[#7872] Nonblocking socket-connect — "Francis Cianfrocca" <garbagecat10@...>

All, I needed a nonblocking socket connect for my asynchronous-event

18 messages 2006/05/14
[#7873] Re: Nonblocking socket-connect — Tanaka Akira <akr@...17n.org> 2006/05/14

In article <3a94cf510605140559l7baa0205le341dac4f47d424b@mail.gmail.com>,

[#7874] Re: Nonblocking socket-connect — "Francis Cianfrocca" <garbagecat10@...> 2006/05/15

How about introducing the method Socket#set_nonblocking, or alternatively

[#7875] Re: Nonblocking socket-connect — Yukihiro Matsumoto <matz@...> 2006/05/15

Hi,

[#7876] Re: Nonblocking socket-connect — "Francis Cianfrocca" <garbagecat10@...> 2006/05/15

Well, it's ok then. I'm comfortable adding in the nonblocking

[#7877] Re: Nonblocking socket-connect — Yukihiro Matsumoto <matz@...> 2006/05/15

Hi,

Re: [ ruby-Bugs-4457 ] Strange interactions between Struct and 'pp'

From: Eric Hodel <drbrain@...7.net>
Date: 2006-05-12 18:43:08 UTC
List: ruby-core #7866
On May 12, 2006, at 8:13 AM, noreply@rubyforge.org wrote:

> Bugs item #4457, was opened at 2006-05-12 17:13
> You can respond by visiting:
> http://rubyforge.org/tracker/? 
> func=detail&atid=1698&aid=4457&group_id=426
>
> Category: Standard Library
> Group: None
> Status: Open
> Resolution: None
> Priority: 3
> Submitted By: Gustav Munkby (grddev)
> Assigned to: Nobody (None)
> Summary: Strange interactions between Struct and 'pp'
>
> Initial Comment:
>
> A structure which defines an accessor named "members" cannot be  
> used together with the standard library pp.
>
> The following program works as expected, and outputs the contents  
> of the structure:
>
>> ruby -rpp -e 'pp Struct.new(:member).new'
> #<struct  member=nil>
>
> If the accessor instead is named members, the above operation fails  
> with an exception:
>
>> ruby -rpp -e 'pp Struct.new(:members).new'
> /usr/lib/ruby/1.8/pp.rb:181:in `__send__': undefined method `each'  
> for nil:NilClass (NoMethodError)
>
> The reason is that the pp-library uses the members method of the  
> created structure to enumerate the members. The problem is easy to  
> fix by using the members method on the class instead. The  
> documentation for Struct suggest that you should use members in the  
> said way however, and it's not clear (to me) that Struct.new 
> (:members) overrides this.

$ cvs diff lib/pp.rb
Index: lib/pp.rb
===================================================================
RCS file: /src/ruby/lib/pp.rb,v
retrieving revision 1.45
diff -u -r1.45 pp.rb
--- lib/pp.rb   30 Nov 2005 05:02:37 -0000      1.45
+++ lib/pp.rb   12 May 2006 18:42:35 -0000
@@ -344,7 +344,7 @@
class Struct
    def pretty_print(q)
      q.group(1, '#<struct ' + self.class.name, '>') {
-      q.seplist(self.members, lambda { q.text "," }) {|member|
+      q.seplist(self.class.members, lambda { q.text "," }) {|member|
          q.breakable
          q.text member.to_s
          q.text '='


-- 
Eric Hodel - drbrain@segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com



In This Thread