Sha256: 550486dc3f604ea452b5560378a891e9102016d27cd6ba22de60c19555fa866b

Contents?: true

Size: 1.11 KB

Versions: 159

Compression:

Stored size: 1.11 KB

Contents

require 'pry/commands/ls/interrogatable'

class Pry
  class Command::Ls < Pry::ClassCommand
    class InstanceVars < Pry::Command::Ls::Formatter
      include Pry::Command::Ls::Interrogatable

      def initialize(interrogatee, no_user_opts, opts, _pry_)
        super(_pry_)
        @interrogatee = interrogatee
        @no_user_opts = no_user_opts
        @default_switch = opts[:ivars]
      end

      def correct_opts?
        super || @no_user_opts
      end

      def output_self
        ivars = if Object === @interrogatee
                  Pry::Method.safe_send(@interrogatee, :instance_variables)
                else
                  [] #TODO: BasicObject support
                end
        kvars = Pry::Method.safe_send(interrogatee_mod, :class_variables)
        ivars_out = output_section('instance variables', format(:instance_var, ivars))
        kvars_out = output_section('class variables', format(:class_var, kvars))
        ivars_out + kvars_out
      end

      private

      def format(type, vars)
        vars.sort_by { |var| var.to_s.downcase }.map { |var| color(type, var) }
      end

    end
  end
end

Version data entries

159 entries across 152 versions & 35 rubygems

Version Path
pry-0.10.2 lib/pry/commands/ls/instance_vars.rb
pry-0.10.2-i386-mswin32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.2-i386-mingw32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.2-x64-mingw32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.2-java lib/pry/commands/ls/instance_vars.rb
geminfo-0.1.0 path/gems/pry-0.10.1-x86-mingw32/lib/pry/commands/ls/instance_vars.rb
solidus_backend-1.0.0.pre3 vendor/bundle/gems/pry-0.10.1/lib/pry/commands/ls/instance_vars.rb
solidus_backend-1.0.0.pre2 vendor/bundle/gems/pry-0.10.1/lib/pry/commands/ls/instance_vars.rb
solidus_backend-1.0.0.pre vendor/bundle/gems/pry-0.10.1/lib/pry/commands/ls/instance_vars.rb
pry-0.10.1 lib/pry/commands/ls/instance_vars.rb
pry-0.10.1-i386-mswin32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.1-i386-mingw32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.1-x64-mingw32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.1-java lib/pry/commands/ls/instance_vars.rb
whos_dated_who-0.1.0 vendor/bundle/gems/pry-0.10.0/lib/pry/commands/ls/instance_vars.rb
whos_dated_who-0.0.1 vendor/bundle/gems/pry-0.10.0/lib/pry/commands/ls/instance_vars.rb
pry-0.10.0 lib/pry/commands/ls/instance_vars.rb
pry-0.10.0-i386-mswin32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.0-i386-mingw32 lib/pry/commands/ls/instance_vars.rb
pry-0.10.0-x64-mingw32 lib/pry/commands/ls/instance_vars.rb