类 IRB::FileInputMethod

使用文件进行 irb 的 IO 操作,请参见 InputMethod

公共类方法

new(file) 点击切换源代码

创建一个新的输入方法对象

# File irb/input-method.rb, line 139
def initialize(file)
  @io = file.is_a?(IO) ? file : File.open(file)
  @external_encoding = @io.external_encoding
end
open(file, &block) 点击切换源代码
# File irb/input-method.rb, line 128
def open(file, &block)
  begin
    io = new(file)
    block.call(io)
  ensure
    io&.close
  end
end

公共实例方法

close() 点击切换源代码
# File irb/input-method.rb, line 170
def close
  @io.close
end
encoding() 点击切换源代码

标准输入的外部编码。

# File irb/input-method.rb, line 161
def encoding
  @external_encoding
end
eof?() 点击切换源代码

是否已到达此输入方法的末尾,如果没有更多数据可读,则返回 true

有关更多信息,请参阅 IO#eof?。

# File irb/input-method.rb, line 148
def eof?
  @io.closed? || @io.eof?
end
gets() 点击切换源代码

从此输入方法读取下一行。

有关更多信息,请参阅 IO#gets。

# File irb/input-method.rb, line 155
def gets
  print @prompt
  @io.gets
end
inspect() 点击切换源代码

用于调试消息

# File irb/input-method.rb, line 166
def inspect
  'FileInputMethod'
end