class Braingasm::InputBuffer
Public Class Methods
new(source)
click to toggle source
# File lib/braingasm/io.rb, line 4 def initialize(source) @source = source @buffer = StringIO.new end
Public Instance Methods
eof?()
click to toggle source
# File lib/braingasm/io.rb, line 26 def eof? return true if @buffer.closed? return false unless @buffer.eof? s = @source.gets if s @buffer.string = s false else @buffer.close true end end
getbyte()
click to toggle source
# File lib/braingasm/io.rb, line 18 def getbyte @buffer.getbyte unless eof? end
gets()
click to toggle source
# File lib/braingasm/io.rb, line 22 def gets @buffer.gets unless eof? end
ungetc(s)
click to toggle source
# File lib/braingasm/io.rb, line 9 def ungetc(s) case s when String @buffer.ungetc(s) if s.chomp.size > 0 when Integer @buffer.ungetc(s) unless s == 10 end end