--- !ruby/object:RI::ClassDescription attributes: [] class_methods: - !ruby/object:RI::MethodSummary name: getaddrinfo - !ruby/object:RI::MethodSummary name: gethostbyname - !ruby/object:RI::MethodSummary name: getservbyname comment: - !ruby/struct:SM::Flow::P body: Class Socket provides access to the underlying operating system socket implementations. It can be used to provide more operating system specific functionality than the protocol-specific socket classes but at the expense of greater complexity. In particular, the class handles addresses using +struct sockaddr+ structures packed into Ruby strings, which can be a joy to manipulate. - !ruby/struct:SM::Flow::H level: 3 text: Exception Handling - !ruby/struct:SM::Flow::P body: Ruby's implementation of Socket causes an exception to be raised based on the error generated by the system dependent implementation. This is why the methods are documented in a way that isolate Unix-based system exceptions from Windows based exceptions. If more information on particular exception is needed please refer to the Unix manual pages or the Windows WinSock reference. - !ruby/struct:SM::Flow::H level: 3 text: Documentation by - !ruby/object:SM::Flow::LIST contents: - !ruby/struct:SM::Flow::LI label: "*" body: Zach Dennis - !ruby/struct:SM::Flow::LI label: "*" body: Sam Roberts - !ruby/struct:SM::Flow::LI label: "*" body: Programming Ruby from The Pragmatic Bookshelf. type: :BULLET - !ruby/struct:SM::Flow::P body: Much material in this documentation is taken with permission from Programming Ruby from The Pragmatic Bookshelf. constants: - !ruby/object:RI::Constant comment: name: AF_INET6 value: Object.new full_name: Socket includes: [] instance_methods: - !ruby/object:RI::MethodSummary name: accept - !ruby/object:RI::MethodSummary name: accept_nonblock - !ruby/object:RI::MethodSummary name: bind - !ruby/object:RI::MethodSummary name: connect - !ruby/object:RI::MethodSummary name: connect_nonblock - !ruby/object:RI::MethodSummary name: listen - !ruby/object:RI::MethodSummary name: recvfrom - !ruby/object:RI::MethodSummary name: recvfrom_nonblock - !ruby/object:RI::MethodSummary name: sysaccept name: Socket superclass: Object