Class: Pry::Command::Ls::Constants
Constant Summary
collapse
- DEPRECATED_CONSTANTS =
[
:Data, :Fixnum, :Bignum, :TimeoutError, :NIL, :FALSE, :TRUE
].tap do |constants|
constants << :JavaPackageModuleTemplate if Helpers::Platform.jruby?
end
Instance Attribute Summary
Attributes inherited from Formatter
#grep, #pry_instance
Instance Method Summary
collapse
#interrogatee_mod, #interrogating_a_module?
Methods inherited from Formatter
#color, #format_value, #output_section, #write_out
Constructor Details
#initialize(interrogatee, no_user_opts, opts, pry_instance) ⇒ Constants
Returns a new instance of Constants.
14
15
16
17
18
19
20
21
|
# File 'lib/pry/commands/ls/constants.rb', line 14
def initialize(interrogatee, no_user_opts, opts, pry_instance)
super(pry_instance)
@interrogatee = interrogatee
@no_user_opts = no_user_opts
@default_switch = opts[:constants]
@verbose_switch = opts[:verbose]
@dconstants = opts.dconstants?
end
|
Instance Method Details
#correct_opts? ⇒ Boolean
23
24
25
|
# File 'lib/pry/commands/ls/constants.rb', line 23
def correct_opts?
super || (@no_user_opts && interrogating_a_module?)
end
|
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
# File 'lib/pry/commands/ls/constants.rb', line 39
def format(mod, constants)
constants.sort_by(&:downcase).map do |name|
if Object.respond_to?(:deprecate_constant) &&
DEPRECATED_CONSTANTS.include?(name) &&
!show_deprecated_constants?
next
end
if (const = (begin
!mod.autoload?(name) && (mod.const_get(name) || true)
rescue StandardError
nil
end))
if begin
const < Exception
rescue StandardError
false
end
color(:exception_constant, name)
elsif begin
mod.const_get(name).is_a?(Module)
rescue StandardError
false
end
color(:class_constant, name)
else
color(:constant, name)
end
else
color(:unloaded_constant, name)
end
end
end
|
#output_self ⇒ Object
27
28
29
30
31
|
# File 'lib/pry/commands/ls/constants.rb', line 27
def output_self
mod = interrogatee_mod
constants = WrappedModule.new(mod).constants(@verbose_switch)
output_section('constants', grep.regexp[format(mod, constants)])
end
|
#show_deprecated_constants? ⇒ Boolean
35
36
37
|
# File 'lib/pry/commands/ls/constants.rb', line 35
def show_deprecated_constants?
@dconstants == true
end
|