Sha256: ada5abe3a563ab8a4de3b24bce690f7859714966069cd242fcd00b7b2058fe2e

Contents?: true

Size: 549 Bytes

Versions: 6

Compression:

Stored size: 549 Bytes

Contents

module RubySL
  module Socket
    module Foreign
      class SockaddrIn < Rubinius::FFI::Struct
        config("rbx.platform.sockaddr_in",
               :sin_family, :sin_port, :sin_addr, :sin_zero)

        def self.with_sockaddr(addr)
          pointer = Foreign.memory_pointer(addr.bytesize)
          pointer.write_string(addr, addr.bytesize)

          new(pointer)
        end

        def family
          self[:sin_family]
        end

        def to_s
          pointer.read_string(self.class.size)
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rubysl-socket-2.2.1 lib/rubysl/socket/foreign/sockaddr_in.rb
rubysl-socket-2.2 lib/rubysl/socket/foreign/sockaddr_in.rb
rubysl-socket-2.1.3 lib/rubysl/socket/foreign/sockaddr_in.rb
rubysl-socket-2.1.2 lib/rubysl/socket/foreign/sockaddr_in.rb
rubysl-socket-2.1.1 lib/rubysl/socket/foreign/sockaddr_in.rb
rubysl-socket-2.1.0 lib/rubysl/socket/foreign/sockaddr_in.rb