class IRB::StdioInputMethod
def encoding
def encoding @stdin.external_encoding end
def eof?
there is no more data to read.
Whether the end of this input method has been reached, returns +true+ if
def eof? if @stdin.wait_readable(0.00001) c = @stdin.getc result = c.nil? ? true : false @stdin.ungetc(c) unless c.nil? result else # buffer is empty false end end
def gets
Reads the next line from this input method.
def gets print @prompt line = @stdin.gets @line[@line_no += 1] = line end
def initialize
def initialize @line_no = 0 @line = [] @stdin = IO.open(STDIN.to_i, :external_encoding => IRB.conf[:LC_MESSAGES].encoding, :internal_encoding => "-") @stdout = IO.open(STDOUT.to_i, 'w', :external_encoding => IRB.conf[:LC_MESSAGES].encoding, :internal_encoding => "-") end
def inspect
def inspect 'StdioInputMethod' end
def line(line_no)
#line counts the number of times #gets is called.
Returns the current line number for #io.
def line(line_no) @line[line_no] end
def readable_after_eof?
read.
Whether this input method is still readable when there is no more data to
def readable_after_eof? true end