module Pry::Helpers::BaseHelpers

rubocop:disable Metrics/ModuleLength

Public Instance Methods

colorize_code(code) click to toggle source
# File lib/pry/helpers/base_helpers.rb, line 175
def colorize_code(code)
  CodeRay.scan(code, :ruby).term
end
command_dependencies_met?(options) click to toggle source
# 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
find_command(name, set = Pry::Commands) click to toggle source
# 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
heading(text) click to toggle source

formatting

# File lib/pry/helpers/base_helpers.rb, line 184
def heading(text)
  text = "#{text}\n--"
  "\e[1m#{text}\e[0m"
end
highlight(string, regexp, highlight_color = :bright_yellow) click to toggle source
# 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
jruby?() click to toggle source

@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
jruby_19?() click to toggle source

@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
linux?() click to toggle source

@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
mac_osx?() click to toggle source

@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
mri?() click to toggle source

@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
mri_19?() click to toggle source

@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
mri_2?() click to toggle source

@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
not_a_real_file?(file) click to toggle source
# File lib/pry/helpers/base_helpers.rb, line 159
def not_a_real_file?(file)
  file =~ /^(\(.*\))$|^<.*>$/ || file =~ /__unknown__/ || file == "" || file == "-e"
end
safe_send(obj, method, *args, &block) click to toggle source

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
silence_warnings() { || ... } click to toggle source
# 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
stagger_output(text, _out = nil) click to toggle source

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
use_ansi_codes?() click to toggle source
# File lib/pry/helpers/base_helpers.rb, line 171
def use_ansi_codes?
  Pry::Helpers::Platform.windows_ansi? || ENV['TERM'] && ENV['TERM'] != "dumb"
end
windows?() click to toggle source

@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
windows_ansi?() click to toggle source

@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