ERB::DefMethod 模块

公共类方法

def_erb_method(methodname, erb_or_fname) 点击切换源

使用 ERB 对象或 eRuby 文件,将 methodname 定义为当前模块的实例方法

# File lib/erb/def_method.rb, line 36
def def_erb_method(methodname, erb_or_fname)
  if erb_or_fname.kind_of? String
    fname = erb_or_fname
    erb = ERB.new(File.read(fname))
    erb.def_method(self, methodname, fname)
  else
    erb = erb_or_fname
    erb.def_method(self, methodname, erb.filename || '(ERB)')
  end
end

私有实例方法

def_erb_method(methodname, erb_or_fname) 点击切换源

使用 ERB 对象或 eRuby 文件,将 methodname 定义为当前模块的实例方法

# File lib/erb/def_method.rb, line 36
def def_erb_method(methodname, erb_or_fname)
  if erb_or_fname.kind_of? String
    fname = erb_or_fname
    erb = ERB.new(File.read(fname))
    erb.def_method(self, methodname, fname)
  else
    erb = erb_or_fname
    erb.def_method(self, methodname, erb.filename || '(ERB)')
  end
end