diff options
-rw-r--r-- | lib/irb.rb | 10 | ||||
-rw-r--r-- | lib/irb/completion.rb | 25 | ||||
-rw-r--r-- | lib/irb/ext/tracer.rb | 1 | ||||
-rw-r--r-- | lib/irb/extend-command.rb | 54 |
4 files changed, 0 insertions, 90 deletions
diff --git a/lib/irb.rb b/lib/irb.rb index cef6ebc952..f9f39a1def 100644 --- a/lib/irb.rb +++ b/lib/irb.rb @@ -416,11 +416,6 @@ module IRB irb.run(@CONF) end - # Calls each event hook of <code>IRB.conf[:AT_EXIT]</code> when the current session quits. - def IRB.irb_at_exit - @CONF[:AT_EXIT].each{|hook| hook.call} - end - # Quits irb def IRB.irb_exit(irb, ret) throw :IRB_EXIT, ret @@ -897,11 +892,6 @@ module IRB ensure $VERBOSE = verbose end - - ATTR_TTY = "\e[%sm" - def ATTR_TTY.[](*a) self % a.join(";"); end - ATTR_PLAIN = "" - def ATTR_PLAIN.[](*) self; end end def @CONF.inspect diff --git a/lib/irb/completion.rb b/lib/irb/completion.rb index c21ebfbdbd..6a7e04264a 100644 --- a/lib/irb/completion.rb +++ b/lib/irb/completion.rb @@ -450,30 +450,5 @@ module IRB end end end - - def self.ignored_modules - # We could cache the result, but this is very fast already. - # By using this approach, we avoid Module#name calls, which are - # relatively slow when there are a lot of anonymous modules defined. - s = {} - - scanner = lambda do |m| - next if s.include?(m) # IRB::ExtendCommandBundle::EXCB recurses. - s[m] = true - m.constants(false).each do |c| - value = m.const_get(c) - scanner.call(value) if value.is_a?(Module) - end - end - - %i(IRB RubyLex).each do |sym| - next unless Object.const_defined?(sym) - scanner.call(Object.const_get(sym)) - end - - s.delete(IRB::Context) if defined?(IRB::Context) - - s - end end end diff --git a/lib/irb/ext/tracer.rb b/lib/irb/ext/tracer.rb index 2d20cd3821..5fde3409cf 100644 --- a/lib/irb/ext/tracer.rb +++ b/lib/irb/ext/tracer.rb @@ -9,7 +9,6 @@ begin rescue LoadError $stderr.puts "Tracer extension of IRB is enabled but tracer gem doesn't found." module IRB - TracerLoadError = true class Context def use_tracer=(opt) # do nothing diff --git a/lib/irb/extend-command.rb b/lib/irb/extend-command.rb index 5020b1e5cd..e68b79daa7 100644 --- a/lib/irb/extend-command.rb +++ b/lib/irb/extend-command.rb @@ -371,58 +371,4 @@ module IRB # :nodoc: CE.install_extend_commands end - - # A convenience module for extending Ruby methods. - module MethodExtender - # Extends the given +base_method+ with a prefix call to the given - # +extend_method+. - def def_pre_proc(base_method, extend_method) - base_method = base_method.to_s - extend_method = extend_method.to_s - - alias_name = new_alias_name(base_method) - module_eval %[ - alias_method alias_name, base_method - def #{base_method}(*opts) - __send__ :#{extend_method}, *opts - __send__ :#{alias_name}, *opts - end - ] - end - - # Extends the given +base_method+ with a postfix call to the given - # +extend_method+. - def def_post_proc(base_method, extend_method) - base_method = base_method.to_s - extend_method = extend_method.to_s - - alias_name = new_alias_name(base_method) - module_eval %[ - alias_method alias_name, base_method - def #{base_method}(*opts) - __send__ :#{alias_name}, *opts - __send__ :#{extend_method}, *opts - end - ] - end - - # Returns a unique method name to use as an alias for the given +name+. - # - # Usually returns <code>#{prefix}#{name}#{postfix}<num></code>, example: - # - # new_alias_name('foo') #=> __alias_of__foo__ - # def bar; end - # new_alias_name('bar') #=> __alias_of__bar__2 - def new_alias_name(name, prefix = "__alias_of__", postfix = "__") - base_name = "#{prefix}#{name}#{postfix}" - all_methods = instance_methods(true) + private_instance_methods(true) - same_methods = all_methods.grep(/^#{Regexp.quote(base_name)}[0-9]*$/) - return base_name if same_methods.empty? - no = same_methods.size - while !same_methods.include?(alias_name = base_name + no) - no += 1 - end - alias_name - end - end end |