# File lib/uuid.rb, line 371
371:     def bind(address)
372:       return address unless String === address
373:       if address[0] == ?/
374:         if File.exist?(address)
375:           raise ArgumentError, "#{address} is not a socket" unless File.socket?(address)
376:           File.unlink(address)
377:         end
378:         sock = UNIXServer.new(address)
379:         File.chmod 0666, address
380:       elsif address =~ /^(\d+\.\d+\.\d+\.\d+):(\d+)$/
381:         sock = TCPServer.new($1, $2.to_i)
382:       else
383:         raise ArgumentError, "Don't know how to bind #{address}"
384:       end
385:       sock.setsockopt(IPPROTO_TCP, TCP_NODELAY, 1) if defined?(TCP_NODELAY)
386:       sock
387:     end