# File lib/cool.io/socket.rb, line 110 def self.connect(addr, port, *args) family = nil if (Resolv::IPv4.create(addr) rescue nil) family = ::Socket::AF_INET elsif(Resolv::IPv6.create(addr) rescue nil) family = ::Socket::AF_INET6 end if family return super(TCPConnectSocket.new(family, addr, port), *args) # this creates a 'real' write buffer so we're ok there with regards to already having a write buffer from the get go end if host = Coolio::DNSResolver.hosts(addr) return connect(host, port, *args) # calls this same function end precreate(addr, port, *args) end