Class: Arf::IO::LimitReader
- Inherits:
-
Object
- Object
- Arf::IO::LimitReader
- Defined in:
- lib/arf/io/limit_reader.rb
Instance Method Summary collapse
-
#initialize(io, size) ⇒ LimitReader
constructor
A new instance of LimitReader.
- #read(size) ⇒ Object
- #readpartial(size) ⇒ Object
Constructor Details
#initialize(io, size) ⇒ LimitReader
Returns a new instance of LimitReader.
6 7 8 9 |
# File 'lib/arf/io/limit_reader.rb', line 6 def initialize(io, size) @io = io @left = size end |
Instance Method Details
#read(size) ⇒ Object
16 17 18 19 |
# File 'lib/arf/io/limit_reader.rb', line 16 def read(size) size = normalize_size(size) @io.read(size).tap { @left -= _1.length } end |
#readpartial(size) ⇒ Object
11 12 13 14 |
# File 'lib/arf/io/limit_reader.rb', line 11 def readpartial(size) size = normalize_size(size) @io.readpartial(size).tap { @left -= _1.length } end |