jets 0.5.5 → 0.5.6

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.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile.lock +1 -1
  4. data/lib/jets/builders/code_builder.rb +1 -0
  5. data/lib/jets/builders/gem_replacer.rb +1 -0
  6. data/lib/jets/version.rb +1 -1
  7. data/vendor/lambdagem/CHANGELOG.md +3 -0
  8. data/vendor/lambdagem/Gemfile.lock +3 -3
  9. data/vendor/lambdagem/README.md +0 -4
  10. data/vendor/lambdagem/lib/lambdagem.rb +2 -0
  11. data/vendor/lambdagem/lib/lambdagem/base.rb +2 -0
  12. data/vendor/lambdagem/lib/lambdagem/extract/base.rb +6 -6
  13. data/vendor/lambdagem/lib/lambdagem/extract/gem.rb +6 -5
  14. data/vendor/lambdagem/lib/lambdagem/extract/ruby.rb +4 -3
  15. data/vendor/lambdagem/lib/lambdagem/util.rb +30 -0
  16. data/vendor/lambdagem/lib/lambdagem/version.rb +1 -1
  17. metadata +3 -140
  18. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/byebug/byebug.so +0 -0
  19. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem.build_complete +0 -0
  20. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem_make.out +0 -19
  21. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/LICENSE +0 -23
  22. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/exe/byebug +0 -6
  23. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/Makefile +0 -263
  24. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.c +0 -517
  25. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.o +0 -0
  26. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.c +0 -905
  27. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.h +0 -143
  28. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.o +0 -0
  29. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.so +0 -0
  30. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.c +0 -673
  31. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.o +0 -0
  32. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/extconf.rb +0 -12
  33. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.c +0 -96
  34. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.o +0 -0
  35. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.c +0 -230
  36. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.o +0 -0
  37. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug.rb +0 -3
  38. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/attacher.rb +0 -48
  39. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/breakpoint.rb +0 -111
  40. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/byebug.so +0 -0
  41. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command.rb +0 -111
  42. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command_list.rb +0 -34
  43. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands.rb +0 -39
  44. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/break.rb +0 -116
  45. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/catch.rb +0 -82
  46. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/condition.rb +0 -57
  47. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/continue.rb +0 -50
  48. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/debug.rb +0 -38
  49. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/delete.rb +0 -57
  50. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable.rb +0 -33
  51. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/breakpoints.rb +0 -42
  52. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/display.rb +0 -43
  53. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/display.rb +0 -66
  54. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/down.rb +0 -45
  55. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/edit.rb +0 -68
  56. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable.rb +0 -33
  57. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/breakpoints.rb +0 -42
  58. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/display.rb +0 -43
  59. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/finish.rb +0 -57
  60. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/frame.rb +0 -57
  61. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/help.rb +0 -64
  62. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/history.rb +0 -39
  63. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info.rb +0 -37
  64. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/breakpoints.rb +0 -67
  65. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/display.rb +0 -51
  66. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/file.rb +0 -82
  67. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/line.rb +0 -35
  68. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/program.rb +0 -49
  69. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/interrupt.rb +0 -34
  70. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/irb.rb +0 -52
  71. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/kill.rb +0 -47
  72. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/list.rb +0 -159
  73. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/method.rb +0 -53
  74. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/next.rb +0 -40
  75. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/pry.rb +0 -43
  76. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/quit.rb +0 -42
  77. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/restart.rb +0 -64
  78. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/save.rb +0 -72
  79. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/set.rb +0 -79
  80. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/show.rb +0 -45
  81. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/source.rb +0 -42
  82. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/step.rb +0 -40
  83. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread.rb +0 -34
  84. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/current.rb +0 -37
  85. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/list.rb +0 -43
  86. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/resume.rb +0 -47
  87. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/stop.rb +0 -43
  88. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/switch.rb +0 -46
  89. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/tracevar.rb +0 -57
  90. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/undisplay.rb +0 -52
  91. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/untracevar.rb +0 -36
  92. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/up.rb +0 -45
  93. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var.rb +0 -37
  94. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/all.rb +0 -41
  95. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/args.rb +0 -39
  96. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/const.rb +0 -51
  97. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/global.rb +0 -37
  98. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/instance.rb +0 -39
  99. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/local.rb +0 -39
  100. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/where.rb +0 -53
  101. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/context.rb +0 -157
  102. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/core.rb +0 -114
  103. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/errors.rb +0 -29
  104. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/frame.rb +0 -185
  105. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/bin.rb +0 -47
  106. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/eval.rb +0 -126
  107. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/file.rb +0 -63
  108. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/frame.rb +0 -75
  109. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/parse.rb +0 -77
  110. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/path.rb +0 -40
  111. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/reflection.rb +0 -19
  112. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/string.rb +0 -36
  113. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/thread.rb +0 -67
  114. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/toggle.rb +0 -64
  115. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/var.rb +0 -54
  116. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/history.rb +0 -130
  117. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interface.rb +0 -146
  118. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/local_interface.rb +0 -44
  119. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/remote_interface.rb +0 -50
  120. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/script_interface.rb +0 -32
  121. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/test_interface.rb +0 -67
  122. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/option_setter.rb +0 -95
  123. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/base.rb +0 -69
  124. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/plain.rb +0 -44
  125. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/base.yml +0 -115
  126. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/plain.yml +0 -33
  127. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/command_processor.rb +0 -173
  128. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/control_processor.rb +0 -24
  129. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/post_mortem_processor.rb +0 -18
  130. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/script_processor.rb +0 -49
  131. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote.rb +0 -85
  132. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/client.rb +0 -55
  133. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/server.rb +0 -47
  134. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/runner.rb +0 -198
  135. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/setting.rb +0 -79
  136. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autoirb.rb +0 -29
  137. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autolist.rb +0 -29
  138. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autopry.rb +0 -29
  139. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autosave.rb +0 -17
  140. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/basename.rb +0 -16
  141. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/callstyle.rb +0 -20
  142. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/fullpath.rb +0 -16
  143. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histfile.rb +0 -20
  144. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histsize.rb +0 -20
  145. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/linetrace.rb +0 -22
  146. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/listsize.rb +0 -21
  147. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/post_mortem.rb +0 -27
  148. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/savefile.rb +0 -20
  149. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/stack_on_error.rb +0 -15
  150. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/width.rb +0 -20
  151. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/source_file_formatter.rb +0 -71
  152. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/subcommands.rb +0 -54
  153. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/version.rb +0 -8
  154. data/vendor/lambdagem/bundled/gems/ruby/2.5.0/specifications/byebug-10.0.0.gemspec +0 -39
