Class: Arf::IO::Buffer
- Inherits:
-
Object
- Object
- Arf::IO::Buffer
- Defined in:
- lib/arf/io/buffer.rb
Instance Method Summary collapse
- #extract ⇒ Object
-
#initialize ⇒ Buffer
constructor
A new instance of Buffer.
- #length ⇒ Object
- #read ⇒ Object
- #reset ⇒ Object
- #rewind ⇒ Object
- #string ⇒ Object
- #write(v) ⇒ Object
- #write_raw(v) ⇒ Object
Constructor Details
#initialize ⇒ Buffer
Returns a new instance of Buffer.
6 7 8 |
# File 'lib/arf/io/buffer.rb', line 6 def initialize @buf = StringIO.new end |
Instance Method Details
#extract ⇒ Object
18 19 20 21 22 |
# File 'lib/arf/io/buffer.rb', line 18 def extract buf = @buf @buf = StringIO.new buf end |
#length ⇒ Object
13 |
# File 'lib/arf/io/buffer.rb', line 13 def length = @buf.length |
#read ⇒ Object
15 |
# File 'lib/arf/io/buffer.rb', line 15 def read(*) = @buf.read(*) |
#reset ⇒ Object
12 |
# File 'lib/arf/io/buffer.rb', line 12 def reset = @buf.tap(&:rewind).truncate(0) |
#rewind ⇒ Object
14 |
# File 'lib/arf/io/buffer.rb', line 14 def rewind = @buf.rewind |
#string ⇒ Object
16 |
# File 'lib/arf/io/buffer.rb', line 16 def string = @buf.tap(&:rewind).string |
#write(v) ⇒ Object
10 |
# File 'lib/arf/io/buffer.rb', line 10 def write(v) = tap { write_raw([v].pack("C*")) } |
#write_raw(v) ⇒ Object
11 |
# File 'lib/arf/io/buffer.rb', line 11 def write_raw(v) = tap { @buf.write(v) } |