pry 0.9.12.2 → 0.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGELOG.md +1141 -0
- data/LICENSE +2 -2
- data/README.md +466 -0
- data/bin/pry +4 -7
- data/lib/pry/basic_object.rb +10 -0
- data/lib/pry/block_command.rb +22 -0
- data/lib/pry/class_command.rb +194 -0
- data/lib/pry/cli.rb +97 -92
- data/lib/pry/code/code_file.rb +114 -0
- data/lib/pry/code/code_range.rb +7 -4
- data/lib/pry/code/loc.rb +27 -14
- data/lib/pry/code.rb +62 -90
- data/lib/pry/code_object.rb +83 -39
- data/lib/pry/color_printer.rb +66 -0
- data/lib/pry/command.rb +202 -371
- data/lib/pry/command_set.rb +151 -133
- data/lib/pry/command_state.rb +31 -0
- data/lib/pry/commands/amend_line.rb +86 -82
- data/lib/pry/commands/bang.rb +18 -14
- data/lib/pry/commands/bang_pry.rb +15 -11
- data/lib/pry/commands/cat/abstract_formatter.rb +23 -18
- data/lib/pry/commands/cat/exception_formatter.rb +85 -73
- data/lib/pry/commands/cat/file_formatter.rb +56 -63
- data/lib/pry/commands/cat/input_expression_formatter.rb +35 -30
- data/lib/pry/commands/cat.rb +64 -47
- data/lib/pry/commands/cd.rb +42 -26
- data/lib/pry/commands/change_inspector.rb +34 -0
- data/lib/pry/commands/change_prompt.rb +51 -0
- data/lib/pry/commands/clear_screen.rb +20 -0
- data/lib/pry/commands/code_collector.rb +148 -131
- data/lib/pry/commands/disable_pry.rb +23 -19
- data/lib/pry/commands/easter_eggs.rb +23 -34
- data/lib/pry/commands/edit/exception_patcher.rb +21 -17
- data/lib/pry/commands/edit/file_and_line_locator.rb +33 -24
- data/lib/pry/commands/edit.rb +183 -167
- data/lib/pry/commands/exit.rb +40 -35
- data/lib/pry/commands/exit_all.rb +24 -20
- data/lib/pry/commands/exit_program.rb +20 -17
- data/lib/pry/commands/find_method.rb +167 -167
- data/lib/pry/commands/fix_indent.rb +16 -12
- data/lib/pry/commands/help.rb +140 -133
- data/lib/pry/commands/hist.rb +153 -132
- data/lib/pry/commands/import_set.rb +20 -15
- data/lib/pry/commands/jump_to.rb +25 -21
- data/lib/pry/commands/list_inspectors.rb +42 -0
- data/lib/pry/commands/ls/constants.rb +75 -0
- data/lib/pry/commands/ls/formatter.rb +55 -0
- data/lib/pry/commands/ls/globals.rb +50 -0
- data/lib/pry/commands/ls/grep.rb +23 -0
- data/lib/pry/commands/ls/instance_vars.rb +40 -0
- data/lib/pry/commands/ls/interrogatable.rb +24 -0
- data/lib/pry/commands/ls/jruby_hacks.rb +55 -0
- data/lib/pry/commands/ls/local_names.rb +37 -0
- data/lib/pry/commands/ls/local_vars.rb +47 -0
- data/lib/pry/commands/ls/ls_entity.rb +65 -0
- data/lib/pry/commands/ls/methods.rb +55 -0
- data/lib/pry/commands/ls/methods_helper.rb +50 -0
- data/lib/pry/commands/ls/self_methods.rb +34 -0
- data/lib/pry/commands/ls.rb +100 -303
- data/lib/pry/commands/nesting.rb +21 -17
- data/lib/pry/commands/play.rb +93 -49
- data/lib/pry/commands/pry_backtrace.rb +22 -18
- data/lib/pry/commands/pry_version.rb +15 -11
- data/lib/pry/commands/raise_up.rb +33 -27
- data/lib/pry/commands/reload_code.rb +57 -48
- data/lib/pry/commands/reset.rb +16 -12
- data/lib/pry/commands/ri.rb +57 -38
- data/lib/pry/commands/save_file.rb +45 -43
- data/lib/pry/commands/shell_command.rb +66 -34
- data/lib/pry/commands/shell_mode.rb +22 -20
- data/lib/pry/commands/show_doc.rb +80 -65
- data/lib/pry/commands/show_info.rb +193 -159
- data/lib/pry/commands/show_input.rb +16 -11
- data/lib/pry/commands/show_source.rb +113 -33
- data/lib/pry/commands/stat.rb +35 -31
- data/lib/pry/commands/switch_to.rb +21 -15
- data/lib/pry/commands/toggle_color.rb +21 -13
- data/lib/pry/commands/watch_expression/expression.rb +43 -0
- data/lib/pry/commands/watch_expression.rb +110 -0
- data/lib/pry/commands/whereami.rb +157 -134
- data/lib/pry/commands/wtf.rb +78 -40
- data/lib/pry/config/attributable.rb +22 -0
- data/lib/pry/config/lazy_value.rb +29 -0
- data/lib/pry/config/memoized_value.rb +34 -0
- data/lib/pry/config/value.rb +24 -0
- data/lib/pry/config.rb +290 -220
- data/lib/pry/control_d_handler.rb +28 -0
- data/lib/pry/core_extensions.rb +50 -27
- data/lib/pry/editor.rb +130 -102
- data/lib/pry/env.rb +18 -0
- data/lib/pry/exception_handler.rb +43 -0
- data/lib/pry/exceptions.rb +73 -0
- data/lib/pry/forwardable.rb +27 -0
- data/lib/pry/helpers/base_helpers.rb +22 -151
- data/lib/pry/helpers/command_helpers.rb +55 -63
- data/lib/pry/helpers/documentation_helpers.rb +21 -13
- data/lib/pry/helpers/options_helpers.rb +15 -8
- data/lib/pry/helpers/platform.rb +55 -0
- data/lib/pry/helpers/table.rb +44 -32
- data/lib/pry/helpers/text.rb +96 -86
- data/lib/pry/helpers.rb +3 -0
- data/lib/pry/history.rb +101 -70
- data/lib/pry/hooks.rb +67 -137
- data/lib/pry/indent.rb +79 -73
- data/lib/pry/input_completer.rb +283 -0
- data/lib/pry/input_lock.rb +129 -0
- data/lib/pry/inspector.rb +39 -0
- data/lib/pry/last_exception.rb +61 -0
- data/lib/pry/method/disowned.rb +19 -5
- data/lib/pry/{commands/edit/method_patcher.rb → method/patcher.rb} +51 -42
- data/lib/pry/method/weird_method_locator.rb +80 -44
- data/lib/pry/method.rb +225 -176
- data/lib/pry/object_path.rb +91 -0
- data/lib/pry/output.rb +136 -0
- data/lib/pry/pager.rb +227 -68
- data/lib/pry/prompt.rb +214 -0
- data/lib/pry/pry_class.rb +216 -289
- data/lib/pry/pry_instance.rb +438 -500
- data/lib/pry/repl.rb +256 -0
- data/lib/pry/repl_file_loader.rb +34 -35
- data/lib/pry/ring.rb +89 -0
- data/lib/pry/slop/LICENSE +20 -0
- data/lib/pry/slop/commands.rb +190 -0
- data/lib/pry/slop/option.rb +210 -0
- data/lib/pry/slop.rb +672 -0
- data/lib/pry/syntax_highlighter.rb +26 -0
- data/lib/pry/system_command_handler.rb +17 -0
- data/lib/pry/testable/evalable.rb +24 -0
- data/lib/pry/testable/mockable.rb +22 -0
- data/lib/pry/testable/pry_tester.rb +88 -0
- data/lib/pry/testable/utility.rb +34 -0
- data/lib/pry/testable/variables.rb +52 -0
- data/lib/pry/testable.rb +68 -0
- data/lib/pry/version.rb +3 -1
- data/lib/pry/warning.rb +20 -0
- data/lib/pry/{module_candidate.rb → wrapped_module/candidate.rb} +36 -43
- data/lib/pry/wrapped_module.rb +102 -103
- data/lib/pry.rb +135 -261
- metadata +94 -283
- data/.document +0 -2
- data/.gitignore +0 -16
- data/.travis.yml +0 -21
- data/.yardopts +0 -1
- data/CHANGELOG +0 -534
- data/CONTRIBUTORS +0 -55
- data/Gemfile +0 -9
- data/Guardfile +0 -62
- data/README.markdown +0 -400
- data/Rakefile +0 -140
- data/TODO +0 -117
- data/lib/pry/commands/disabled_commands.rb +0 -2
- data/lib/pry/commands/gem_cd.rb +0 -26
- data/lib/pry/commands/gem_install.rb +0 -29
- data/lib/pry/commands/gem_list.rb +0 -33
- data/lib/pry/commands/gem_open.rb +0 -29
- data/lib/pry/commands/gist.rb +0 -102
- data/lib/pry/commands/install_command.rb +0 -51
- data/lib/pry/commands/simple_prompt.rb +0 -22
- data/lib/pry/commands.rb +0 -6
- data/lib/pry/completion.rb +0 -304
- data/lib/pry/custom_completions.rb +0 -6
- data/lib/pry/history_array.rb +0 -116
- data/lib/pry/plugins.rb +0 -103
- data/lib/pry/rbx_method.rb +0 -13
- data/lib/pry/rbx_path.rb +0 -22
- data/lib/pry/rubygem.rb +0 -74
- data/lib/pry/terminal.rb +0 -78
- data/lib/pry/test/helper.rb +0 -185
- data/man/pry.1 +0 -195
- data/man/pry.1.html +0 -204
- data/man/pry.1.ronn +0 -141
- data/pry.gemspec +0 -30
- data/spec/Procfile +0 -3
- data/spec/cli_spec.rb +0 -78
- data/spec/code_object_spec.rb +0 -277
- data/spec/code_spec.rb +0 -219
- data/spec/command_helpers_spec.rb +0 -29
- data/spec/command_integration_spec.rb +0 -644
- data/spec/command_set_spec.rb +0 -627
- data/spec/command_spec.rb +0 -821
- data/spec/commands/amend_line_spec.rb +0 -247
- data/spec/commands/bang_spec.rb +0 -19
- data/spec/commands/cat_spec.rb +0 -164
- data/spec/commands/cd_spec.rb +0 -250
- data/spec/commands/disable_pry_spec.rb +0 -25
- data/spec/commands/edit_spec.rb +0 -727
- data/spec/commands/exit_all_spec.rb +0 -34
- data/spec/commands/exit_program_spec.rb +0 -19
- data/spec/commands/exit_spec.rb +0 -34
- data/spec/commands/find_method_spec.rb +0 -70
- data/spec/commands/gem_list_spec.rb +0 -26
- data/spec/commands/gist_spec.rb +0 -79
- data/spec/commands/help_spec.rb +0 -56
- data/spec/commands/hist_spec.rb +0 -181
- data/spec/commands/jump_to_spec.rb +0 -15
- data/spec/commands/ls_spec.rb +0 -181
- data/spec/commands/play_spec.rb +0 -140
- data/spec/commands/raise_up_spec.rb +0 -56
- data/spec/commands/save_file_spec.rb +0 -177
- data/spec/commands/show_doc_spec.rb +0 -510
- data/spec/commands/show_input_spec.rb +0 -17
- data/spec/commands/show_source_spec.rb +0 -782
- data/spec/commands/whereami_spec.rb +0 -203
- data/spec/completion_spec.rb +0 -239
- data/spec/control_d_handler_spec.rb +0 -58
- data/spec/documentation_helper_spec.rb +0 -73
- data/spec/editor_spec.rb +0 -79
- data/spec/exception_whitelist_spec.rb +0 -21
- data/spec/fixtures/candidate_helper1.rb +0 -11
- data/spec/fixtures/candidate_helper2.rb +0 -8
- data/spec/fixtures/example.erb +0 -5
- data/spec/fixtures/example_nesting.rb +0 -33
- data/spec/fixtures/show_source_doc_examples.rb +0 -15
- data/spec/fixtures/testrc +0 -2
- data/spec/fixtures/testrcbad +0 -2
- data/spec/fixtures/whereami_helper.rb +0 -6
- data/spec/helper.rb +0 -34
- data/spec/helpers/bacon.rb +0 -86
- data/spec/helpers/mock_pry.rb +0 -43
- data/spec/helpers/table_spec.rb +0 -105
- data/spec/history_array_spec.rb +0 -67
- data/spec/hooks_spec.rb +0 -522
- data/spec/indent_spec.rb +0 -301
- data/spec/input_stack_spec.rb +0 -90
- data/spec/method_spec.rb +0 -482
- data/spec/prompt_spec.rb +0 -60
- data/spec/pry_defaults_spec.rb +0 -419
- data/spec/pry_history_spec.rb +0 -99
- data/spec/pry_output_spec.rb +0 -95
- data/spec/pry_spec.rb +0 -504
- data/spec/run_command_spec.rb +0 -25
- data/spec/sticky_locals_spec.rb +0 -157
- data/spec/syntax_checking_spec.rb +0 -81
- data/spec/wrapped_module_spec.rb +0 -261
- data/wiki/Customizing-pry.md +0 -397
- data/wiki/Home.md +0 -4
data/lib/pry.rb
CHANGED
@@ -1,271 +1,145 @@
|
|
1
|
-
#
|
2
|
-
# MIT License
|
3
|
-
#
|
4
|
-
|
5
|
-
require 'pp'
|
6
|
-
require 'pry/helpers/base_helpers'
|
7
|
-
require 'pry/hooks'
|
8
|
-
|
9
|
-
class Pry
|
10
|
-
# The default hooks - display messages when beginning and ending Pry sessions.
|
11
|
-
DEFAULT_HOOKS = Pry::Hooks.new.add_hook(:before_session, :default) do |out, target, _pry_|
|
12
|
-
next if _pry_.quiet?
|
13
|
-
_pry_.run_command("whereami --quiet", "", target)
|
14
|
-
end
|
15
|
-
|
16
|
-
# The default print
|
17
|
-
DEFAULT_PRINT = proc do |output, value|
|
18
|
-
output_with_default_format(output, value, :hashrocket => true)
|
19
|
-
end
|
20
|
-
|
21
|
-
def self.output_with_default_format(output, value, options = {})
|
22
|
-
stringified = begin
|
23
|
-
value.pretty_inspect
|
24
|
-
rescue RescuableException
|
25
|
-
nil
|
26
|
-
end
|
27
|
-
|
28
|
-
unless String === stringified
|
29
|
-
# Read the class name off of the singleton class to provide a default
|
30
|
-
# inspect.
|
31
|
-
klass = (class << value; self; end).ancestors.first
|
32
|
-
stringified = "#<#{klass}:0x#{value.__id__.to_s(16)}>"
|
33
|
-
end
|
34
|
-
|
35
|
-
nonce = rand(0x100000000).to_s(16) # whatever
|
36
|
-
|
37
|
-
stringified.gsub!(/#</, "%<#{nonce}")
|
38
|
-
# Don't recolorize output with color (for cucumber, looksee, etc.) [Issue #751]
|
39
|
-
colorized = if stringified =~ /\e\[/
|
40
|
-
stringified
|
41
|
-
else
|
42
|
-
Helpers::BaseHelpers.colorize_code(stringified)
|
43
|
-
end
|
44
|
-
|
45
|
-
# avoid colour-leak from CodeRay and any of the users' previous output
|
46
|
-
colorized = colorized.sub(/(\n*)\z/, "\e[0m\\1") if Pry.color
|
47
|
-
|
48
|
-
result = colorized.gsub(/%<(.*?)#{nonce}/, '#<\1')
|
49
|
-
result = "=> #{result}"if options[:hashrocket]
|
50
|
-
Helpers::BaseHelpers.stagger_output(result, output)
|
51
|
-
end
|
52
|
-
|
53
|
-
# may be convenient when working with enormous objects and
|
54
|
-
# pretty_print is too slow
|
55
|
-
SIMPLE_PRINT = proc do |output, value|
|
56
|
-
begin
|
57
|
-
output.puts value.inspect
|
58
|
-
rescue RescuableException
|
59
|
-
output.puts "unknown"
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
# useful when playing with truly enormous objects
|
64
|
-
CLIPPED_PRINT = proc do |output, value|
|
65
|
-
output.puts Pry.view_clip(value)
|
66
|
-
end
|
67
|
-
|
68
|
-
# Will only show the first line of the backtrace
|
69
|
-
DEFAULT_EXCEPTION_HANDLER = proc do |output, exception, _|
|
70
|
-
if UserError === exception && SyntaxError === exception
|
71
|
-
output.puts "SyntaxError: #{exception.message.sub(/.*syntax error, */m, '')}"
|
72
|
-
else
|
73
|
-
output.puts "#{exception.class}: #{exception.message}"
|
74
|
-
output.puts "from #{exception.backtrace.first}"
|
75
|
-
end
|
76
|
-
end
|
77
|
-
|
78
|
-
DEFAULT_PROMPT_NAME = 'pry'
|
79
|
-
|
80
|
-
# The default prompt; includes the target and nesting level
|
81
|
-
DEFAULT_PROMPT = [
|
82
|
-
proc { |target_self, nest_level, pry|
|
83
|
-
"[#{pry.input_array.size}] #{Pry.config.prompt_name}(#{Pry.view_clip(target_self)})#{":#{nest_level}" unless nest_level.zero?}> "
|
84
|
-
},
|
85
|
-
|
86
|
-
proc { |target_self, nest_level, pry|
|
87
|
-
"[#{pry.input_array.size}] #{Pry.config.prompt_name}(#{Pry.view_clip(target_self)})#{":#{nest_level}" unless nest_level.zero?}* "
|
88
|
-
}
|
89
|
-
]
|
90
|
-
|
91
|
-
# A simple prompt - doesn't display target or nesting level
|
92
|
-
SIMPLE_PROMPT = [proc { ">> " }, proc { " | " }]
|
93
|
-
|
94
|
-
SHELL_PROMPT = [
|
95
|
-
proc { |target_self, _, _| "#{Pry.config.prompt_name} #{Pry.view_clip(target_self)}:#{Dir.pwd} $ " },
|
96
|
-
proc { |target_self, _, _| "#{Pry.config.prompt_name} #{Pry.view_clip(target_self)}:#{Dir.pwd} * " }
|
97
|
-
]
|
98
|
-
|
99
|
-
# A prompt that includes the full object path as well as
|
100
|
-
# input/output (_in_ and _out_) information. Good for navigation.
|
101
|
-
NAV_PROMPT = [
|
102
|
-
proc do |conf|
|
103
|
-
tree = conf.binding_stack.map { |b| Pry.view_clip(b.eval("self")) }.join " / "
|
104
|
-
"[#{conf.expr_number}] (#{Pry.config.prompt_name}) #{tree}: #{conf.nesting_level}> "
|
105
|
-
end,
|
106
|
-
proc do |conf|
|
107
|
-
tree = conf.binding_stack.map { |b| Pry.view_clip(b.eval("self")) }.join " / "
|
108
|
-
"[#{conf.expr_number}] (#{ Pry.config.prompt_name}) #{tree}: #{conf.nesting_level}* "
|
109
|
-
end,
|
110
|
-
]
|
111
|
-
|
112
|
-
# Deal with the ^D key being pressed. Different behaviour in different cases:
|
113
|
-
# 1. In an expression behave like `!` command.
|
114
|
-
# 2. At top-level session behave like `exit` command.
|
115
|
-
# 3. In a nested session behave like `cd ..`.
|
116
|
-
DEFAULT_CONTROL_D_HANDLER = proc do |eval_string, _pry_|
|
117
|
-
if !eval_string.empty?
|
118
|
-
eval_string.replace('') # Clear input buffer.
|
119
|
-
elsif _pry_.binding_stack.one?
|
120
|
-
_pry_.binding_stack.clear
|
121
|
-
throw(:breakout)
|
122
|
-
else
|
123
|
-
# Store the entire binding stack before popping. Useful for `cd -`.
|
124
|
-
if _pry_.command_state['cd'].nil?
|
125
|
-
_pry_.command_state['cd'] = OpenStruct.new
|
126
|
-
end
|
127
|
-
_pry_.command_state['cd'].old_stack = _pry_.binding_stack.dup
|
128
|
-
_pry_.binding_stack.pop
|
129
|
-
end
|
130
|
-
end
|
131
|
-
|
132
|
-
DEFAULT_SYSTEM = proc do |output, cmd, _|
|
133
|
-
if !system(cmd)
|
134
|
-
output.puts "Error: there was a problem executing system command: #{cmd}"
|
135
|
-
end
|
136
|
-
end
|
137
|
-
|
138
|
-
# Store the current working directory. This allows show-source etc. to work if
|
139
|
-
# your process has changed directory since boot. [Issue #675]
|
140
|
-
INITIAL_PWD = Dir.pwd
|
141
|
-
|
142
|
-
# As a REPL, we often want to catch any unexpected exceptions that may have
|
143
|
-
# been raised; however we don't want to go overboard and prevent the user
|
144
|
-
# from exiting Pry when they want to.
|
145
|
-
module RescuableException
|
146
|
-
def self.===(exception)
|
147
|
-
case exception
|
148
|
-
# Catch when the user hits ^C (Interrupt < SignalException), and assume
|
149
|
-
# that they just wanted to stop the in-progress command (just like bash etc.)
|
150
|
-
when Interrupt
|
151
|
-
true
|
152
|
-
# Don't catch signals (particularly not SIGTERM) as these are unlikely to be
|
153
|
-
# intended for pry itself. We should also make sure that Kernel#exit works.
|
154
|
-
when *Pry.config.exception_whitelist
|
155
|
-
false
|
156
|
-
# All other exceptions will be caught.
|
157
|
-
else
|
158
|
-
true
|
159
|
-
end
|
160
|
-
end
|
161
|
-
end
|
162
|
-
|
163
|
-
# An Exception Tag (cf. Exceptional Ruby) that instructs Pry to show the error in
|
164
|
-
# a more user-friendly manner. This should be used when the exception happens within
|
165
|
-
# Pry itself as a direct consequence of the user typing something wrong.
|
166
|
-
#
|
167
|
-
# This allows us to distinguish between the user typing:
|
168
|
-
#
|
169
|
-
# pry(main)> def )
|
170
|
-
# SyntaxError: unexpected )
|
171
|
-
#
|
172
|
-
# pry(main)> method_that_evals("def )")
|
173
|
-
# SyntaxError: (eval):1: syntax error, unexpected ')'
|
174
|
-
# from ./a.rb:2 in `eval'
|
175
|
-
module UserError; end
|
176
|
-
|
177
|
-
# Catches SecurityErrors if $SAFE is set
|
178
|
-
module TooSafeException
|
179
|
-
def self.===(exception)
|
180
|
-
$SAFE > 0 && SecurityError === exception
|
181
|
-
end
|
182
|
-
end
|
183
|
-
|
184
|
-
# Don't catch these exceptions
|
185
|
-
DEFAULT_EXCEPTION_WHITELIST = [SystemExit, SignalException, Pry::TooSafeException]
|
186
|
-
|
187
|
-
# CommandErrors are caught by the REPL loop and displayed to the user. They
|
188
|
-
# indicate an exceptional condition that's fatal to the current command.
|
189
|
-
class CommandError < StandardError; end
|
190
|
-
class MethodNotFound < CommandError; end
|
1
|
+
# frozen_string_literal: true
|
191
2
|
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
# This is to keep from breaking under Rails 3.2 for people who are doing that
|
196
|
-
# IRB = Pry thing.
|
197
|
-
module ExtendCommandBundle
|
198
|
-
end
|
199
|
-
end
|
200
|
-
|
201
|
-
if Pry::Helpers::BaseHelpers.mri_18?
|
202
|
-
begin
|
203
|
-
require 'ruby18_source_location'
|
204
|
-
rescue LoadError
|
205
|
-
end
|
206
|
-
end
|
207
|
-
|
208
|
-
require 'method_source'
|
209
|
-
require 'shellwords'
|
210
|
-
require 'stringio'
|
211
|
-
require 'coderay'
|
212
|
-
require 'slop'
|
213
|
-
require 'rbconfig'
|
214
|
-
require 'tempfile'
|
215
|
-
|
216
|
-
begin
|
217
|
-
require 'readline'
|
218
|
-
rescue LoadError
|
219
|
-
warn "You're running a version of ruby with no Readline support"
|
220
|
-
warn "Please `gem install rb-readline` or recompile ruby --with-readline."
|
221
|
-
exit!
|
222
|
-
end
|
223
|
-
|
224
|
-
if Pry::Helpers::BaseHelpers.jruby?
|
225
|
-
begin
|
226
|
-
require 'ffi'
|
227
|
-
rescue LoadError
|
228
|
-
warn "Need to `gem install ffi`"
|
229
|
-
end
|
230
|
-
end
|
231
|
-
|
232
|
-
if Pry::Helpers::BaseHelpers.windows? && !Pry::Helpers::BaseHelpers.windows_ansi?
|
233
|
-
begin
|
234
|
-
require 'win32console'
|
235
|
-
# The mswin and mingw versions of pry require win32console, so this should
|
236
|
-
# only fail on jruby (where win32console doesn't work).
|
237
|
-
# Instead we'll recommend ansicon, which does.
|
238
|
-
rescue LoadError
|
239
|
-
warn "For a better pry experience, please use ansicon: http://adoxa.3eeweb.com/ansicon/"
|
240
|
-
end
|
241
|
-
end
|
242
|
-
|
243
|
-
begin
|
244
|
-
require 'bond'
|
245
|
-
rescue LoadError
|
246
|
-
end
|
3
|
+
# (C) John Mair (banisterfiend) 2016
|
4
|
+
# MIT License
|
247
5
|
|
248
6
|
require 'pry/version'
|
249
|
-
require 'pry/
|
250
|
-
require 'pry/
|
251
|
-
|
252
|
-
require 'pry/
|
7
|
+
require 'pry/last_exception'
|
8
|
+
require 'pry/forwardable'
|
9
|
+
|
10
|
+
require 'pry/helpers/base_helpers'
|
11
|
+
require 'pry/helpers/documentation_helpers'
|
253
12
|
require 'pry/helpers'
|
13
|
+
|
14
|
+
require 'pry/basic_object'
|
15
|
+
require 'pry/prompt'
|
254
16
|
require 'pry/code_object'
|
255
|
-
require 'pry/
|
256
|
-
require 'pry/
|
257
|
-
require 'pry/
|
17
|
+
require 'pry/exceptions'
|
18
|
+
require 'pry/hooks'
|
19
|
+
require 'pry/input_completer'
|
258
20
|
require 'pry/command'
|
21
|
+
require 'pry/class_command'
|
22
|
+
require 'pry/block_command'
|
259
23
|
require 'pry/command_set'
|
260
|
-
require 'pry/
|
261
|
-
require 'pry/
|
262
|
-
require 'pry/
|
263
|
-
require 'pry/
|
264
|
-
require 'pry/
|
24
|
+
require 'pry/syntax_highlighter'
|
25
|
+
require 'pry/editor'
|
26
|
+
require 'pry/history'
|
27
|
+
require 'pry/color_printer'
|
28
|
+
require 'pry/exception_handler'
|
29
|
+
require 'pry/system_command_handler'
|
30
|
+
require 'pry/control_d_handler'
|
31
|
+
require 'pry/command_state'
|
32
|
+
require 'pry/warning'
|
33
|
+
require 'pry/env'
|
34
|
+
|
35
|
+
Pry::Commands = Pry::CommandSet.new unless defined?(Pry::Commands)
|
36
|
+
|
37
|
+
require 'pry/commands/ls/jruby_hacks'
|
38
|
+
require 'pry/commands/ls/methods_helper'
|
39
|
+
require 'pry/commands/ls/interrogatable'
|
40
|
+
require 'pry/commands/ls/grep'
|
41
|
+
require 'pry/commands/ls/formatter'
|
42
|
+
require 'pry/commands/ls/globals'
|
43
|
+
require 'pry/commands/ls/constants'
|
44
|
+
require 'pry/commands/ls/methods'
|
45
|
+
require 'pry/commands/ls/self_methods'
|
46
|
+
require 'pry/commands/ls/instance_vars'
|
47
|
+
require 'pry/commands/ls/local_names'
|
48
|
+
require 'pry/commands/ls/local_vars'
|
49
|
+
require 'pry/commands/ls/interrogatable'
|
50
|
+
require 'pry/commands/ls/ls_entity'
|
51
|
+
require 'pry/commands/ls/methods_helper'
|
52
|
+
require 'pry/commands/ls'
|
53
|
+
|
54
|
+
require 'pry/config/attributable'
|
55
|
+
require 'pry/config/value'
|
56
|
+
require 'pry/config/memoized_value'
|
57
|
+
require 'pry/config/lazy_value'
|
58
|
+
require 'pry/config'
|
59
|
+
|
265
60
|
require 'pry/pry_class'
|
266
61
|
require 'pry/pry_instance'
|
267
|
-
require 'pry/
|
62
|
+
require 'pry/inspector'
|
268
63
|
require 'pry/pager'
|
269
|
-
require 'pry/
|
270
|
-
require 'pry/
|
271
|
-
require 'pry/
|
64
|
+
require 'pry/indent'
|
65
|
+
require 'pry/object_path'
|
66
|
+
require 'pry/output'
|
67
|
+
require 'pry/input_lock'
|
68
|
+
require 'pry/repl'
|
69
|
+
require 'pry/code'
|
70
|
+
require 'pry/ring'
|
71
|
+
require 'pry/method'
|
72
|
+
|
73
|
+
require 'pry/wrapped_module'
|
74
|
+
require 'pry/wrapped_module/candidate'
|
75
|
+
|
76
|
+
require 'pry/slop'
|
77
|
+
require 'pry/cli'
|
78
|
+
require 'pry/core_extensions'
|
79
|
+
require 'pry/repl_file_loader'
|
80
|
+
|
81
|
+
require 'pry/code/loc'
|
82
|
+
require 'pry/code/code_range'
|
83
|
+
require 'pry/code/code_file'
|
84
|
+
|
85
|
+
require 'pry/method/weird_method_locator'
|
86
|
+
require 'pry/method/disowned'
|
87
|
+
require 'pry/method/patcher'
|
88
|
+
|
89
|
+
require 'pry/commands/amend_line'
|
90
|
+
require 'pry/commands/bang'
|
91
|
+
require 'pry/commands/bang_pry'
|
92
|
+
|
93
|
+
require 'pry/commands/cat'
|
94
|
+
require 'pry/commands/cat/abstract_formatter.rb'
|
95
|
+
require 'pry/commands/cat/input_expression_formatter.rb'
|
96
|
+
require 'pry/commands/cat/exception_formatter.rb'
|
97
|
+
require 'pry/commands/cat/file_formatter.rb'
|
98
|
+
|
99
|
+
require 'pry/commands/cd'
|
100
|
+
require 'pry/commands/change_inspector'
|
101
|
+
require 'pry/commands/change_prompt'
|
102
|
+
require 'pry/commands/clear_screen'
|
103
|
+
require 'pry/commands/code_collector'
|
104
|
+
require 'pry/commands/disable_pry'
|
105
|
+
require 'pry/commands/easter_eggs'
|
106
|
+
|
107
|
+
require 'pry/commands/edit'
|
108
|
+
require 'pry/commands/edit/exception_patcher'
|
109
|
+
require 'pry/commands/edit/file_and_line_locator'
|
110
|
+
|
111
|
+
require 'pry/commands/exit'
|
112
|
+
require 'pry/commands/exit_all'
|
113
|
+
require 'pry/commands/exit_program'
|
114
|
+
require 'pry/commands/find_method'
|
115
|
+
require 'pry/commands/fix_indent'
|
116
|
+
require 'pry/commands/help'
|
117
|
+
require 'pry/commands/hist'
|
118
|
+
require 'pry/commands/import_set'
|
119
|
+
require 'pry/commands/jump_to'
|
120
|
+
require 'pry/commands/list_inspectors'
|
121
|
+
|
122
|
+
require 'pry/commands/nesting'
|
123
|
+
require 'pry/commands/play'
|
124
|
+
require 'pry/commands/pry_backtrace'
|
125
|
+
require 'pry/commands/pry_version'
|
126
|
+
require 'pry/commands/raise_up'
|
127
|
+
require 'pry/commands/reload_code'
|
128
|
+
require 'pry/commands/reset'
|
129
|
+
require 'pry/commands/ri'
|
130
|
+
require 'pry/commands/save_file'
|
131
|
+
require 'pry/commands/shell_command'
|
132
|
+
require 'pry/commands/shell_mode'
|
133
|
+
require 'pry/commands/show_info'
|
134
|
+
require 'pry/commands/show_doc'
|
135
|
+
require 'pry/commands/show_input'
|
136
|
+
require 'pry/commands/show_source'
|
137
|
+
require 'pry/commands/stat'
|
138
|
+
require 'pry/commands/switch_to'
|
139
|
+
require 'pry/commands/toggle_color'
|
140
|
+
|
141
|
+
require 'pry/commands/watch_expression'
|
142
|
+
require 'pry/commands/watch_expression/expression.rb'
|
143
|
+
|
144
|
+
require 'pry/commands/whereami'
|
145
|
+
require 'pry/commands/wtf'
|