@@ -1,54 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/helpers/eval"
4
-
5
- module Byebug
6
- module Helpers
7
- #
8
- # Utilities for variable subcommands
9
- #
10
- module VarHelper
11
- include EvalHelper
12
-
13
- def var_list(ary, binding = context.frame._binding)
14
- vars = ary.sort.map do |name|
15
- [name, safe_inspect(silent_eval(name.to_s, binding))]
16
- end
17
-
18
- puts prv(vars, "instance")
19
- end
20
-
21
- def var_global
22
- globals = global_variables.reject do |v|
23
- %i[$IGNORECASE $= $KCODE $-K $binding].include?(v)
24
- end
25
-
26
- var_list(globals)
27
- end
28
-
29
- def var_instance(str)
30
- obj = warning_eval(str || "self")
31
-
32
- var_list(obj.instance_variables, obj.instance_eval { binding })
33
- end
34
-
35
- def var_local
36
- locals = context.frame.locals
37
- cur_self = context.frame._self
38
- locals[:self] = cur_self unless cur_self.to_s == "main"
39
- puts prv(locals.keys.sort.map { |k| [k, locals[k]] }, "instance")
40
- end
41
-
42
- def var_args
43
- args = context.frame.args
44
- return if args == [[:rest]]
45
-
46
- all_locals = context.frame.locals
47
- arg_values = args.map { |arg| arg[1] }
48
-
49
- locals = all_locals.select { |k, _| arg_values.include?(k) }
50
- puts prv(locals.keys.sort.map { |k| [k, locals[k]] }, "instance")
51
- end
52
- end
53
- end
54
- end
@@ -1,130 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- begin
4
- require "readline"
5
- rescue LoadError
6
- warn <<-MESSAGE
7
- Sorry, you can't use byebug without Readline. To solve this, you need to
8
- rebuild Ruby with Readline support. If using Ubuntu, try `sudo apt-get
9
- install libreadline-dev` and then reinstall your Ruby.
10
- MESSAGE
11
-
12
- raise
13
- end
14
-
15
- module Byebug
16
- #
17
- # Handles byebug's history of commands.
18
- #
19
- class History
20
- attr_accessor :size
21
-
22
- def initialize
23
- self.size = 0
24
- end
25
-
26
- #
27
- # Array holding the list of commands in history
28
- #
29
- def buffer
30
- Readline::HISTORY.to_a
31
- end
32
-
33
- #
34
- # Restores history from disk.
35
- #
36
- def restore
37
- return unless File.exist?(Setting[:histfile])
38
-
39
- File.readlines(Setting[:histfile]).reverse_each { |l| push(l.chomp) }
40
- end
41
-
42
- #
43
- # Saves history to disk.
44
- #
45
- def save
46
- n_cmds = Setting[:histsize] > size ? size : Setting[:histsize]
47
-
48
- open(Setting[:histfile], "w") do |file|
49
- n_cmds.times { file.puts(pop) }
50
- end
51
-
52
- clear
53
- end
54
-
55
- #
56
- # Discards history.
57
- #
58
- def clear
59
- size.times { pop }
60
- end
61
-
62
- #
63
- # Adds a new command to Readline's history.
64
- #
65
- def push(cmd)
66
- return if ignore?(cmd)
67
-
68
- self.size += 1
69
- Readline::HISTORY.push(cmd)
70
- end
71
-
72
- #
73
- # Removes a command from Readline's history.
74
- #
75
- def pop
76
- self.size -= 1
77
- Readline::HISTORY.pop
78
- end
79
-
80
- #
81
- # Prints the requested numbers of history entries.
82
- #
83
- def to_s(n_cmds)
84
- show_size = n_cmds ? specific_max_size(n_cmds) : default_max_size
85
-
86
- commands = buffer.last(show_size)
87
-
88
- last_ids(show_size).zip(commands).map do |l|
89
- format("%<position>5d %<command>s", position: l[0], command: l[1])
90
- end.join("\n") + "\n"
91
- end
92
-
93
- #
94
- # Array of ids of the last n commands.
95
- #
96
- def last_ids(n)
97
- (1 + size - n..size).to_a
98
- end
99
-
100
- #
101
- # Max number of commands to be displayed when no size has been specified.
102
- #
103
- # Never more than Setting[:histsize].
104
- #
105
- def default_max_size
106
- [Setting[:histsize], self.size].min
107
- end
108
-
109
- #
110
- # Max number of commands to be displayed when a size has been specified.
111
- #
112
- # The only bound here is not showing more items than available.
113
- #
114
- def specific_max_size(number)
115
- [self.size, number].min
116
- end
117
-
118
- #
119
- # Whether a specific command should not be stored in history.
120
- #
121
- # For now, empty lines and consecutive duplicates.
122
- #
123
- def ignore?(buf)
124
- return true if /^\s*$/ =~ buf
125
- return false if Readline::HISTORY.empty?
126
-
127
- buffer[Readline::HISTORY.length - 1] == buf
128
- end
129
- end
130
- end
@@ -1,146 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/setting"
4
- require "byebug/history"
5
- require "byebug/helpers/file"
6
-
7
- #
8
- # Namespace for all of byebug's code
9
- #
10
- module Byebug
11
- #
12
- # Main Interface class
13
- #
14
- # Contains common functionality to all implemented interfaces.
15
- #
16
- class Interface
17
- include Helpers::FileHelper
18
-
19
- attr_accessor :command_queue, :history
20
- attr_reader :input, :output, :error
21
-
22
- def initialize
23
- @command_queue = []
24
- @history = History.new
25
- @last_line = ""
26
- end
27
-
28
- def last_if_empty(input)
29
- @last_line = input.empty? ? @last_line : input
30
- end
31
-
32
- #
33
- # Pops a command from the input stream.
34
- #
35
- def read_command(prompt)
36
- return command_queue.shift unless command_queue.empty?
37
-
38
- read_input(prompt)
39
- end
40
-
41
- #
42
- # Pushes lines in +filename+ to the command queue.
43
- #
44
- def read_file(filename)
45
- command_queue.concat(get_lines(filename))
46
- end
47
-
48
- #
49
- # Reads a new line from the interface's input stream, parses it into
50
- # commands and saves it to history.
51
- #
52
- # @return [String] Representing something to be run by the debugger.
53
- #
54
- def read_input(prompt, save_hist = true)
55
- line = prepare_input(prompt)
56
- return unless line
57
-
58
- history.push(line) if save_hist
59
-
60
- command_queue.concat(split_commands(line))
61
- command_queue.shift
62
- end
63
-
64
- #
65
- # Reads a new line from the interface's input stream.
66
- #
67
- # @return [String] New string read or the previous string if the string
68
- # read now was empty.
69
- #
70
- def prepare_input(prompt)
71
- line = readline(prompt)
72
- return unless line
73
-
74
- last_if_empty(line)
75
- end
76
-
77
- #
78
- # Prints an error message to the error stream.
79
- #
80
- def errmsg(message)
81
- error.print("*** #{message}\n")
82
- end
83
-
84
- #
85
- # Prints an output message to the output stream.
86
- #
87
- def puts(message)
88
- output.puts(message)
89
- end
90
-
91
- #
92
- # Prints an output message to the output stream without a final "\n".
93
- #
94
- def print(message)
95
- output.print(message)
96
- end
97
-
98
- #
99
- # Confirms user introduced an affirmative response to the input stream.
100
- #
101
- def confirm(prompt)
102
- readline(prompt) == "y"
103
- end
104
-
105
- def close
106
- end
107
-
108
- #
109
- # Saves or clears history according to +autosave+ setting.
110
- #
111
- def autosave
112
- Setting[:autosave] ? history.save : history.clear
113
- end
114
-
115
- #
116
- # Restores history according to +autosave+ setting.
117
- #
118
- def autorestore
119
- history.restore if Setting[:autosave]
120
- end
121
-
122
- private
123
-
124
- #
125
- # Splits a command line of the form "cmd1 ; cmd2 ; ... ; cmdN" into an
126
- # array of commands: [cmd1, cmd2, ..., cmdN]
127
- #
128
- def split_commands(cmd_line)
129
- return [""] if cmd_line.empty?
130
-
131
- cmd_line.split(/;/).each_with_object([]) do |v, m|
132
- if m.empty? || m.last[-1] != '\\'
133
- m << v.strip
134
- next
135
- end
136
-
137
- m.last[-1, 1] = ""
138
- m.last << ";" << v
139
- end
140
- end
141
- end
142
- end
143
-
144
- require "byebug/interfaces/local_interface"
145
- require "byebug/interfaces/script_interface"
146
- require "byebug/interfaces/remote_interface"
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Byebug
4
- #
5
- # Interface class for standard byebug use.
6
- #
7
- class LocalInterface < Interface
8
- EOF_ALIAS = "continue".freeze
9
-
10
- def initialize
11
- super()
12
- @input = $stdin
13
- @output = $stdout
14
- @error = $stderr
15
- end
16
-
17
- #
18
- # Reads a single line of input using Readline. If Ctrl-D is pressed, it
19
- # returns "continue", meaning that program's execution will go on.
20
- #
21
- # @param prompt Prompt to be displayed.
22
- #
23
- def readline(prompt)
24
- with_repl_like_sigint { Readline.readline(prompt) || EOF_ALIAS }
25
- end
26
-
27
- #
28
- # Yields the block handling Ctrl-C the following way: if pressed while
29
- # waiting for input, the line is reset to only the prompt and we ask for
30
- # input again.
31
- #
32
- # @note Any external 'INT' traps are overriden during this method.
33
- #
34
- def with_repl_like_sigint
35
- orig_handler = trap("INT") { raise Interrupt }
36
- yield
37
- rescue Interrupt
38
- puts("^C")
39
- retry
40
- ensure
41
- trap("INT", orig_handler)
42
- end
43
- end
44
- end
@@ -1,50 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "byebug/history"
4
-
5
- module Byebug
6
- #
7
- # Interface class for remote use of byebug.
8
- #
9
- class RemoteInterface < Interface
10
- def initialize(socket)
11
- super()
12
- @input = socket
13
- @output = socket
14
- @error = socket
15
- end
16
-
17
- def read_command(prompt)
18
- super("PROMPT #{prompt}")
19
- rescue Errno::EPIPE, Errno::ECONNABORTED
20
- "continue"
21
- end
22
-
23
- def confirm(prompt)
24
- super("CONFIRM #{prompt}")
25
- rescue Errno::EPIPE, Errno::ECONNABORTED
26
- false
27
- end
28
-
29
- def print(message)
30
- super(message)
31
- rescue Errno::EPIPE, Errno::ECONNABORTED
32
- nil
33
- end
34
-
35
- def puts(message)
36
- super(message)
37
- rescue Errno::EPIPE, Errno::ECONNABORTED
38
- nil
39
- end
40
-
41
- def close
42
- output.close
43
- end
44
-
45
- def readline(prompt)
46
- puts(prompt)
47
- (input.gets || "continue").chomp
48
- end
49
- end
50
- end
@@ -1,32 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Byebug
4
- #
5
- # Interface class for command execution from script files.
6
- #
7
- class ScriptInterface < Interface
8
- def initialize(file, verbose = false)
9
- super()
10
- @verbose = verbose
11
- @input = File.open(file)
12
- @output = verbose ? $stdout : StringIO.new
13
- @error = $stderr
14
- end
15
-
16
- def read_command(prompt)
17
- readline(prompt, false)
18
- end
19
-
20
- def close
21
- input.close
22
- end
23
-
24
- def readline(*)
25
- while (result = input.gets)
26
- output.puts "+ #{result}" if @verbose
27
- next if result =~ /^\s*#/
28
- return result.chomp
29
- end
30
- end
31
- end
32
- end