Sha256: d5482dab00565baa63623a4e788b4dd5b2dbd1a830a0e0b12277fc8f25ff028d

Contents?: true

Size: 805 Bytes

Versions: 8

Compression:

Stored size: 805 Bytes

Contents

module Ethon
  module Curl
    # :nodoc:
    class MsgData < ::FFI::Union
      layout :whatever, :pointer, :code, :easy_code
    end

    # :nodoc:
    class Msg < ::FFI::Struct
      layout :code, :msg_code, :easy_handle, :pointer, :data, MsgData
    end

    # :nodoc:
    class FDSet < ::FFI::Struct
      if Curl.windows?
        layout :fd_count, :u_int,
               :fd_array, [:u_int, 64] # 2048 FDs

        def clear; self[:fd_count] = 0; end
      else
        # FD Set size.
        FD_SETSIZE = ::Ethon::Libc.getdtablesize
        layout :fds_bits, [:long, FD_SETSIZE / ::FFI::Type::LONG.size]

        # :nodoc:
        def clear; super; end
      end
    end

    # :nodoc:
    class Timeval < ::FFI::Struct
      layout :sec, :time_t,
             :usec, :suseconds_t
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
ethon-0.7.0 lib/ethon/curls/classes.rb
ethon-0.6.3 lib/ethon/curls/classes.rb
ethon-0.6.2 lib/ethon/curls/classes.rb
ethon-0.6.1 lib/ethon/curls/classes.rb
ethon-0.6.0 lib/ethon/curls/classes.rb
ethon-0.5.12 lib/ethon/curls/classes.rb
ethon-0.5.11 lib/ethon/curls/classes.rb
ethon-0.5.10 lib/ethon/curls/classes.rb