class Pry::Command::Ls

Constants

DEFAULT_OPTIONS

Public Instance Methods

no_user_opts?() click to toggle source

Exclude -q, -v and –grep because they, don’t specify what the user wants to see.

# File lib/pry/commands/ls.rb, line 72
def no_user_opts?
  !(opts[:methods] || opts['instance-methods'] || opts[:ppp] ||
    opts[:globals] || opts[:locals] || opts[:constants] || opts[:ivars])
end
options(opt) click to toggle source
# File lib/pry/commands/ls.rb, line 52
def options(opt)
  opt.on :m, :methods,   "Show public methods defined on the Object"
  opt.on :M, "instance-methods", "Show public methods defined in a Module or Class"
  opt.on :p, :ppp,       "Show public, protected (in yellow) and private (in green) methods"
  opt.on :q, :quiet,     "Show only methods defined on object.singleton_class and object.class"
  opt.on :v, :verbose,   "Show methods and constants on all super-classes (ignores Pry.config.ls.ceiling)"
  opt.on :g, :globals,   "Show global variables, including those builtin to Ruby (in cyan)"
  opt.on :l, :locals,    "Show hash of local vars, sorted by descending size"
  opt.on :c, :constants, "Show constants, highlighting classes (in blue), and exceptions (in purple).\n" <<
  " " * 32 <<            "Constants that are pending autoload? are also shown (in yellow)"
  opt.on :i, :ivars,     "Show instance variables (in blue) and class variables (in bright blue)"
  opt.on :G, :grep,      "Filter output by regular expression", :argument => true

  if jruby?
    opt.on :J, "all-java", "Show all the aliases for methods from java (default is to show only prettiest)"
  end
end
process() click to toggle source
# File lib/pry/commands/ls.rb, line 77
def process
  @interrogatee = args.empty? ? target_self : target.eval(args.join(' '))
  raise_errors_if_arguments_are_weird
  ls_entity = LsEntity.new({
    :interrogatee => @interrogatee,
    :no_user_opts => no_user_opts?,
    :opts => opts,
    :args => args,
    :_pry_ => _pry_
  })

  _pry_.pager.page ls_entity.entities_table
end