module Pry::Helpers::BaseHelpers
rubocop:disable Metrics/ModuleLength
Public Instance Methods
# File lib/pry/helpers/base_helpers.rb, line 175 def colorize_code(code) CodeRay.scan(code, :ruby).term end
# File lib/pry/helpers/base_helpers.rb, line 163 def command_dependencies_met?(options) return true if !options[:requires_gem] Array(options[:requires_gem]).all? do |g| Pry::Rubygem.installed?(g) end end
# File lib/pry/helpers/base_helpers.rb, line 152 def find_command(name, set = Pry::Commands) command_match = set.find do |_, command| (listing = command.options[:listing]) == name && listing != nil end command_match.last if command_match end
formatting
# File lib/pry/helpers/base_helpers.rb, line 184 def heading(text) text = "#{text}\n--" "\e[1m#{text}\e[0m" end
# File lib/pry/helpers/base_helpers.rb, line 179 def highlight(string, regexp, highlight_color = :bright_yellow) string.gsub(regexp) { |match| "<#{highlight_color}>#{match}</#{highlight_color}>" } end
@deprecated Use {Pry::Helpers::Platform.jruby?} instead.
# File lib/pry/helpers/base_helpers.rb, line 65 def jruby? unless @jruby_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @jruby_warn = true end Pry::Helpers::Platform.jruby? end
@deprecated Use {Pry::Helpers::Platform.jruby_19?} instead.
# File lib/pry/helpers/base_helpers.rb, line 79 def jruby_19? unless @jruby19_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @jruby19_warn = true end Pry::Helpers::Platform.jruby_19? end
@deprecated Use {Pry::Helpers::Platform.mac_osx?} instead.
# File lib/pry/helpers/base_helpers.rb, line 23 def linux? unless @linux_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @linux_warn = true end Pry::Helpers::Platform.linux? end
@deprecated Use {Pry::Helpers::Platform.mac_osx?} instead.
# File lib/pry/helpers/base_helpers.rb, line 9 def mac_osx? unless @mac_osx_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @mac_osx_warn = true end Pry::Helpers::Platform.mac_osx? end
@deprecated Use {Pry::Helpers::Platform.mri?} instead.
# File lib/pry/helpers/base_helpers.rb, line 93 def mri? unless @mri_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @mri_warn = true end Pry::Helpers::Platform.mri? end
@deprecated Use {Pry::Helpers::Platform.mri_19?} instead.
# File lib/pry/helpers/base_helpers.rb, line 107 def mri_19? unless @mri19_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @mri19_warn = true end Pry::Helpers::Platform.mri_19? end
@deprecated Use {Pry::Helpers::Platform.mri_2?} instead.
# File lib/pry/helpers/base_helpers.rb, line 121 def mri_2? unless @mri2_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @mri2_warn = true end Pry::Helpers::Platform.mri_2? end
# File lib/pry/helpers/base_helpers.rb, line 159 def not_a_real_file?(file) file =~ /^(\(.*\))$|^<.*>$/ || file =~ /__unknown__/ || file == "" || file == "-e" end
Acts like send but ignores any methods defined below Object or Class in the inheritance hierarchy. This is required to introspect methods on objects like Net::HTTP::Get that have overridden the `method` method.
# File lib/pry/helpers/base_helpers.rb, line 147 def safe_send(obj, method, *args, &block) (Module === obj ? Module : Object).instance_method(method).bind(obj).call(*args, &block) end
# File lib/pry/helpers/base_helpers.rb, line 133 def silence_warnings old_verbose = $VERBOSE $VERBOSE = nil begin yield ensure $VERBOSE = old_verbose end end
Send the given text through the best available pager (if Pry.config.pager is enabled). Infers where to send the output if used as a mixin. DEPRECATED.
# File lib/pry/helpers/base_helpers.rb, line 192 def stagger_output(text, _out = nil) if defined?(_pry_) && _pry_ _pry_.pager.page text else Pry.new.pager.page text end end
# File lib/pry/helpers/base_helpers.rb, line 171 def use_ansi_codes? Pry::Helpers::Platform.windows_ansi? || ENV['TERM'] && ENV['TERM'] != "dumb" end
@deprecated Use {Pry::Helpers::Platform.windows?} instead.
# File lib/pry/helpers/base_helpers.rb, line 37 def windows? unless @windows_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @windows_warn = true end Pry::Helpers::Platform.windows? end
@deprecated Use {Pry::Helpers::Platform.windows_ansi?} instead.
# File lib/pry/helpers/base_helpers.rb, line 51 def windows_ansi? unless @windows_ansi_warn loc = caller_locations(1..1).first warn( "#{loc.path}:#{loc.lineno}: warning: method BaseHelpers##{__method__} " \ "is deprecated. Use Pry:Helpers::Platform.#{__method__} instead" ) @windows_ansi_warn = true end Pry::Helpers::Platform.windows_ansi? end