class RDoc::ERBIO

ERB 的一个子类,直接写入 IO。感谢 Aaron Patterson 和 Masatoshi SEKI。

使用方法

erbio = RDoc::ERBIO.new '<%= "hello world" %>', nil, nil

File.open 'hello.txt', 'w' do |io|
  erbio.result binding
end

请注意,绑定必须包含您希望输出的 io。

公共类方法

new(str, trim_mode: nil, eoutvar: 'io') 点击切换源代码

默认情况下,eoutvar 为 ‘io’,否则与 ERB 的 initialize 相同

调用父类方法
# File rdoc/erbio.rb, line 23
def initialize str, trim_mode: nil, eoutvar: 'io'
  super(str, trim_mode: trim_mode, eoutvar: eoutvar)
end

公共实例方法

set_eoutvar(compiler, io_variable) 点击切换源代码

指示 compiler 如何写入 io_variable

# File rdoc/erbio.rb, line 30
def set_eoutvar compiler, io_variable
  compiler.put_cmd    = "#{io_variable}.write"
  compiler.insert_cmd = "#{io_variable}.write"
  compiler.pre_cmd    = []
  compiler.post_cmd   = []
end