模組 IRB::ContextExtender

擴充 Context 模組的方法

公開類別方法

def_extend_command(cmd_name, load_file, *aliases) 按一下以切換來源

Context 模組上從指定的 load_file 評估指定的 command

也會為方法定義任何指定的 aliases

# File lib/irb/extend-command.rb, line 345
def self.def_extend_command(cmd_name, load_file, *aliases)
  line = __LINE__; Context.module_eval %[
    def #{cmd_name}(*opts, &b)
      Context.module_eval {remove_method(:#{cmd_name})}
      require_relative "#{load_file}"
      __send__ :#{cmd_name}, *opts, &b
    end
    for ali in aliases
      alias_method ali, cmd_name
    end
  ], __FILE__, line
end
install_extend_commands() 按一下以切換來源

將預設的內容擴充套件安裝為 irb 命令

Context#eval_history=

irb/ext/history.rb

Context#use_tracer=

irb/ext/tracer.rb

Context#use_loader=

irb/ext/use-loader.rb

# File lib/irb/extend-command.rb, line 335
def self.install_extend_commands
  for args in @EXTEND_COMMANDS
    def_extend_command(*args)
  end
end