Module: IRB::ContextExtender
| Relationships & Source Files | |
| Defined in: | lib/irb/extend-command.rb | 
Overview
Extends methods for the Context module
Constant Summary
- 
    CE =
    Internal use only
    
 # File 'lib/irb/extend-command.rb', line 339ContextExtender
Class Method Summary
- 
    
      .def_extend_command(cmd_name, load_file, *aliases)  
    
    Evaluate the given commandfrom the givenload_fileon theContextmodule.
- 
    
      .install_extend_commands  
    
    Installs the default context extensions as irb commands: 
Class Method Details
.def_extend_command(cmd_name, load_file, *aliases)
Evaluate the given command from the given load_file on the Context module.
Will also define any given aliases for the method.
# File 'lib/irb/extend-command.rb', line 364
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
Installs the default context extensions as irb commands:
- Context#eval_history=
- 
irb/ext/history.rb
- Context#use_tracer=
- 
irb/ext/tracer.rb
- Context#use_loader=
- 
irb/ext/use-loader.rb
- Context#save_history=
- 
irb/ext/save-history.rb
# File 'lib/irb/extend-command.rb', line 354
def self.install_extend_commands for args in @EXTEND_COMMANDS def_extend_command(*args) end end