Sha256: 1100b230a7de5c8cf60b3024439e4884501b540b70876dbf600149d4f88b2fb9

Contents?: true

Size: 585 Bytes

Versions: 55

Compression:

Stored size: 585 Bytes

Contents

# frozen_string_literal: true

module Puma
  # Provides an IO-like object that always appears to contain no data.
  # Used as the value for rack.input when the request has no body.
  #
  class NullIO
    def gets
      nil
    end

    def each
    end

    # Mimics IO#read with no data.
    #
    def read(count = nil, _buffer = nil)
      (count && count > 0) ? nil : ""
    end

    def rewind
    end

    def close
    end

    def size
      0
    end

    def eof?
      true
    end

    def sync=(v)
    end

    def puts(*ary)
    end

    def write(*ary)
    end
  end
end

Version data entries

55 entries across 55 versions & 5 rubygems

Version Path
puma-4.3.12-java lib/puma/null_io.rb
puma-4.3.12 lib/puma/null_io.rb
puma-4.3.11-java lib/puma/null_io.rb
puma-4.3.11 lib/puma/null_io.rb
puma-4.3.10-java lib/puma/null_io.rb
puma-4.3.10 lib/puma/null_io.rb
puma-4.3.9 lib/puma/null_io.rb
puma-4.3.9-java lib/puma/null_io.rb
puma-4.3.8-java lib/puma/null_io.rb
puma-4.3.8 lib/puma/null_io.rb
puma-4.3.7-java lib/puma/null_io.rb
puma-4.3.7 lib/puma/null_io.rb
piesync-puma-3.12.6.1 lib/puma/null_io.rb
piesync-puma-3.12.6 lib/puma/null_io.rb
puma-4.3.6-java lib/puma/null_io.rb
puma-4.3.6 lib/puma/null_io.rb
gitlab-puma-4.3.5.gitlab.3 lib/puma/null_io.rb
tdiary-5.1.2 vendor/bundle/ruby/2.6.0/gems/puma-4.3.0/lib/puma/null_io.rb
puma-4.3.5-java lib/puma/null_io.rb
puma-4.3.5 lib/puma/null_io.rb