Class: Arf::IO::Buffer

Inherits:
Object
  • Object
show all
Defined in:
lib/arf/io/buffer.rb

Instance Method Summary collapse

Constructor Details

#initializeBuffer

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

#extractObject



18
19
20
21
22
# File 'lib/arf/io/buffer.rb', line 18

def extract
  buf = @buf
  @buf = StringIO.new
  buf
end

#lengthObject



13
# File 'lib/arf/io/buffer.rb', line 13

def length = @buf.length

#readObject



15
# File 'lib/arf/io/buffer.rb', line 15

def read(*) = @buf.read(*)

#resetObject



12
# File 'lib/arf/io/buffer.rb', line 12

def reset = @buf.tap(&:rewind).truncate(0)

#rewindObject



14
# File 'lib/arf/io/buffer.rb', line 14

def rewind = @buf.rewind

#stringObject



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) }