checkoff 0.222.0 → 0.225.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/checkoff.gemspec +10 -5
  3. data/lib/checkoff/attachments.rb +1 -0
  4. data/lib/checkoff/cli.rb +1 -1
  5. data/lib/checkoff/clients.rb +2 -1
  6. data/lib/checkoff/custom_fields.rb +2 -1
  7. data/lib/checkoff/events.rb +2 -1
  8. data/lib/checkoff/internal/asana_event_enrichment.rb +1 -0
  9. data/lib/checkoff/internal/asana_event_filter.rb +1 -0
  10. data/lib/checkoff/internal/config_loader.rb +2 -2
  11. data/lib/checkoff/internal/logging.rb +6 -5
  12. data/lib/checkoff/internal/project_hashes.rb +1 -0
  13. data/lib/checkoff/internal/project_selector_evaluator.rb +2 -1
  14. data/lib/checkoff/internal/project_timing.rb +1 -0
  15. data/lib/checkoff/internal/search_url/custom_field_param_converter.rb +1 -0
  16. data/lib/checkoff/internal/search_url/custom_field_variant.rb +1 -0
  17. data/lib/checkoff/internal/search_url/date_param_converter.rb +1 -0
  18. data/lib/checkoff/internal/search_url/parser.rb +1 -0
  19. data/lib/checkoff/internal/search_url/results_merger.rb +1 -0
  20. data/lib/checkoff/internal/search_url/simple_param_converter.rb +1 -0
  21. data/lib/checkoff/internal/search_url.rb +1 -0
  22. data/lib/checkoff/internal/section_selector_evaluator.rb +2 -1
  23. data/lib/checkoff/internal/selector_classes/common/function_evaluator.rb +1 -0
  24. data/lib/checkoff/internal/selector_classes/common.rb +1 -0
  25. data/lib/checkoff/internal/selector_classes/function_evaluator.rb +1 -0
  26. data/lib/checkoff/internal/selector_classes/project/function_evaluator.rb +1 -0
  27. data/lib/checkoff/internal/selector_classes/project.rb +1 -0
  28. data/lib/checkoff/internal/selector_classes/section/function_evaluator.rb +3 -1
  29. data/lib/checkoff/internal/selector_classes/section.rb +1 -0
  30. data/lib/checkoff/internal/selector_classes/task/function_evaluator.rb +1 -0
  31. data/lib/checkoff/internal/selector_classes/task.rb +1 -0
  32. data/lib/checkoff/internal/selector_evaluator.rb +5 -4
  33. data/lib/checkoff/internal/task_hashes.rb +1 -0
  34. data/lib/checkoff/internal/task_selector_evaluator.rb +2 -1
  35. data/lib/checkoff/internal/task_timing.rb +1 -0
  36. data/lib/checkoff/internal/thread_local.rb +1 -0
  37. data/lib/checkoff/monkeypatches/resource_marshalling.rb +1 -0
  38. data/lib/checkoff/my_tasks.rb +2 -1
  39. data/lib/checkoff/portfolios.rb +12 -9
  40. data/lib/checkoff/project_selectors.rb +1 -0
  41. data/lib/checkoff/projects.rb +3 -1
  42. data/lib/checkoff/resources.rb +1 -0
  43. data/lib/checkoff/section_selectors.rb +1 -0
  44. data/lib/checkoff/sections.rb +4 -4
  45. data/lib/checkoff/subtasks.rb +1 -0
  46. data/lib/checkoff/tags.rb +67 -17
  47. data/lib/checkoff/task_searches.rb +1 -0
  48. data/lib/checkoff/task_selectors.rb +1 -0
  49. data/lib/checkoff/tasks.rb +2 -2
  50. data/lib/checkoff/timelines.rb +1 -0
  51. data/lib/checkoff/timing.rb +1 -0
  52. data/lib/checkoff/version.rb +2 -1
  53. data/lib/checkoff/workspaces.rb +2 -1
  54. data/lib/checkoff.rb +1 -0
  55. data/rbi/checkoff.rbi +4529 -0
  56. data/sig/checkoff.rbs +3749 -0
  57. metadata +4 -205
  58. data/.circleci/config.yml +0 -291
  59. data/.envrc +0 -9
  60. data/.git-hooks/pre_commit/circle_ci.rb +0 -25
  61. data/.git-hooks/pre_commit/punchlist.rb +0 -51
  62. data/.git-hooks/pre_commit/solargraph_typecheck.rb +0 -76
  63. data/.gitattributes +0 -6
  64. data/.gitignore +0 -61
  65. data/.markdownlint_style.rb +0 -3
  66. data/.mdlrc +0 -1
  67. data/.overcommit.yml +0 -114
  68. data/.rubocop.yml +0 -143
  69. data/.rubocop_todo.yml +0 -90
  70. data/.solargraph.yml +0 -35
  71. data/.yamllint.yml +0 -8
  72. data/CODE_OF_CONDUCT.md +0 -133
  73. data/CONTRIBUTING.rst +0 -75
  74. data/DEVELOPMENT.md +0 -69
  75. data/GLOSSARY.md +0 -16
  76. data/Gemfile +0 -66
  77. data/Gemfile.lock +0 -336
  78. data/LICENSE +0 -21
  79. data/Makefile +0 -121
  80. data/bin/brakeman +0 -27
  81. data/bin/bump +0 -29
  82. data/bin/checkoff +0 -29
  83. data/bin/console +0 -15
  84. data/bin/overcommit +0 -29
  85. data/bin/overcommit_branch +0 -114
  86. data/bin/rake +0 -29
  87. data/bin/rubocop +0 -27
  88. data/bin/setup +0 -8
  89. data/bin/solargraph +0 -27
  90. data/bin/sord +0 -27
  91. data/bin/spoom +0 -27
  92. data/bin/srb +0 -27
  93. data/bin/srb-rbi +0 -27
  94. data/bin/tapioca +0 -27
  95. data/bin/yard +0 -27
  96. data/config/annotations_asana.rb +0 -254
  97. data/config/annotations_misc.rb +0 -68
  98. data/config/env.1p +0 -2
  99. data/docs/.gitignore +0 -3
  100. data/docs/cookiecutter_input.json +0 -17
  101. data/docs/example_project.png +0 -0
  102. data/fix.sh +0 -534
  103. data/metrics/bigfiles_high_water_mark +0 -1
  104. data/metrics/brakeman_high_water_mark +0 -1
  105. data/metrics/bundle-audit_high_water_mark +0 -1
  106. data/metrics/cane_high_water_mark +0 -1
  107. data/metrics/eslint_high_water_mark +0 -1
  108. data/metrics/flake8_high_water_mark +0 -1
  109. data/metrics/flay_high_water_mark +0 -1
  110. data/metrics/flog_high_water_mark +0 -1
  111. data/metrics/jscs_high_water_mark +0 -1
  112. data/metrics/mdl_high_water_mark +0 -1
  113. data/metrics/pep8_high_water_mark +0 -1
  114. data/metrics/punchlist_high_water_mark +0 -1
  115. data/metrics/pycodestyle_high_water_mark +0 -1
  116. data/metrics/rails_best_practices_high_water_mark +0 -1
  117. data/metrics/rubocop_high_water_mark +0 -1
  118. data/metrics/scalastyle_high_water_mark +0 -1
  119. data/metrics/shellcheck_high_water_mark +0 -1
  120. data/package.json +0 -9
  121. data/rakelib/citest.rake +0 -4
  122. data/rakelib/clear_metrics.rake +0 -9
  123. data/rakelib/console.rake +0 -15
  124. data/rakelib/default.rake +0 -4
  125. data/rakelib/doc.rake +0 -6
  126. data/rakelib/gem_tasks.rake +0 -3
  127. data/rakelib/localtest.rake +0 -4
  128. data/rakelib/overcommit.rake +0 -6
  129. data/rakelib/quality.rake +0 -4
  130. data/rakelib/repl.rake +0 -4
  131. data/rakelib/test.rake +0 -10
  132. data/rakelib/trigger_next_builds.rake +0 -7
  133. data/rakelib/undercover.rake +0 -8
  134. data/requirements_dev.txt +0 -2
  135. data/sorbet/config +0 -4
  136. data/sorbet/rbi/annotations/.gitattributes +0 -1
  137. data/sorbet/rbi/annotations/activesupport.rbi +0 -453
  138. data/sorbet/rbi/annotations/faraday.rbi +0 -17
  139. data/sorbet/rbi/annotations/minitest.rbi +0 -119
  140. data/sorbet/rbi/annotations/mocha.rbi +0 -34
  141. data/sorbet/rbi/annotations/rainbow.rbi +0 -269
  142. data/sorbet/rbi/annotations/webmock.rbi +0 -9
  143. data/sorbet/rbi/dsl/.gitattributes +0 -1
  144. data/sorbet/rbi/dsl/active_support/callbacks.rbi +0 -23
  145. data/sorbet/rbi/gems/.gitattributes +0 -1
  146. data/sorbet/rbi/gems/activesupport@7.1.5.rbi +0 -18746
  147. data/sorbet/rbi/gems/addressable@2.8.6.rbi +0 -1994
  148. data/sorbet/rbi/gems/ansi@1.5.0.rbi +0 -688
  149. data/sorbet/rbi/gems/asana@0.10.6-ab9393136d9ca59b75e42a661fdddc1c65c8f7c3.rbi +0 -6142
  150. data/sorbet/rbi/gems/ast@2.4.2.rbi +0 -585
  151. data/sorbet/rbi/gems/backport@1.2.0.rbi +0 -523
  152. data/sorbet/rbi/gems/base64@0.2.0.rbi +0 -509
  153. data/sorbet/rbi/gems/benchmark@0.4.0.rbi +0 -618
  154. data/sorbet/rbi/gems/bigdecimal@3.1.5.rbi +0 -78
  155. data/sorbet/rbi/gems/brakeman@6.2.2.rbi +0 -222
  156. data/sorbet/rbi/gems/builder@3.2.4.rbi +0 -505
  157. data/sorbet/rbi/gems/bump@0.10.0.rbi +0 -169
  158. data/sorbet/rbi/gems/cache@0.4.1.rbi +0 -211
  159. data/sorbet/rbi/gems/cache_method@0.2.7.rbi +0 -293
  160. data/sorbet/rbi/gems/chef-utils@18.3.0.rbi +0 -9
  161. data/sorbet/rbi/gems/childprocess@5.1.0.rbi +0 -383
  162. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -3427
  163. data/sorbet/rbi/gems/concurrent-ruby@1.2.3.rbi +0 -11591
  164. data/sorbet/rbi/gems/connection_pool@2.4.1.rbi +0 -9
  165. data/sorbet/rbi/gems/crack@0.4.5.rbi +0 -145
  166. data/sorbet/rbi/gems/diff-lcs@1.5.1.rbi +0 -969
  167. data/sorbet/rbi/gems/docile@1.4.0.rbi +0 -377
  168. data/sorbet/rbi/gems/drb@2.2.1.rbi +0 -1347
  169. data/sorbet/rbi/gems/e2mmap@0.1.0.rbi +0 -9
  170. data/sorbet/rbi/gems/erubi@1.13.0.rbi +0 -152
  171. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +0 -222
  172. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.0.rbi +0 -126
  173. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +0 -136
  174. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +0 -145
  175. data/sorbet/rbi/gems/faraday-multipart@1.0.4.rbi +0 -259
  176. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +0 -142
  177. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +0 -118
  178. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +0 -125
  179. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +0 -133
  180. data/sorbet/rbi/gems/faraday-retry@1.0.3.rbi +0 -198
  181. data/sorbet/rbi/gems/faraday@1.10.3.rbi +0 -2729
  182. data/sorbet/rbi/gems/faraday_middleware-multi_json@0.0.6.rbi +0 -29
  183. data/sorbet/rbi/gems/faraday_middleware@1.2.0.rbi +0 -1004
  184. data/sorbet/rbi/gems/gli@2.22.0.rbi +0 -9
  185. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +0 -351
  186. data/sorbet/rbi/gems/i18n@1.14.6.rbi +0 -2359
  187. data/sorbet/rbi/gems/imagen@0.1.8.rbi +0 -340
  188. data/sorbet/rbi/gems/iniparse@1.5.0.rbi +0 -899
  189. data/sorbet/rbi/gems/jaro_winkler@1.6.0.rbi +0 -22
  190. data/sorbet/rbi/gems/json@2.7.1.rbi +0 -1562
  191. data/sorbet/rbi/gems/jwt@2.7.1.rbi +0 -1405
  192. data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +0 -128
  193. data/sorbet/rbi/gems/kramdown@2.4.0.rbi +0 -3272
  194. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14238
  195. data/sorbet/rbi/gems/logger@1.6.2.rbi +0 -923
  196. data/sorbet/rbi/gems/mdl@0.13.0.rbi +0 -445
  197. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -273
  198. data/sorbet/rbi/gems/mime-types-data@3.2023.1205.rbi +0 -127
  199. data/sorbet/rbi/gems/mime-types@3.5.1.rbi +0 -1252
  200. data/sorbet/rbi/gems/minitest-profile@0.0.2.rbi +0 -136
  201. data/sorbet/rbi/gems/minitest-reporters@1.6.1.rbi +0 -1014
  202. data/sorbet/rbi/gems/minitest@5.21.1.rbi +0 -1539
  203. data/sorbet/rbi/gems/mixlib-cli@2.1.8.rbi +0 -314
  204. data/sorbet/rbi/gems/mixlib-config@3.0.27.rbi +0 -581
  205. data/sorbet/rbi/gems/mixlib-shellout@3.2.7.rbi +0 -629
  206. data/sorbet/rbi/gems/mocha@2.1.0.rbi +0 -12
  207. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +0 -268
  208. data/sorbet/rbi/gems/multi_xml@0.6.0.rbi +0 -102
  209. data/sorbet/rbi/gems/multipart-post@2.3.0.rbi +0 -234
  210. data/sorbet/rbi/gems/mutex_m@0.3.0.rbi +0 -97
  211. data/sorbet/rbi/gems/netrc@0.11.0.rbi +0 -159
  212. data/sorbet/rbi/gems/nokogiri@1.17.0.rbi +0 -8201
  213. data/sorbet/rbi/gems/oauth2@1.4.11.rbi +0 -833
  214. data/sorbet/rbi/gems/overcommit@0.64.1.rbi +0 -2400
  215. data/sorbet/rbi/gems/parallel@1.23.0.rbi +0 -274
  216. data/sorbet/rbi/gems/parser@3.2.2.4.rbi +0 -7253
  217. data/sorbet/rbi/gems/prism@1.2.0.rbi +0 -39085
  218. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -10070
  219. data/sorbet/rbi/gems/public_suffix@5.0.4.rbi +0 -936
  220. data/sorbet/rbi/gems/punchlist@1.3.2.rbi +0 -173
  221. data/sorbet/rbi/gems/racc@1.8.1.rbi +0 -162
  222. data/sorbet/rbi/gems/rack@3.1.8.rbi +0 -4896
  223. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +0 -403
  224. data/sorbet/rbi/gems/rake@13.1.0.rbi +0 -3022
  225. data/sorbet/rbi/gems/rbi@0.2.1.rbi +0 -4535
  226. data/sorbet/rbi/gems/rbs@2.8.4.rbi +0 -5613
  227. data/sorbet/rbi/gems/regexp_parser@2.8.3.rbi +0 -3750
  228. data/sorbet/rbi/gems/reverse_markdown@2.1.1.rbi +0 -390
  229. data/sorbet/rbi/gems/rexml@3.3.9.rbi +0 -4964
  230. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +0 -7061
  231. data/sorbet/rbi/gems/rubocop-minitest@0.34.5.rbi +0 -2577
  232. data/sorbet/rbi/gems/rubocop-performance@1.20.2.rbi +0 -3262
  233. data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +0 -329
  234. data/sorbet/rbi/gems/rubocop-rspec@3.0.0.rbi +0 -7546
  235. data/sorbet/rbi/gems/rubocop@1.59.0.rbi +0 -57238
  236. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +0 -1318
  237. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +0 -9
  238. data/sorbet/rbi/gems/rugged@1.6.3.rbi +0 -1577
  239. data/sorbet/rbi/gems/securerandom@0.4.0.rbi +0 -75
  240. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -217
  241. data/sorbet/rbi/gems/simplecov-lcov@0.8.0.rbi +0 -256
  242. data/sorbet/rbi/gems/simplecov@0.22.0.rbi +0 -2149
  243. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +0 -9
  244. data/sorbet/rbi/gems/solargraph-rails@1.1.0-9dc37915bd4f3b169046e34db6fb32193ab347d8.rbi +0 -320
  245. data/sorbet/rbi/gems/solargraph@0.50.1-904b9304770a59fac393c5cc3cad481e5bdf0fd8.rbi +0 -9396
  246. data/sorbet/rbi/gems/source_finder@3.2.1.rbi +0 -317
  247. data/sorbet/rbi/gems/spoom@1.5.0.rbi +0 -4932
  248. data/sorbet/rbi/gems/tapioca@0.16.5.rbi +0 -3617
  249. data/sorbet/rbi/gems/thor@1.3.2.rbi +0 -4378
  250. data/sorbet/rbi/gems/tilt@2.4.0.rbi +0 -933
  251. data/sorbet/rbi/gems/tomlrb@2.0.3.rbi +0 -9
  252. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +0 -5918
  253. data/sorbet/rbi/gems/undercover@0.5.0.rbi +0 -433
  254. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -66
  255. data/sorbet/rbi/gems/webmock@3.19.1.rbi +0 -1769
  256. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +0 -435
  257. data/sorbet/rbi/gems/yard@0.9.37.rbi +0 -18406
  258. data/sorbet/rbi/todo.rbi +0 -11
  259. data/sorbet/tapioca/config.yml +0 -13
  260. data/sorbet/tapioca/require.rb +0 -4
@@ -1,4378 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `thor` gem.
5
- # Please instead update this file by running `bin/tapioca gem thor`.
6
-
7
-
8
- # source://thor//lib/thor/shell/lcs_diff.rb#1
9
- module LCSDiff
10
- protected
11
-
12
- # Overwrite show_diff to show diff with colors if Diff::LCS is
13
- # available.
14
- #
15
- # source://thor//lib/thor/shell/lcs_diff.rb#6
16
- def show_diff(destination, content); end
17
-
18
- private
19
-
20
- # Check if Diff::LCS is loaded. If it is, use it to create pretty output
21
- # for diff.
22
- #
23
- # @return [Boolean]
24
- #
25
- # source://thor//lib/thor/shell/lcs_diff.rb#37
26
- def diff_lcs_loaded?; end
27
-
28
- # source://thor//lib/thor/shell/lcs_diff.rb#21
29
- def output_diff_line(diff); end
30
- end
31
-
32
- # source://thor//lib/thor/command.rb#1
33
- class Thor
34
- include ::Thor::Base
35
- include ::Thor::Invocation
36
- include ::Thor::Shell
37
- extend ::Thor::Base::ClassMethods
38
- extend ::Thor::Invocation::ClassMethods
39
-
40
- # source://thor//lib/thor.rb#663
41
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
42
-
43
- class << self
44
- # Adds and declares option group for required at least one of options in the
45
- # block of arguments. You can declare options as the outside of the block.
46
- #
47
- # If :for is given as option, it allows you to change the options from
48
- # a previous defined command.
49
- #
50
- # ==== Parameters
51
- # Array[Thor::Option.name]
52
- # options<Hash>:: :for is applied for previous defined command.
53
- #
54
- # ==== Examples
55
- #
56
- # at_least_one do
57
- # option :one
58
- # option :two
59
- # end
60
- #
61
- # Or
62
- #
63
- # option :one
64
- # option :two
65
- # at_least_one :one, :two
66
- #
67
- # If you do not give "--one" and "--two" AtLeastOneRequiredArgumentError
68
- # will be raised.
69
- #
70
- # You can use at_least_one and exclusive at the same time.
71
- #
72
- # exclusive do
73
- # at_least_one do
74
- # option :one
75
- # option :two
76
- # end
77
- # end
78
- #
79
- # Then it is required either only one of "--one" or "--two".
80
- #
81
- # source://thor//lib/thor.rb#246
82
- def at_least_one(*args, &block); end
83
-
84
- # Extend check unknown options to accept a hash of conditions.
85
- #
86
- # === Parameters
87
- # options<Hash>: A hash containing :only and/or :except keys
88
- #
89
- # source://thor//lib/thor.rb#350
90
- def check_unknown_options!(options = T.unsafe(nil)); end
91
-
92
- # Overwrite check_unknown_options? to take subcommands and options into account.
93
- #
94
- # @return [Boolean]
95
- #
96
- # source://thor//lib/thor.rb#363
97
- def check_unknown_options?(config); end
98
-
99
- # Checks if a specified command exists.
100
- #
101
- # ==== Parameters
102
- # command_name<String>:: The name of the command to check for existence.
103
- #
104
- # ==== Returns
105
- # Boolean:: +true+ if the command exists, +false+ otherwise.
106
- #
107
- # @return [Boolean]
108
- #
109
- # source://thor//lib/thor.rb#449
110
- def command_exists?(command_name); end
111
-
112
- # Prints help information for the given command.
113
- #
114
- # ==== Parameters
115
- # shell<Thor::Shell>
116
- # command_name<String>
117
- #
118
- # source://thor//lib/thor.rb#258
119
- def command_help(shell, command_name); end
120
-
121
- # Sets the default command when thor is executed without an explicit command to be called.
122
- #
123
- # ==== Parameters
124
- # meth<Symbol>:: name of the default command
125
- #
126
- # source://thor//lib/thor.rb#21
127
- def default_command(meth = T.unsafe(nil)); end
128
-
129
- # Sets the default command when thor is executed without an explicit command to be called.
130
- #
131
- # ==== Parameters
132
- # meth<Symbol>:: name of the default command
133
- #
134
- # source://thor//lib/thor.rb#21
135
- def default_task(meth = T.unsafe(nil)); end
136
-
137
- # source://thor//lib/thor/base.rb#26
138
- def deprecation_warning(message); end
139
-
140
- # Defines the usage and the description of the next command.
141
- #
142
- # ==== Parameters
143
- # usage<String>
144
- # description<String>
145
- # options<String>
146
- #
147
- # source://thor//lib/thor.rb#54
148
- def desc(usage, description, options = T.unsafe(nil)); end
149
-
150
- # Disable the check for required options for the given commands.
151
- # This is useful if you have a command that does not need the required options
152
- # to work, like help.
153
- #
154
- # ==== Parameters
155
- # Symbol ...:: A list of commands that should be affected.
156
- #
157
- # source://thor//lib/thor.rb#434
158
- def disable_required_check!(*command_names); end
159
-
160
- # @return [Boolean]
161
- #
162
- # source://thor//lib/thor.rb#438
163
- def disable_required_check?(command); end
164
-
165
- # Adds and declares option group for exclusive options in the
166
- # block and arguments. You can declare options as the outside of the block.
167
- #
168
- # If :for is given as option, it allows you to change the options from
169
- # a previous defined command.
170
- #
171
- # ==== Parameters
172
- # Array[Thor::Option.name]
173
- # options<Hash>:: :for is applied for previous defined command.
174
- #
175
- # ==== Examples
176
- #
177
- # exclusive do
178
- # option :one
179
- # option :two
180
- # end
181
- #
182
- # Or
183
- #
184
- # option :one
185
- # option :two
186
- # exclusive :one, :two
187
- #
188
- # If you give "--one" and "--two" at the same time ExclusiveArgumentsError
189
- # will be raised.
190
- #
191
- # source://thor//lib/thor.rb#203
192
- def exclusive(*args, &block); end
193
-
194
- # Prints help information for this class.
195
- #
196
- # ==== Parameters
197
- # shell<Thor::Shell>
198
- #
199
- # source://thor//lib/thor.rb#288
200
- def help(shell, subcommand = T.unsafe(nil)); end
201
-
202
- # Defines the long description of the next command.
203
- #
204
- # Long description is by default indented, line-wrapped and repeated whitespace merged.
205
- # In order to print long description verbatim, with indentation and spacing exactly
206
- # as found in the code, use the +wrap+ option
207
- #
208
- # long_desc 'your very long description', wrap: false
209
- #
210
- # ==== Parameters
211
- # long description<String>
212
- # options<Hash>
213
- #
214
- # source://thor//lib/thor.rb#78
215
- def long_desc(long_description, options = T.unsafe(nil)); end
216
-
217
- # Maps an input to a command. If you define:
218
- #
219
- # map "-T" => "list"
220
- #
221
- # Running:
222
- #
223
- # thor -T
224
- #
225
- # Will invoke the list command.
226
- #
227
- # ==== Parameters
228
- # Hash[String|Array => Symbol]:: Maps the string or the strings in the array to the given command.
229
- #
230
- # source://thor//lib/thor.rb#101
231
- def map(mappings = T.unsafe(nil), **kw); end
232
-
233
- # Adds and declares option group for required at least one of options in the
234
- # block of arguments. You can declare options as the outside of the block.
235
- #
236
- # If :for is given as option, it allows you to change the options from
237
- # a previous defined command.
238
- #
239
- # ==== Parameters
240
- # Array[Thor::Option.name]
241
- # options<Hash>:: :for is applied for previous defined command.
242
- #
243
- # ==== Examples
244
- #
245
- # at_least_one do
246
- # option :one
247
- # option :two
248
- # end
249
- #
250
- # Or
251
- #
252
- # option :one
253
- # option :two
254
- # at_least_one :one, :two
255
- #
256
- # If you do not give "--one" and "--two" AtLeastOneRequiredArgumentError
257
- # will be raised.
258
- #
259
- # You can use at_least_one and exclusive at the same time.
260
- #
261
- # exclusive do
262
- # at_least_one do
263
- # option :one
264
- # option :two
265
- # end
266
- # end
267
- #
268
- # Then it is required either only one of "--one" or "--two".
269
- #
270
- # source://thor//lib/thor.rb#246
271
- def method_at_least_one(*args, &block); end
272
-
273
- # Adds and declares option group for exclusive options in the
274
- # block and arguments. You can declare options as the outside of the block.
275
- #
276
- # If :for is given as option, it allows you to change the options from
277
- # a previous defined command.
278
- #
279
- # ==== Parameters
280
- # Array[Thor::Option.name]
281
- # options<Hash>:: :for is applied for previous defined command.
282
- #
283
- # ==== Examples
284
- #
285
- # exclusive do
286
- # option :one
287
- # option :two
288
- # end
289
- #
290
- # Or
291
- #
292
- # option :one
293
- # option :two
294
- # exclusive :one, :two
295
- #
296
- # If you give "--one" and "--two" at the same time ExclusiveArgumentsError
297
- # will be raised.
298
- #
299
- # source://thor//lib/thor.rb#203
300
- def method_exclusive(*args, &block); end
301
-
302
- # Adds an option to the set of method options. If :for is given as option,
303
- # it allows you to change the options from a previous defined command.
304
- #
305
- # def previous_command
306
- # # magic
307
- # end
308
- #
309
- # method_option :foo, :for => :previous_command
310
- #
311
- # def next_command
312
- # # magic
313
- # end
314
- #
315
- # ==== Parameters
316
- # name<Symbol>:: The name of the argument.
317
- # options<Hash>:: Described below.
318
- #
319
- # ==== Options
320
- # :desc - Description for the argument.
321
- # :required - If the argument is required or not.
322
- # :default - Default value for this argument. It cannot be required and have default values.
323
- # :aliases - Aliases for this option.
324
- # :type - The type of the argument, can be :string, :hash, :array, :numeric or :boolean.
325
- # :banner - String to show on usage notes.
326
- # :hide - If you want to hide this option from the help.
327
- #
328
- # source://thor//lib/thor.rb#163
329
- def method_option(name, options = T.unsafe(nil)); end
330
-
331
- # Declares the options for the next command to be declared.
332
- #
333
- # ==== Parameters
334
- # Hash[Symbol => Object]:: The hash key is the name of the option and the value
335
- # is the type of the option. Can be :string, :array, :hash, :boolean, :numeric
336
- # or :required (string). If you give a value, the type of the value is used.
337
- #
338
- # source://thor//lib/thor.rb#129
339
- def method_options(options = T.unsafe(nil)); end
340
-
341
- # Adds an option to the set of method options. If :for is given as option,
342
- # it allows you to change the options from a previous defined command.
343
- #
344
- # def previous_command
345
- # # magic
346
- # end
347
- #
348
- # method_option :foo, :for => :previous_command
349
- #
350
- # def next_command
351
- # # magic
352
- # end
353
- #
354
- # ==== Parameters
355
- # name<Symbol>:: The name of the argument.
356
- # options<Hash>:: Described below.
357
- #
358
- # ==== Options
359
- # :desc - Description for the argument.
360
- # :required - If the argument is required or not.
361
- # :default - Default value for this argument. It cannot be required and have default values.
362
- # :aliases - Aliases for this option.
363
- # :type - The type of the argument, can be :string, :hash, :array, :numeric or :boolean.
364
- # :banner - String to show on usage notes.
365
- # :hide - If you want to hide this option from the help.
366
- #
367
- # source://thor//lib/thor.rb#163
368
- def option(name, options = T.unsafe(nil)); end
369
-
370
- # Declares the options for the next command to be declared.
371
- #
372
- # ==== Parameters
373
- # Hash[Symbol => Object]:: The hash key is the name of the option and the value
374
- # is the type of the option. Can be :string, :array, :hash, :boolean, :numeric
375
- # or :required (string). If you give a value, the type of the value is used.
376
- #
377
- # source://thor//lib/thor.rb#129
378
- def options(options = T.unsafe(nil)); end
379
-
380
- # Allows for custom "Command" package naming.
381
- #
382
- # === Parameters
383
- # name<String>
384
- # options<Hash>
385
- #
386
- # source://thor//lib/thor.rb#12
387
- def package_name(name, _ = T.unsafe(nil)); end
388
-
389
- # Returns commands ready to be printed.
390
- #
391
- # source://thor//lib/thor.rb#309
392
- def printable_commands(all = T.unsafe(nil), subcommand = T.unsafe(nil)); end
393
-
394
- # Returns commands ready to be printed.
395
- #
396
- # source://thor//lib/thor.rb#309
397
- def printable_tasks(all = T.unsafe(nil), subcommand = T.unsafe(nil)); end
398
-
399
- # Registers another Thor subclass as a command.
400
- #
401
- # ==== Parameters
402
- # klass<Class>:: Thor subclass to register
403
- # command<String>:: Subcommand name to use
404
- # usage<String>:: Short usage for the subcommand
405
- # description<String>:: Description for the subcommand
406
- #
407
- # source://thor//lib/thor.rb#37
408
- def register(klass, subcommand_name, usage, description, options = T.unsafe(nil)); end
409
-
410
- # Stop parsing of options as soon as an unknown option or a regular
411
- # argument is encountered. All remaining arguments are passed to the command.
412
- # This is useful if you have a command that can receive arbitrary additional
413
- # options, and where those additional options should not be handled by
414
- # Thor.
415
- #
416
- # ==== Example
417
- #
418
- # To better understand how this is useful, let's consider a command that calls
419
- # an external command. A user may want to pass arbitrary options and
420
- # arguments to that command. The command itself also accepts some options,
421
- # which should be handled by Thor.
422
- #
423
- # class_option "verbose", :type => :boolean
424
- # stop_on_unknown_option! :exec
425
- # check_unknown_options! :except => :exec
426
- #
427
- # desc "exec", "Run a shell command"
428
- # def exec(*args)
429
- # puts "diagnostic output" if options[:verbose]
430
- # Kernel.exec(*args)
431
- # end
432
- #
433
- # Here +exec+ can be called with +--verbose+ to get diagnostic output,
434
- # e.g.:
435
- #
436
- # $ thor exec --verbose echo foo
437
- # diagnostic output
438
- # foo
439
- #
440
- # But if +--verbose+ is given after +echo+, it is passed to +echo+ instead:
441
- #
442
- # $ thor exec echo --verbose foo
443
- # --verbose foo
444
- #
445
- # ==== Parameters
446
- # Symbol ...:: A list of commands that should be affected.
447
- #
448
- # source://thor//lib/thor.rb#420
449
- def stop_on_unknown_option!(*command_names); end
450
-
451
- # @return [Boolean]
452
- #
453
- # source://thor//lib/thor.rb#424
454
- def stop_on_unknown_option?(command); end
455
-
456
- # source://thor//lib/thor.rb#329
457
- def subcommand(subcommand, subcommand_class); end
458
-
459
- # source://thor//lib/thor.rb#325
460
- def subcommand_classes; end
461
-
462
- # source://thor//lib/thor.rb#320
463
- def subcommands; end
464
-
465
- # source://thor//lib/thor.rb#329
466
- def subtask(subcommand, subcommand_class); end
467
-
468
- # source://thor//lib/thor.rb#320
469
- def subtasks; end
470
-
471
- # Prints help information for the given command.
472
- #
473
- # ==== Parameters
474
- # shell<Thor::Shell>
475
- # command_name<String>
476
- #
477
- # source://thor//lib/thor.rb#258
478
- def task_help(shell, command_name); end
479
-
480
- protected
481
-
482
- # The banner for this class. You can customize it if you are invoking the
483
- # thor class by another ways which is not the Thor::Runner. It receives
484
- # the command that is going to be invoked and a boolean which indicates if
485
- # the namespace should be displayed as arguments.
486
- #
487
- # source://thor//lib/thor.rb#546
488
- def banner(command, namespace = T.unsafe(nil), subcommand = T.unsafe(nil)); end
489
-
490
- # source://thor//lib/thor.rb#552
491
- def baseclass; end
492
-
493
- # source://thor//lib/thor.rb#560
494
- def create_command(meth); end
495
-
496
- # source://thor//lib/thor.rb#560
497
- def create_task(meth); end
498
-
499
- # help command has the required check disabled by default.
500
- #
501
- # source://thor//lib/thor.rb#478
502
- def disable_required_check; end
503
-
504
- # The method responsible for dispatching given the args.
505
- #
506
- # @yield [instance]
507
- #
508
- # source://thor//lib/thor.rb#505
509
- def dispatch(meth, given_args, given_opts, config); end
510
-
511
- # source://thor//lib/thor.rb#556
512
- def dynamic_command_class; end
513
-
514
- # this is the logic that takes the command name passed in by the user
515
- # and determines whether it is an unambiguous substrings of a command or
516
- # alias name.
517
- #
518
- # source://thor//lib/thor.rb#626
519
- def find_command_possibilities(meth); end
520
-
521
- # this is the logic that takes the command name passed in by the user
522
- # and determines whether it is an unambiguous substrings of a command or
523
- # alias name.
524
- #
525
- # source://thor//lib/thor.rb#626
526
- def find_task_possibilities(meth); end
527
-
528
- # source://thor//lib/thor.rb#586
529
- def initialize_added; end
530
-
531
- # Returns this class at least one of required options array set.
532
- #
533
- # ==== Returns
534
- # Array[Array[Thor::Option.name]]
535
- #
536
- # source://thor//lib/thor.rb#469
537
- def method_at_least_one_option_names; end
538
-
539
- # Returns this class exclusive options array set.
540
- #
541
- # ==== Returns
542
- # Array[Array[Thor::Option.name]]
543
- #
544
- # source://thor//lib/thor.rb#460
545
- def method_exclusive_option_names; end
546
-
547
- # receives a (possibly nil) command name and returns a name that is in
548
- # the commands hash. In addition to normalizing aliases, this logic
549
- # will determine if a shortened command is an unambiguous substring of
550
- # a command or alias.
551
- #
552
- # +normalize_command_name+ also converts names like +animal-prison+
553
- # into +animal_prison+.
554
- #
555
- # @raise [AmbiguousTaskError]
556
- #
557
- # source://thor//lib/thor.rb#605
558
- def normalize_command_name(meth); end
559
-
560
- # receives a (possibly nil) command name and returns a name that is in
561
- # the commands hash. In addition to normalizing aliases, this logic
562
- # will determine if a shortened command is an unambiguous substring of
563
- # a command or alias.
564
- #
565
- # +normalize_command_name+ also converts names like +animal-prison+
566
- # into +animal_prison+.
567
- #
568
- # @raise [AmbiguousTaskError]
569
- #
570
- # source://thor//lib/thor.rb#605
571
- def normalize_task_name(meth); end
572
-
573
- # source://thor//lib/thor.rb#493
574
- def print_at_least_one_required_options(shell, command = T.unsafe(nil)); end
575
-
576
- # source://thor//lib/thor.rb#482
577
- def print_exclusive_options(shell, command = T.unsafe(nil)); end
578
-
579
- # Retrieve the command name from given args.
580
- #
581
- # source://thor//lib/thor.rb#592
582
- def retrieve_command_name(args); end
583
-
584
- # Retrieve the command name from given args.
585
- #
586
- # source://thor//lib/thor.rb#592
587
- def retrieve_task_name(args); end
588
-
589
- # Sort the commands, lexicographically by default.
590
- #
591
- # Can be overridden in the subclass to change the display order of the
592
- # commands.
593
- #
594
- # source://thor//lib/thor.rb#653
595
- def sort_commands!(list); end
596
-
597
- # source://thor//lib/thor.rb#473
598
- def stop_on_unknown_option; end
599
-
600
- # source://thor//lib/thor.rb#641
601
- def subcommand_help(cmd); end
602
-
603
- # source://thor//lib/thor.rb#641
604
- def subtask_help(cmd); end
605
- end
606
- end
607
-
608
- # source://thor//lib/thor/actions/empty_directory.rb#2
609
- module Thor::Actions
610
- mixes_in_class_methods ::Thor::Actions::ClassMethods
611
-
612
- # Extends initializer to add more configuration options.
613
- #
614
- # ==== Configuration
615
- # behavior<Symbol>:: The actions default behavior. Can be :invoke or :revoke.
616
- # It also accepts :force, :skip and :pretend to set the behavior
617
- # and the respective option.
618
- #
619
- # destination_root<String>:: The root directory needed for some actions.
620
- #
621
- # source://thor//lib/thor/actions.rb#72
622
- def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil)); end
623
-
624
- # Wraps an action object and call it accordingly to the thor class behavior.
625
- #
626
- # source://thor//lib/thor/actions.rb#89
627
- def action(instance); end
628
-
629
- # Create a new file relative to the destination root with the given data,
630
- # which is the return value of a block or a data string.
631
- #
632
- # ==== Parameters
633
- # destination<String>:: the relative path to the destination root.
634
- # data<String|NilClass>:: the data to append to the file.
635
- # config<Hash>:: give :verbose => false to not log the status.
636
- #
637
- # ==== Examples
638
- #
639
- # create_file "lib/fun_party.rb" do
640
- # hostname = ask("What is the virtual hostname I should use?")
641
- # "vhost.name = #{hostname}"
642
- # end
643
- #
644
- # create_file "config/apache.conf", "your apache config"
645
- #
646
- # source://thor//lib/thor/actions/create_file.rb#22
647
- def add_file(destination, *args, &block); end
648
-
649
- # Create a new file relative to the destination root from the given source.
650
- #
651
- # ==== Parameters
652
- # destination<String>:: the relative path to the destination root.
653
- # source<String|NilClass>:: the relative path to the source root.
654
- # config<Hash>:: give :verbose => false to not log the status.
655
- # :: give :symbolic => false for hard link.
656
- #
657
- # ==== Examples
658
- #
659
- # create_link "config/apache.conf", "/etc/apache.conf"
660
- #
661
- # source://thor//lib/thor/actions/create_link.rb#17
662
- def add_link(destination, *args); end
663
-
664
- # Append text to a file. Since it depends on insert_into_file, it's reversible.
665
- #
666
- # ==== Parameters
667
- # path<String>:: path of the file to be changed
668
- # data<String>:: the data to append to the file, can be also given as a block.
669
- # config<Hash>:: give :verbose => false to not log the status.
670
- #
671
- # ==== Example
672
- #
673
- # append_to_file 'config/environments/test.rb', 'config.gem "rspec"'
674
- #
675
- # append_to_file 'config/environments/test.rb' do
676
- # 'config.gem "rspec"'
677
- # end
678
- #
679
- # source://thor//lib/thor/actions/file_manipulation.rb#192
680
- def append_file(path, *args, &block); end
681
-
682
- # Append text to a file. Since it depends on insert_into_file, it's reversible.
683
- #
684
- # ==== Parameters
685
- # path<String>:: path of the file to be changed
686
- # data<String>:: the data to append to the file, can be also given as a block.
687
- # config<Hash>:: give :verbose => false to not log the status.
688
- #
689
- # ==== Example
690
- #
691
- # append_to_file 'config/environments/test.rb', 'config.gem "rspec"'
692
- #
693
- # append_to_file 'config/environments/test.rb' do
694
- # 'config.gem "rspec"'
695
- # end
696
- #
697
- # source://thor//lib/thor/actions/file_manipulation.rb#192
698
- def append_to_file(path, *args, &block); end
699
-
700
- # Loads an external file and execute it in the instance binding.
701
- #
702
- # ==== Parameters
703
- # path<String>:: The path to the file to execute. Can be a web address or
704
- # a relative path from the source root.
705
- #
706
- # ==== Examples
707
- #
708
- # apply "http://gist.github.com/103208"
709
- #
710
- # apply "recipes/jquery.rb"
711
- #
712
- # source://thor//lib/thor/actions.rb#216
713
- def apply(path, config = T.unsafe(nil)); end
714
-
715
- # Returns the value of attribute behavior.
716
- #
717
- # source://thor//lib/thor/actions.rb#10
718
- def behavior; end
719
-
720
- # Sets the attribute behavior
721
- #
722
- # @param value the value to set the attribute behavior to.
723
- #
724
- # source://thor//lib/thor/actions.rb#10
725
- def behavior=(_arg0); end
726
-
727
- # Changes the mode of the given file or directory.
728
- #
729
- # ==== Parameters
730
- # mode<Integer>:: the file mode
731
- # path<String>:: the name of the file to change mode
732
- # config<Hash>:: give :verbose => false to not log the status.
733
- #
734
- # ==== Example
735
- #
736
- # chmod "script/server", 0755
737
- #
738
- # source://thor//lib/thor/actions/file_manipulation.rb#145
739
- def chmod(path, mode, config = T.unsafe(nil)); end
740
-
741
- # Comment all lines matching a given regex. It will leave the space
742
- # which existed before the beginning of the line in tact and will insert
743
- # a single space after the comment hash.
744
- #
745
- # ==== Parameters
746
- # path<String>:: path of the file to be changed
747
- # flag<Regexp|String>:: the regexp or string used to decide which lines to comment
748
- # config<Hash>:: give :verbose => false to not log the status.
749
- #
750
- # ==== Example
751
- #
752
- # comment_lines 'config/initializers/session_store.rb', /cookie_store/
753
- #
754
- # source://thor//lib/thor/actions/file_manipulation.rb#308
755
- def comment_lines(path, flag, *args); end
756
-
757
- # Copies the file from the relative source to the relative destination. If
758
- # the destination is not given it's assumed to be equal to the source.
759
- #
760
- # ==== Parameters
761
- # source<String>:: the relative path to the source root.
762
- # destination<String>:: the relative path to the destination root.
763
- # config<Hash>:: give :verbose => false to not log the status, and
764
- # :mode => :preserve, to preserve the file mode from the source.
765
- #
766
- # ==== Examples
767
- #
768
- # copy_file "README", "doc/README"
769
- #
770
- # copy_file "doc/README"
771
- #
772
- # source://thor//lib/thor/actions/file_manipulation.rb#20
773
- def copy_file(source, *args, &block); end
774
-
775
- # Create a new file relative to the destination root with the given data,
776
- # which is the return value of a block or a data string.
777
- #
778
- # ==== Parameters
779
- # destination<String>:: the relative path to the destination root.
780
- # data<String|NilClass>:: the data to append to the file.
781
- # config<Hash>:: give :verbose => false to not log the status.
782
- #
783
- # ==== Examples
784
- #
785
- # create_file "lib/fun_party.rb" do
786
- # hostname = ask("What is the virtual hostname I should use?")
787
- # "vhost.name = #{hostname}"
788
- # end
789
- #
790
- # create_file "config/apache.conf", "your apache config"
791
- #
792
- # source://thor//lib/thor/actions/create_file.rb#22
793
- def create_file(destination, *args, &block); end
794
-
795
- # Create a new file relative to the destination root from the given source.
796
- #
797
- # ==== Parameters
798
- # destination<String>:: the relative path to the destination root.
799
- # source<String|NilClass>:: the relative path to the source root.
800
- # config<Hash>:: give :verbose => false to not log the status.
801
- # :: give :symbolic => false for hard link.
802
- #
803
- # ==== Examples
804
- #
805
- # create_link "config/apache.conf", "/etc/apache.conf"
806
- #
807
- # source://thor//lib/thor/actions/create_link.rb#17
808
- def create_link(destination, *args); end
809
-
810
- # Returns the root for this thor class (also aliased as destination root).
811
- #
812
- # source://thor//lib/thor/actions.rb#99
813
- def destination_root; end
814
-
815
- # Sets the root for this thor class. Relatives path are added to the
816
- # directory where the script was invoked and expanded.
817
- #
818
- # source://thor//lib/thor/actions.rb#106
819
- def destination_root=(root); end
820
-
821
- # Copies recursively the files from source directory to root directory.
822
- # If any of the files finishes with .tt, it's considered to be a template
823
- # and is placed in the destination without the extension .tt. If any
824
- # empty directory is found, it's copied and all .empty_directory files are
825
- # ignored. If any file name is wrapped within % signs, the text within
826
- # the % signs will be executed as a method and replaced with the returned
827
- # value. Let's suppose a doc directory with the following files:
828
- #
829
- # doc/
830
- # components/.empty_directory
831
- # README
832
- # rdoc.rb.tt
833
- # %app_name%.rb
834
- #
835
- # When invoked as:
836
- #
837
- # directory "doc"
838
- #
839
- # It will create a doc directory in the destination with the following
840
- # files (assuming that the `app_name` method returns the value "blog"):
841
- #
842
- # doc/
843
- # components/
844
- # README
845
- # rdoc.rb
846
- # blog.rb
847
- #
848
- # <b>Encoded path note:</b> Since Thor internals use Object#respond_to? to check if it can
849
- # expand %something%, this `something` should be a public method in the class calling
850
- # #directory. If a method is private, Thor stack raises PrivateMethodEncodedError.
851
- #
852
- # ==== Parameters
853
- # source<String>:: the relative path to the source root.
854
- # destination<String>:: the relative path to the destination root.
855
- # config<Hash>:: give :verbose => false to not log the status.
856
- # If :recursive => false, does not look for paths recursively.
857
- # If :mode => :preserve, preserve the file mode from the source.
858
- # If :exclude_pattern => /regexp/, prevents copying files that match that regexp.
859
- #
860
- # ==== Examples
861
- #
862
- # directory "doc"
863
- # directory "doc", "docs", :recursive => false
864
- #
865
- # source://thor//lib/thor/actions/directory.rb#49
866
- def directory(source, *args, &block); end
867
-
868
- # Creates an empty directory.
869
- #
870
- # ==== Parameters
871
- # destination<String>:: the relative path to the destination root.
872
- # config<Hash>:: give :verbose => false to not log the status.
873
- #
874
- # ==== Examples
875
- #
876
- # empty_directory "doc"
877
- #
878
- # source://thor//lib/thor/actions/empty_directory.rb#13
879
- def empty_directory(destination, config = T.unsafe(nil)); end
880
-
881
- # Receives a file or directory and search for it in the source paths.
882
- #
883
- # @raise [Error]
884
- #
885
- # source://thor//lib/thor/actions.rb#133
886
- def find_in_source_paths(file); end
887
-
888
- # Gets the content at the given address and places it at the given relative
889
- # destination. If a block is given instead of destination, the content of
890
- # the url is yielded and used as location.
891
- #
892
- # +get+ relies on open-uri, so passing application user input would provide
893
- # a command injection attack vector.
894
- #
895
- # ==== Parameters
896
- # source<String>:: the address of the given content.
897
- # destination<String>:: the relative path to the destination root.
898
- # config<Hash>:: give :verbose => false to not log the status, and
899
- # :http_headers => <Hash> to add headers to an http request.
900
- #
901
- # ==== Examples
902
- #
903
- # get "http://gist.github.com/103208", "doc/README"
904
- #
905
- # get "http://gist.github.com/103208", "doc/README", :http_headers => {"Content-Type" => "application/json"}
906
- #
907
- # get "http://gist.github.com/103208" do |content|
908
- # content.split("\n").first
909
- # end
910
- #
911
- # source://thor//lib/thor/actions/file_manipulation.rb#81
912
- def get(source, *args, &block); end
913
-
914
- # Run a regular expression replacement on a file.
915
- #
916
- # ==== Parameters
917
- # path<String>:: path of the file to be changed
918
- # flag<Regexp|String>:: the regexp or string to be replaced
919
- # replacement<String>:: the replacement, can be also given as a block
920
- # config<Hash>:: give :verbose => false to not log the status, and
921
- # :force => true, to force the replacement regardless of runner behavior.
922
- #
923
- # ==== Example
924
- #
925
- # gsub_file 'app/controllers/application_controller.rb', /#\s*(filter_parameter_logging :password)/, '\1'
926
- #
927
- # gsub_file 'README', /rake/, :green do |match|
928
- # match << " no more. Use thor!"
929
- # end
930
- #
931
- # source://thor//lib/thor/actions/file_manipulation.rb#262
932
- def gsub_file(path, flag, *args, &block); end
933
-
934
- # Goes to the root and execute the given block.
935
- #
936
- # source://thor//lib/thor/actions.rb#200
937
- def in_root; end
938
-
939
- # Injects text right after the class definition. Since it depends on
940
- # insert_into_file, it's reversible.
941
- #
942
- # ==== Parameters
943
- # path<String>:: path of the file to be changed
944
- # klass<String|Class>:: the class to be manipulated
945
- # data<String>:: the data to append to the class, can be also given as a block.
946
- # config<Hash>:: give :verbose => false to not log the status.
947
- #
948
- # ==== Examples
949
- #
950
- # inject_into_class "app/controllers/application_controller.rb", "ApplicationController", " filter_parameter :password\n"
951
- #
952
- # inject_into_class "app/controllers/application_controller.rb", "ApplicationController" do
953
- # " filter_parameter :password\n"
954
- # end
955
- #
956
- # source://thor//lib/thor/actions/file_manipulation.rb#216
957
- def inject_into_class(path, klass, *args, &block); end
958
-
959
- # source://thor//lib/thor/actions/inject_into_file.rb#26
960
- def inject_into_file(destination, *args, &block); end
961
-
962
- # Injects text right after the module definition. Since it depends on
963
- # insert_into_file, it's reversible.
964
- #
965
- # ==== Parameters
966
- # path<String>:: path of the file to be changed
967
- # module_name<String|Class>:: the module to be manipulated
968
- # data<String>:: the data to append to the class, can be also given as a block.
969
- # config<Hash>:: give :verbose => false to not log the status.
970
- #
971
- # ==== Examples
972
- #
973
- # inject_into_module "app/helpers/application_helper.rb", "ApplicationHelper", " def help; 'help'; end\n"
974
- #
975
- # inject_into_module "app/helpers/application_helper.rb", "ApplicationHelper" do
976
- # " def help; 'help'; end\n"
977
- # end
978
- #
979
- # source://thor//lib/thor/actions/file_manipulation.rb#239
980
- def inject_into_module(path, module_name, *args, &block); end
981
-
982
- # source://thor//lib/thor/actions/inject_into_file.rb#26
983
- def insert_into_file(destination, *args, &block); end
984
-
985
- # Do something in the root or on a provided subfolder. If a relative path
986
- # is given it's referenced from the current root. The full path is yielded
987
- # to the block you provide. The path is set back to the previous path when
988
- # the method exits.
989
- #
990
- # Returns the value yielded by the block.
991
- #
992
- # ==== Parameters
993
- # dir<String>:: the directory to move to.
994
- # config<Hash>:: give :verbose => true to log and use padding.
995
- #
996
- # source://thor//lib/thor/actions.rb#170
997
- def inside(dir = T.unsafe(nil), config = T.unsafe(nil), &block); end
998
-
999
- # Links the file from the relative source to the relative destination. If
1000
- # the destination is not given it's assumed to be equal to the source.
1001
- #
1002
- # ==== Parameters
1003
- # source<String>:: the relative path to the source root.
1004
- # destination<String>:: the relative path to the destination root.
1005
- # config<Hash>:: give :verbose => false to not log the status.
1006
- #
1007
- # ==== Examples
1008
- #
1009
- # link_file "README", "doc/README"
1010
- #
1011
- # link_file "doc/README"
1012
- #
1013
- # source://thor//lib/thor/actions/file_manipulation.rb#50
1014
- def link_file(source, *args); end
1015
-
1016
- # Prepend text to a file. Since it depends on insert_into_file, it's reversible.
1017
- #
1018
- # ==== Parameters
1019
- # path<String>:: path of the file to be changed
1020
- # data<String>:: the data to prepend to the file, can be also given as a block.
1021
- # config<Hash>:: give :verbose => false to not log the status.
1022
- #
1023
- # ==== Example
1024
- #
1025
- # prepend_to_file 'config/environments/test.rb', 'config.gem "rspec"'
1026
- #
1027
- # prepend_to_file 'config/environments/test.rb' do
1028
- # 'config.gem "rspec"'
1029
- # end
1030
- #
1031
- # source://thor//lib/thor/actions/file_manipulation.rb#170
1032
- def prepend_file(path, *args, &block); end
1033
-
1034
- # Prepend text to a file. Since it depends on insert_into_file, it's reversible.
1035
- #
1036
- # ==== Parameters
1037
- # path<String>:: path of the file to be changed
1038
- # data<String>:: the data to prepend to the file, can be also given as a block.
1039
- # config<Hash>:: give :verbose => false to not log the status.
1040
- #
1041
- # ==== Example
1042
- #
1043
- # prepend_to_file 'config/environments/test.rb', 'config.gem "rspec"'
1044
- #
1045
- # prepend_to_file 'config/environments/test.rb' do
1046
- # 'config.gem "rspec"'
1047
- # end
1048
- #
1049
- # source://thor//lib/thor/actions/file_manipulation.rb#170
1050
- def prepend_to_file(path, *args, &block); end
1051
-
1052
- # Returns the given path relative to the absolute root (ie, root where
1053
- # the script started).
1054
- #
1055
- # source://thor//lib/thor/actions.rb#114
1056
- def relative_to_original_destination_root(path, remove_dot = T.unsafe(nil)); end
1057
-
1058
- # Removes a file at the given location.
1059
- #
1060
- # ==== Parameters
1061
- # path<String>:: path of the file to be changed
1062
- # config<Hash>:: give :verbose => false to not log the status.
1063
- #
1064
- # ==== Example
1065
- #
1066
- # remove_file 'README'
1067
- # remove_file 'app/controllers/application_controller.rb'
1068
- #
1069
- # source://thor//lib/thor/actions/file_manipulation.rb#325
1070
- def remove_dir(path, config = T.unsafe(nil)); end
1071
-
1072
- # Removes a file at the given location.
1073
- #
1074
- # ==== Parameters
1075
- # path<String>:: path of the file to be changed
1076
- # config<Hash>:: give :verbose => false to not log the status.
1077
- #
1078
- # ==== Example
1079
- #
1080
- # remove_file 'README'
1081
- # remove_file 'app/controllers/application_controller.rb'
1082
- #
1083
- # source://thor//lib/thor/actions/file_manipulation.rb#325
1084
- def remove_file(path, config = T.unsafe(nil)); end
1085
-
1086
- # Executes a command returning the contents of the command.
1087
- #
1088
- # ==== Parameters
1089
- # command<String>:: the command to be executed.
1090
- # config<Hash>:: give :verbose => false to not log the status, :capture => true to hide to output. Specify :with
1091
- # to append an executable to command execution.
1092
- #
1093
- # ==== Example
1094
- #
1095
- # inside('vendor') do
1096
- # run('ln -s ~/edge rails')
1097
- # end
1098
- #
1099
- # source://thor//lib/thor/actions.rb#248
1100
- def run(command, config = T.unsafe(nil)); end
1101
-
1102
- # Executes a ruby script (taking into account WIN32 platform quirks).
1103
- #
1104
- # ==== Parameters
1105
- # command<String>:: the command to be executed.
1106
- # config<Hash>:: give :verbose => false to not log the status.
1107
- #
1108
- # source://thor//lib/thor/actions.rb#285
1109
- def run_ruby_script(command, config = T.unsafe(nil)); end
1110
-
1111
- # Holds source paths in instance so they can be manipulated.
1112
- #
1113
- # source://thor//lib/thor/actions.rb#127
1114
- def source_paths; end
1115
-
1116
- # Gets an ERB template at the relative source, executes it and makes a copy
1117
- # at the relative destination. If the destination is not given it's assumed
1118
- # to be equal to the source removing .tt from the filename.
1119
- #
1120
- # ==== Parameters
1121
- # source<String>:: the relative path to the source root.
1122
- # destination<String>:: the relative path to the destination root.
1123
- # config<Hash>:: give :verbose => false to not log the status.
1124
- #
1125
- # ==== Examples
1126
- #
1127
- # template "README", "doc/README"
1128
- #
1129
- # template "doc/README"
1130
- #
1131
- # source://thor//lib/thor/actions/file_manipulation.rb#117
1132
- def template(source, *args, &block); end
1133
-
1134
- # Run a thor command. A hash of options can be given and it's converted to
1135
- # switches.
1136
- #
1137
- # ==== Parameters
1138
- # command<String>:: the command to be invoked
1139
- # args<Array>:: arguments to the command
1140
- # config<Hash>:: give :verbose => false to not log the status, :capture => true to hide to output.
1141
- # Other options are given as parameter to Thor.
1142
- #
1143
- #
1144
- # ==== Examples
1145
- #
1146
- # thor :install, "http://gist.github.com/103208"
1147
- # #=> thor install http://gist.github.com/103208
1148
- #
1149
- # thor :list, :all => true, :substring => 'rails'
1150
- # #=> thor list --all --substring=rails
1151
- #
1152
- # source://thor//lib/thor/actions.rb#308
1153
- def thor(command, *args); end
1154
-
1155
- # Uncomment all lines matching a given regex. Preserves indentation before
1156
- # the comment hash and removes the hash and any immediate following space.
1157
- #
1158
- # ==== Parameters
1159
- # path<String>:: path of the file to be changed
1160
- # flag<Regexp|String>:: the regexp or string used to decide which lines to uncomment
1161
- # config<Hash>:: give :verbose => false to not log the status.
1162
- #
1163
- # ==== Example
1164
- #
1165
- # uncomment_lines 'config/initializers/session_store.rb', /active_record/
1166
- #
1167
- # source://thor//lib/thor/actions/file_manipulation.rb#289
1168
- def uncomment_lines(path, flag, *args); end
1169
-
1170
- protected
1171
-
1172
- # source://thor//lib/thor/actions.rb#329
1173
- def _cleanup_options_and_set(options, key); end
1174
-
1175
- # Allow current root to be shared between invocations.
1176
- #
1177
- # source://thor//lib/thor/actions.rb#325
1178
- def _shared_configuration; end
1179
-
1180
- private
1181
-
1182
- # source://thor//lib/thor/actions/file_manipulation.rb#346
1183
- def capture(*args); end
1184
-
1185
- # source://thor//lib/thor/actions/file_manipulation.rb#342
1186
- def concat(string); end
1187
-
1188
- # Returns the value of attribute output_buffer.
1189
- #
1190
- # source://thor//lib/thor/actions/file_manipulation.rb#337
1191
- def output_buffer; end
1192
-
1193
- # Sets the attribute output_buffer
1194
- #
1195
- # @param value the value to set the attribute output_buffer to.
1196
- #
1197
- # source://thor//lib/thor/actions/file_manipulation.rb#337
1198
- def output_buffer=(_arg0); end
1199
-
1200
- # source://thor//lib/thor/actions/file_manipulation.rb#350
1201
- def with_output_buffer(buf = T.unsafe(nil)); end
1202
-
1203
- class << self
1204
- # source://thor//lib/thor/actions.rb#12
1205
- def included(base); end
1206
- end
1207
- end
1208
-
1209
- # Thor::Actions#capture depends on what kind of buffer is used in ERB.
1210
- # Thus CapturableERB fixes ERB to use String buffer.
1211
- #
1212
- # source://thor//lib/thor/actions/file_manipulation.rb#362
1213
- class Thor::Actions::CapturableERB < ::ERB
1214
- # source://thor//lib/thor/actions/file_manipulation.rb#363
1215
- def set_eoutvar(compiler, eoutvar = T.unsafe(nil)); end
1216
- end
1217
-
1218
- # source://thor//lib/thor/actions.rb#17
1219
- module Thor::Actions::ClassMethods
1220
- # Add runtime options that help actions execution.
1221
- #
1222
- # source://thor//lib/thor/actions.rb#48
1223
- def add_runtime_options!; end
1224
-
1225
- # Hold source paths for one Thor instance. source_paths_for_search is the
1226
- # method responsible to gather source_paths from this current class,
1227
- # inherited paths and the source root.
1228
- #
1229
- # source://thor//lib/thor/actions.rb#22
1230
- def source_paths; end
1231
-
1232
- # Returns the source paths in the following order:
1233
- #
1234
- # 1) This class source paths
1235
- # 2) Source root
1236
- # 3) Parents source paths
1237
- #
1238
- # source://thor//lib/thor/actions.rb#38
1239
- def source_paths_for_search; end
1240
-
1241
- # Stores and return the source root for this class
1242
- #
1243
- # source://thor//lib/thor/actions.rb#27
1244
- def source_root(path = T.unsafe(nil)); end
1245
- end
1246
-
1247
- # CreateFile is a subset of Template, which instead of rendering a file with
1248
- # ERB, it gets the content from the user.
1249
- #
1250
- # source://thor//lib/thor/actions/create_file.rb#32
1251
- class Thor::Actions::CreateFile < ::Thor::Actions::EmptyDirectory
1252
- # @return [CreateFile] a new instance of CreateFile
1253
- #
1254
- # source://thor//lib/thor/actions/create_file.rb#35
1255
- def initialize(base, destination, data, config = T.unsafe(nil)); end
1256
-
1257
- # source://thor//lib/thor/actions/create_file.rb#33
1258
- def data; end
1259
-
1260
- # Checks if the content of the file at the destination is identical to the rendered result.
1261
- #
1262
- # ==== Returns
1263
- # Boolean:: true if it is identical, false otherwise.
1264
- #
1265
- # @return [Boolean]
1266
- #
1267
- # source://thor//lib/thor/actions/create_file.rb#45
1268
- def identical?; end
1269
-
1270
- # source://thor//lib/thor/actions/create_file.rb#60
1271
- def invoke!; end
1272
-
1273
- # Holds the content to be added to the file.
1274
- #
1275
- # source://thor//lib/thor/actions/create_file.rb#52
1276
- def render; end
1277
-
1278
- protected
1279
-
1280
- # Shows the file collision menu to the user and gets the result.
1281
- #
1282
- # @return [Boolean]
1283
- #
1284
- # source://thor//lib/thor/actions/create_file.rb#100
1285
- def force_on_collision?; end
1286
-
1287
- # If force is true, run the action, otherwise check if it's not being
1288
- # skipped. If both are false, show the file_collision menu, if the menu
1289
- # returns true, force it, otherwise skip.
1290
- #
1291
- # source://thor//lib/thor/actions/create_file.rb#86
1292
- def force_or_skip_or_conflict(force, skip, &block); end
1293
-
1294
- # Now on conflict we check if the file is identical or not.
1295
- #
1296
- # source://thor//lib/thor/actions/create_file.rb#73
1297
- def on_conflict_behavior(&block); end
1298
- end
1299
-
1300
- # CreateLink is a subset of CreateFile, which instead of taking a block of
1301
- # data, just takes a source string from the user.
1302
- #
1303
- # source://thor//lib/thor/actions/create_link.rb#27
1304
- class Thor::Actions::CreateLink < ::Thor::Actions::CreateFile
1305
- # source://thor//lib/thor/actions/create_link.rb#28
1306
- def data; end
1307
-
1308
- # @return [Boolean]
1309
- #
1310
- # source://thor//lib/thor/actions/create_link.rb#56
1311
- def exists?; end
1312
-
1313
- # Checks if the content of the file at the destination is identical to the rendered result.
1314
- #
1315
- # ==== Returns
1316
- # Boolean:: true if it is identical, false otherwise.
1317
- #
1318
- # @return [Boolean]
1319
- #
1320
- # source://thor//lib/thor/actions/create_link.rb#35
1321
- def identical?; end
1322
-
1323
- # source://thor//lib/thor/actions/create_link.rb#40
1324
- def invoke!; end
1325
- end
1326
-
1327
- # source://thor//lib/thor/actions/directory.rb#55
1328
- class Thor::Actions::Directory < ::Thor::Actions::EmptyDirectory
1329
- # @return [Directory] a new instance of Directory
1330
- #
1331
- # source://thor//lib/thor/actions/directory.rb#58
1332
- def initialize(base, source, destination = T.unsafe(nil), config = T.unsafe(nil), &block); end
1333
-
1334
- # source://thor//lib/thor/actions/directory.rb#64
1335
- def invoke!; end
1336
-
1337
- # source://thor//lib/thor/actions/directory.rb#69
1338
- def revoke!; end
1339
-
1340
- # Returns the value of attribute source.
1341
- #
1342
- # source://thor//lib/thor/actions/directory.rb#56
1343
- def source; end
1344
-
1345
- protected
1346
-
1347
- # source://thor//lib/thor/actions/directory.rb#75
1348
- def execute!; end
1349
-
1350
- # source://thor//lib/thor/actions/directory.rb#99
1351
- def file_level_lookup(previous_lookup); end
1352
-
1353
- # source://thor//lib/thor/actions/directory.rb#103
1354
- def files(lookup); end
1355
- end
1356
-
1357
- # source://thor//lib/thor/actions/empty_directory.rb#23
1358
- class Thor::Actions::EmptyDirectory
1359
- # Initializes given the source and destination.
1360
- #
1361
- # ==== Parameters
1362
- # base<Thor::Base>:: A Thor::Base instance
1363
- # source<String>:: Relative path to the source of this file
1364
- # destination<String>:: Relative path to the destination of this file
1365
- # config<Hash>:: give :verbose => false to not log the status.
1366
- #
1367
- # @return [EmptyDirectory] a new instance of EmptyDirectory
1368
- #
1369
- # source://thor//lib/thor/actions/empty_directory.rb#34
1370
- def initialize(base, destination, config = T.unsafe(nil)); end
1371
-
1372
- # source://thor//lib/thor/actions/empty_directory.rb#24
1373
- def base; end
1374
-
1375
- # source://thor//lib/thor/actions/empty_directory.rb#24
1376
- def config; end
1377
-
1378
- # source://thor//lib/thor/actions/empty_directory.rb#24
1379
- def destination; end
1380
-
1381
- # Checks if the destination file already exists.
1382
- #
1383
- # ==== Returns
1384
- # Boolean:: true if the file exists, false otherwise.
1385
- #
1386
- # @return [Boolean]
1387
- #
1388
- # source://thor//lib/thor/actions/empty_directory.rb#45
1389
- def exists?; end
1390
-
1391
- # source://thor//lib/thor/actions/empty_directory.rb#24
1392
- def given_destination; end
1393
-
1394
- # source://thor//lib/thor/actions/empty_directory.rb#49
1395
- def invoke!; end
1396
-
1397
- # source://thor//lib/thor/actions/empty_directory.rb#24
1398
- def relative_destination; end
1399
-
1400
- # source://thor//lib/thor/actions/empty_directory.rb#56
1401
- def revoke!; end
1402
-
1403
- protected
1404
-
1405
- # Filenames in the encoded form are converted. If you have a file:
1406
- #
1407
- # %file_name%.rb
1408
- #
1409
- # It calls #file_name from the base and replaces %-string with the
1410
- # return value (should be String) of #file_name:
1411
- #
1412
- # user.rb
1413
- #
1414
- # The method referenced can be either public or private.
1415
- #
1416
- # source://thor//lib/thor/actions/empty_directory.rb#103
1417
- def convert_encoded_instructions(filename); end
1418
-
1419
- # Sets the absolute destination value from a relative destination value.
1420
- # It also stores the given and relative destination. Let's suppose our
1421
- # script is being executed on "dest", it sets the destination root to
1422
- # "dest". The destination, given_destination and relative_destination
1423
- # are related in the following way:
1424
- #
1425
- # inside "bar" do
1426
- # empty_directory "baz"
1427
- # end
1428
- #
1429
- # destination #=> dest/bar/baz
1430
- # relative_destination #=> bar/baz
1431
- # given_destination #=> baz
1432
- #
1433
- # source://thor//lib/thor/actions/empty_directory.rb#85
1434
- def destination=(destination); end
1435
-
1436
- # Receives a hash of options and just execute the block if some
1437
- # conditions are met.
1438
- #
1439
- # source://thor//lib/thor/actions/empty_directory.rb#113
1440
- def invoke_with_conflict_check(&block); end
1441
-
1442
- # What to do when the destination file already exists.
1443
- #
1444
- # source://thor//lib/thor/actions/empty_directory.rb#132
1445
- def on_conflict_behavior; end
1446
-
1447
- # source://thor//lib/thor/actions/empty_directory.rb#126
1448
- def on_file_clash_behavior; end
1449
-
1450
- # Shortcut for pretend.
1451
- #
1452
- # @return [Boolean]
1453
- #
1454
- # source://thor//lib/thor/actions/empty_directory.rb#67
1455
- def pretend?; end
1456
-
1457
- # Shortcut to say_status shell method.
1458
- #
1459
- # source://thor//lib/thor/actions/empty_directory.rb#138
1460
- def say_status(status, color); end
1461
- end
1462
-
1463
- # source://thor//lib/thor/actions/inject_into_file.rb#36
1464
- class Thor::Actions::InjectIntoFile < ::Thor::Actions::EmptyDirectory
1465
- # @return [InjectIntoFile] a new instance of InjectIntoFile
1466
- #
1467
- # source://thor//lib/thor/actions/inject_into_file.rb#39
1468
- def initialize(base, destination, data, config); end
1469
-
1470
- # Returns the value of attribute behavior.
1471
- #
1472
- # source://thor//lib/thor/actions/inject_into_file.rb#37
1473
- def behavior; end
1474
-
1475
- # Returns the value of attribute flag.
1476
- #
1477
- # source://thor//lib/thor/actions/inject_into_file.rb#37
1478
- def flag; end
1479
-
1480
- # source://thor//lib/thor/actions/inject_into_file.rb#52
1481
- def invoke!; end
1482
-
1483
- # Returns the value of attribute replacement.
1484
- #
1485
- # source://thor//lib/thor/actions/inject_into_file.rb#37
1486
- def replacement; end
1487
-
1488
- # source://thor//lib/thor/actions/inject_into_file.rb#74
1489
- def revoke!; end
1490
-
1491
- protected
1492
-
1493
- # source://thor//lib/thor/actions/inject_into_file.rb#110
1494
- def content; end
1495
-
1496
- # Adds the content to the file.
1497
- #
1498
- # source://thor//lib/thor/actions/inject_into_file.rb#120
1499
- def replace!(regexp, string, force); end
1500
-
1501
- # @return [Boolean]
1502
- #
1503
- # source://thor//lib/thor/actions/inject_into_file.rb#114
1504
- def replacement_present?; end
1505
-
1506
- # source://thor//lib/thor/actions/inject_into_file.rb#90
1507
- def say_status(behavior, warning: T.unsafe(nil), color: T.unsafe(nil)); end
1508
- end
1509
-
1510
- # Injects the given content into a file. Different from gsub_file, this
1511
- # method is reversible.
1512
- #
1513
- # ==== Parameters
1514
- # destination<String>:: Relative path to the destination root
1515
- # data<String>:: Data to add to the file. Can be given as a block.
1516
- # config<Hash>:: give :verbose => false to not log the status and the flag
1517
- # for injection (:after or :before) or :force => true for
1518
- # insert two or more times the same content.
1519
- #
1520
- # ==== Examples
1521
- #
1522
- # insert_into_file "config/environment.rb", "config.gem :thor", :after => "Rails::Initializer.run do |config|\n"
1523
- #
1524
- # insert_into_file "config/environment.rb", :after => "Rails::Initializer.run do |config|\n" do
1525
- # gems = ask "Which gems would you like to add?"
1526
- # gems.split(" ").map{ |gem| " config.gem :#{gem}" }.join("\n")
1527
- # end
1528
- #
1529
- # source://thor//lib/thor/actions/inject_into_file.rb#24
1530
- Thor::Actions::WARNINGS = T.let(T.unsafe(nil), Hash)
1531
-
1532
- # source://thor//lib/thor/error.rb#57
1533
- class Thor::AmbiguousCommandError < ::Thor::Error; end
1534
-
1535
- # source://thor//lib/thor/error.rb#59
1536
- Thor::AmbiguousTaskError = Thor::AmbiguousCommandError
1537
-
1538
- # source://thor//lib/thor/parser/argument.rb#2
1539
- class Thor::Argument
1540
- # @raise [ArgumentError]
1541
- # @return [Argument] a new instance of Argument
1542
- #
1543
- # source://thor//lib/thor/parser/argument.rb#8
1544
- def initialize(name, options = T.unsafe(nil)); end
1545
-
1546
- # Returns the value of attribute banner.
1547
- #
1548
- # source://thor//lib/thor/parser/argument.rb#5
1549
- def banner; end
1550
-
1551
- # Returns the value of attribute default.
1552
- #
1553
- # source://thor//lib/thor/parser/argument.rb#5
1554
- def default; end
1555
-
1556
- # Returns the value of attribute description.
1557
- #
1558
- # source://thor//lib/thor/parser/argument.rb#5
1559
- def description; end
1560
-
1561
- # Returns the value of attribute enum.
1562
- #
1563
- # source://thor//lib/thor/parser/argument.rb#5
1564
- def enum; end
1565
-
1566
- # source://thor//lib/thor/parser/argument.rb#52
1567
- def enum_to_s; end
1568
-
1569
- # Returns the value of attribute name.
1570
- #
1571
- # source://thor//lib/thor/parser/argument.rb#5
1572
- def human_name; end
1573
-
1574
- # Returns the value of attribute name.
1575
- #
1576
- # source://thor//lib/thor/parser/argument.rb#5
1577
- def name; end
1578
-
1579
- # source://thor//lib/thor/parser/argument.rb#27
1580
- def print_default; end
1581
-
1582
- # Returns the value of attribute required.
1583
- #
1584
- # source://thor//lib/thor/parser/argument.rb#5
1585
- def required; end
1586
-
1587
- # @return [Boolean]
1588
- #
1589
- # source://thor//lib/thor/parser/argument.rb#39
1590
- def required?; end
1591
-
1592
- # @return [Boolean]
1593
- #
1594
- # source://thor//lib/thor/parser/argument.rb#43
1595
- def show_default?; end
1596
-
1597
- # Returns the value of attribute type.
1598
- #
1599
- # source://thor//lib/thor/parser/argument.rb#5
1600
- def type; end
1601
-
1602
- # source://thor//lib/thor/parser/argument.rb#35
1603
- def usage; end
1604
-
1605
- protected
1606
-
1607
- # source://thor//lib/thor/parser/argument.rb#71
1608
- def default_banner; end
1609
-
1610
- # @return [Boolean]
1611
- #
1612
- # source://thor//lib/thor/parser/argument.rb#67
1613
- def valid_type?(type); end
1614
-
1615
- # @raise [ArgumentError]
1616
- #
1617
- # source://thor//lib/thor/parser/argument.rb#62
1618
- def validate!; end
1619
- end
1620
-
1621
- # source://thor//lib/thor/parser/argument.rb#3
1622
- Thor::Argument::VALID_TYPES = T.let(T.unsafe(nil), Array)
1623
-
1624
- # source://thor//lib/thor/parser/arguments.rb#2
1625
- class Thor::Arguments
1626
- # Takes an array of Thor::Argument objects.
1627
- #
1628
- # @return [Arguments] a new instance of Arguments
1629
- #
1630
- # source://thor//lib/thor/parser/arguments.rb#26
1631
- def initialize(arguments = T.unsafe(nil)); end
1632
-
1633
- # source://thor//lib/thor/parser/arguments.rb#40
1634
- def parse(args); end
1635
-
1636
- # source://thor//lib/thor/parser/arguments.rb#53
1637
- def remaining; end
1638
-
1639
- private
1640
-
1641
- # Raises an error if @non_assigned_required array is not empty.
1642
- #
1643
- # @raise [RequiredArgumentMissingError]
1644
- #
1645
- # source://thor//lib/thor/parser/arguments.rb#186
1646
- def check_requirement!; end
1647
-
1648
- # @return [Boolean]
1649
- #
1650
- # source://thor//lib/thor/parser/arguments.rb#84
1651
- def current_is_value?; end
1652
-
1653
- # @return [Boolean]
1654
- #
1655
- # source://thor//lib/thor/parser/arguments.rb#64
1656
- def last?; end
1657
-
1658
- # @return [Boolean]
1659
- #
1660
- # source://thor//lib/thor/parser/arguments.rb#59
1661
- def no_or_skip?(arg); end
1662
-
1663
- # Runs through the argument array getting all strings until no string is
1664
- # found or a switch is found.
1665
- #
1666
- # ["a", "b", "c"]
1667
- #
1668
- # And returns it as an array:
1669
- #
1670
- # ["a", "b", "c"]
1671
- #
1672
- # source://thor//lib/thor/parser/arguments.rb#118
1673
- def parse_array(name); end
1674
-
1675
- # Runs through the argument array getting strings that contains ":" and
1676
- # mark it as a hash:
1677
- #
1678
- # [ "name:string", "age:integer" ]
1679
- #
1680
- # Becomes:
1681
- #
1682
- # { "name" => "string", "age" => "integer" }
1683
- #
1684
- # source://thor//lib/thor/parser/arguments.rb#97
1685
- def parse_hash(name); end
1686
-
1687
- # Check if the peek is numeric format and return a Float or Integer.
1688
- # Check if the peek is included in enum if enum is provided.
1689
- # Otherwise raises an error.
1690
- #
1691
- # source://thor//lib/thor/parser/arguments.rb#139
1692
- def parse_numeric(name); end
1693
-
1694
- # Parse string:
1695
- # for --string-arg, just return the current value in the pile
1696
- # for --no-string-arg, nil
1697
- # Check if the peek is included in enum if enum is provided. Otherwise raises an error.
1698
- #
1699
- # source://thor//lib/thor/parser/arguments.rb#158
1700
- def parse_string(name); end
1701
-
1702
- # source://thor//lib/thor/parser/arguments.rb#68
1703
- def peek; end
1704
-
1705
- # source://thor//lib/thor/parser/arguments.rb#72
1706
- def shift; end
1707
-
1708
- # source://thor//lib/thor/parser/arguments.rb#76
1709
- def unshift(arg); end
1710
-
1711
- # Raises an error if the switch is an enum and the values aren't included on it.
1712
- #
1713
- # source://thor//lib/thor/parser/arguments.rb#172
1714
- def validate_enum_value!(name, value, message); end
1715
-
1716
- class << self
1717
- # source://thor//lib/thor/parser/arguments.rb#19
1718
- def parse(*args); end
1719
-
1720
- # Receives an array of args and returns two arrays, one with arguments
1721
- # and one with switches.
1722
- #
1723
- # source://thor//lib/thor/parser/arguments.rb#8
1724
- def split(args); end
1725
- end
1726
- end
1727
-
1728
- # source://thor//lib/thor/parser/arguments.rb#3
1729
- Thor::Arguments::NUMERIC = T.let(T.unsafe(nil), Regexp)
1730
-
1731
- # source://thor//lib/thor/error.rb#104
1732
- class Thor::AtLeastOneRequiredArgumentError < ::Thor::InvocationError; end
1733
-
1734
- # source://thor//lib/thor/shell.rb#4
1735
- module Thor::Base
1736
- include ::Thor::Invocation
1737
- include ::Thor::Shell
1738
-
1739
- mixes_in_class_methods ::Thor::Base::ClassMethods
1740
- mixes_in_class_methods ::Thor::Invocation::ClassMethods
1741
-
1742
- # It receives arguments in an Array and two hashes, one for options and
1743
- # other for configuration.
1744
- #
1745
- # Notice that it does not check if all required arguments were supplied.
1746
- # It should be done by the parser.
1747
- #
1748
- # ==== Parameters
1749
- # args<Array[Object]>:: An array of objects. The objects are applied to their
1750
- # respective accessors declared with <tt>argument</tt>.
1751
- #
1752
- # options<Hash>:: An options hash that will be available as self.options.
1753
- # The hash given is converted to a hash with indifferent
1754
- # access, magic predicates (options.skip?) and then frozen.
1755
- #
1756
- # config<Hash>:: Configuration for this Thor class.
1757
- #
1758
- # source://thor//lib/thor/base.rb#53
1759
- def initialize(args = T.unsafe(nil), local_options = T.unsafe(nil), config = T.unsafe(nil)); end
1760
-
1761
- # Returns the value of attribute args.
1762
- #
1763
- # source://thor//lib/thor/base.rb#35
1764
- def args; end
1765
-
1766
- # Sets the attribute args
1767
- #
1768
- # @param value the value to set the attribute args to.
1769
- #
1770
- # source://thor//lib/thor/base.rb#35
1771
- def args=(_arg0); end
1772
-
1773
- # Returns the value of attribute options.
1774
- #
1775
- # source://thor//lib/thor/base.rb#35
1776
- def options; end
1777
-
1778
- # Sets the attribute options
1779
- #
1780
- # @param value the value to set the attribute options to.
1781
- #
1782
- # source://thor//lib/thor/base.rb#35
1783
- def options=(_arg0); end
1784
-
1785
- # Returns the value of attribute parent_options.
1786
- #
1787
- # source://thor//lib/thor/base.rb#35
1788
- def parent_options; end
1789
-
1790
- # Sets the attribute parent_options
1791
- #
1792
- # @param value the value to set the attribute parent_options to.
1793
- #
1794
- # source://thor//lib/thor/base.rb#35
1795
- def parent_options=(_arg0); end
1796
-
1797
- class << self
1798
- # source://thor//lib/thor/base.rb#116
1799
- def included(base); end
1800
-
1801
- # Whenever a class inherits from Thor or Thor::Group, we should track the
1802
- # class and the file on Thor::Base. This is the method responsible for it.
1803
- #
1804
- # source://thor//lib/thor/base.rb#144
1805
- def register_klass_file(klass); end
1806
-
1807
- # Returns the shell used in all Thor classes. If you are in a Unix platform
1808
- # it will use a colored log, otherwise it will use a basic one without color.
1809
- #
1810
- # source://thor//lib/thor/shell.rb#11
1811
- def shell; end
1812
-
1813
- # Sets the attribute shell
1814
- #
1815
- # @param value the value to set the attribute shell to.
1816
- #
1817
- # source://thor//lib/thor/shell.rb#6
1818
- def shell=(_arg0); end
1819
-
1820
- # Returns the files where the subclasses are kept.
1821
- #
1822
- # ==== Returns
1823
- # Hash[path<String> => Class]
1824
- #
1825
- # source://thor//lib/thor/base.rb#137
1826
- def subclass_files; end
1827
-
1828
- # Returns the classes that inherits from Thor or Thor::Group.
1829
- #
1830
- # ==== Returns
1831
- # Array[Class]
1832
- #
1833
- # source://thor//lib/thor/base.rb#128
1834
- def subclasses; end
1835
- end
1836
- end
1837
-
1838
- # source://thor//lib/thor/base.rb#153
1839
- module Thor::Base::ClassMethods
1840
- # Returns the commands for this Thor class and all subclasses.
1841
- #
1842
- # ==== Returns
1843
- # Hash:: An ordered hash with commands names as keys and Thor::Command
1844
- # objects as values.
1845
- #
1846
- # source://thor//lib/thor/base.rb#482
1847
- def all_commands; end
1848
-
1849
- # Returns the commands for this Thor class and all subclasses.
1850
- #
1851
- # ==== Returns
1852
- # Hash:: An ordered hash with commands names as keys and Thor::Command
1853
- # objects as values.
1854
- #
1855
- # source://thor//lib/thor/base.rb#482
1856
- def all_tasks; end
1857
-
1858
- # If you want to use defaults that don't match the type of an option,
1859
- # either specify `check_default_type: false` or call `allow_incompatible_default_type!`
1860
- #
1861
- # source://thor//lib/thor/base.rb#189
1862
- def allow_incompatible_default_type!; end
1863
-
1864
- # Adds an argument to the class and creates an attr_accessor for it.
1865
- #
1866
- # Arguments are different from options in several aspects. The first one
1867
- # is how they are parsed from the command line, arguments are retrieved
1868
- # from position:
1869
- #
1870
- # thor command NAME
1871
- #
1872
- # Instead of:
1873
- #
1874
- # thor command --name=NAME
1875
- #
1876
- # Besides, arguments are used inside your code as an accessor (self.argument),
1877
- # while options are all kept in a hash (self.options).
1878
- #
1879
- # Finally, arguments cannot have type :default or :boolean but can be
1880
- # optional (supplying :optional => :true or :required => false), although
1881
- # you cannot have a required argument after a non-required argument. If you
1882
- # try it, an error is raised.
1883
- #
1884
- # ==== Parameters
1885
- # name<Symbol>:: The name of the argument.
1886
- # options<Hash>:: Described below.
1887
- #
1888
- # ==== Options
1889
- # :desc - Description for the argument.
1890
- # :required - If the argument is required or not.
1891
- # :optional - If the argument is optional or not.
1892
- # :type - The type of the argument, can be :string, :hash, :array, :numeric.
1893
- # :default - Default value for this argument. It cannot be required and have default values.
1894
- # :banner - String to show on usage notes.
1895
- #
1896
- # ==== Errors
1897
- # ArgumentError:: Raised if you supply a required argument after a non required one.
1898
- #
1899
- # source://thor//lib/thor/base.rb#261
1900
- def argument(name, options = T.unsafe(nil)); end
1901
-
1902
- # Returns this class arguments, looking up in the ancestors chain.
1903
- #
1904
- # ==== Returns
1905
- # Array[Thor::Argument]
1906
- #
1907
- # source://thor//lib/thor/base.rb#293
1908
- def arguments; end
1909
-
1910
- # source://thor//lib/thor/base.rb#162
1911
- def attr_accessor(*_arg0); end
1912
-
1913
- # source://thor//lib/thor/base.rb#154
1914
- def attr_reader(*_arg0); end
1915
-
1916
- # source://thor//lib/thor/base.rb#158
1917
- def attr_writer(*_arg0); end
1918
-
1919
- # source://thor//lib/thor/base.rb#193
1920
- def check_default_type; end
1921
-
1922
- # If you want to raise an error when the default value of an option does not match
1923
- # the type call check_default_type!
1924
- # This will be the default; for compatibility a deprecation warning is issued if necessary.
1925
- #
1926
- # source://thor//lib/thor/base.rb#183
1927
- def check_default_type!; end
1928
-
1929
- # source://thor//lib/thor/base.rb#172
1930
- def check_unknown_options; end
1931
-
1932
- # If you want to raise an error for unknown options, call check_unknown_options!
1933
- # This is disabled by default to allow dynamic invocations.
1934
- #
1935
- # source://thor//lib/thor/base.rb#168
1936
- def check_unknown_options!; end
1937
-
1938
- # @return [Boolean]
1939
- #
1940
- # source://thor//lib/thor/base.rb#176
1941
- def check_unknown_options?(config); end
1942
-
1943
- # Adds and declares option group for required at least one of options in the
1944
- # block and arguments. You can declare options as the outside of the block.
1945
- #
1946
- # ==== Examples
1947
- #
1948
- # class_at_least_one do
1949
- # class_option :one
1950
- # class_option :two
1951
- # end
1952
- #
1953
- # Or
1954
- #
1955
- # class_option :one
1956
- # class_option :two
1957
- # class_at_least_one :one, :two
1958
- #
1959
- # If you do not give "--one" and "--two" AtLeastOneRequiredArgumentError
1960
- # will be raised.
1961
- #
1962
- # You can use class_at_least_one and class_exclusive at the same time.
1963
- #
1964
- # class_exclusive do
1965
- # class_at_least_one do
1966
- # class_option :one
1967
- # class_option :two
1968
- # end
1969
- # end
1970
- #
1971
- # Then it is required either only one of "--one" or "--two".
1972
- #
1973
- # source://thor//lib/thor/base.rb#392
1974
- def class_at_least_one(*args, &block); end
1975
-
1976
- # Returns this class at least one of required options array set, looking up in the ancestors chain.
1977
- #
1978
- # ==== Returns
1979
- # Array[Array[Thor::Option.name]]
1980
- #
1981
- # source://thor//lib/thor/base.rb#411
1982
- def class_at_least_one_option_names; end
1983
-
1984
- # Adds and declares option group for exclusive options in the
1985
- # block and arguments. You can declare options as the outside of the block.
1986
- #
1987
- # ==== Parameters
1988
- # Array[Thor::Option.name]
1989
- #
1990
- # ==== Examples
1991
- #
1992
- # class_exclusive do
1993
- # class_option :one
1994
- # class_option :two
1995
- # end
1996
- #
1997
- # Or
1998
- #
1999
- # class_option :one
2000
- # class_option :two
2001
- # class_exclusive :one, :two
2002
- #
2003
- # If you give "--one" and "--two" at the same time ExclusiveArgumentsError
2004
- # will be raised.
2005
- #
2006
- # source://thor//lib/thor/base.rb#357
2007
- def class_exclusive(*args, &block); end
2008
-
2009
- # Returns this class exclusive options array set, looking up in the ancestors chain.
2010
- #
2011
- # ==== Returns
2012
- # Array[Array[Thor::Option.name]]
2013
- #
2014
- # source://thor//lib/thor/base.rb#402
2015
- def class_exclusive_option_names; end
2016
-
2017
- # Adds an option to the set of class options
2018
- #
2019
- # ==== Parameters
2020
- # name<Symbol>:: The name of the argument.
2021
- # options<Hash>:: Described below.
2022
- #
2023
- # ==== Options
2024
- # :desc:: -- Description for the argument.
2025
- # :required:: -- If the argument is required or not.
2026
- # :default:: -- Default value for this argument.
2027
- # :group:: -- The group for this options. Use by class options to output options in different levels.
2028
- # :aliases:: -- Aliases for this option. <b>Note:</b> Thor follows a convention of one-dash-one-letter options. Thus aliases like "-something" wouldn't be parsed; use either "\--something" or "-s" instead.
2029
- # :type:: -- The type of the argument, can be :string, :hash, :array, :numeric or :boolean.
2030
- # :banner:: -- String to show on usage notes.
2031
- # :hide:: -- If you want to hide this option from the help.
2032
- #
2033
- # source://thor//lib/thor/base.rb#328
2034
- def class_option(name, options = T.unsafe(nil)); end
2035
-
2036
- # Adds a bunch of options to the set of class options.
2037
- #
2038
- # class_options :foo => false, :bar => :required, :baz => :string
2039
- #
2040
- # If you prefer more detailed declaration, check class_option.
2041
- #
2042
- # ==== Parameters
2043
- # Hash[Symbol => Object]
2044
- #
2045
- # source://thor//lib/thor/base.rb#306
2046
- def class_options(options = T.unsafe(nil)); end
2047
-
2048
- # Returns the commands for this Thor class.
2049
- #
2050
- # ==== Returns
2051
- # Hash:: An ordered hash with commands names as keys and Thor::Command
2052
- # objects as values.
2053
- #
2054
- # source://thor//lib/thor/base.rb#471
2055
- def commands; end
2056
-
2057
- # If true, option set will not suspend the execution of the command when
2058
- # a required option is not provided.
2059
- #
2060
- # @return [Boolean]
2061
- #
2062
- # source://thor//lib/thor/base.rb#207
2063
- def disable_required_check?(command_name); end
2064
-
2065
- # A flag that makes the process exit with status 1 if any error happens.
2066
- #
2067
- # @return [Boolean]
2068
- #
2069
- # source://thor//lib/thor/base.rb#628
2070
- def exit_on_failure?; end
2071
-
2072
- # Defines the group. This is used when thor list is invoked so you can specify
2073
- # that only commands from a pre-defined group will be shown. Defaults to standard.
2074
- #
2075
- # ==== Parameters
2076
- # name<String|Symbol>
2077
- #
2078
- # source://thor//lib/thor/base.rb#457
2079
- def group(name = T.unsafe(nil)); end
2080
-
2081
- # @raise [InvocationError]
2082
- #
2083
- # source://thor//lib/thor/base.rb#618
2084
- def handle_argument_error(command, error, args, arity); end
2085
-
2086
- # @raise [UndefinedCommandError]
2087
- #
2088
- # source://thor//lib/thor/base.rb#613
2089
- def handle_no_command_error(command, has_namespace = T.unsafe(nil)); end
2090
-
2091
- # @raise [UndefinedCommandError]
2092
- #
2093
- # source://thor//lib/thor/base.rb#613
2094
- def handle_no_task_error(command, has_namespace = T.unsafe(nil)); end
2095
-
2096
- # Sets the namespace for the Thor or Thor::Group class. By default the
2097
- # namespace is retrieved from the class name. If your Thor class is named
2098
- # Scripts::MyScript, the help method, for example, will be called as:
2099
- #
2100
- # thor scripts:my_script -h
2101
- #
2102
- # If you change the namespace:
2103
- #
2104
- # namespace :my_scripts
2105
- #
2106
- # You change how your commands are invoked:
2107
- #
2108
- # thor my_scripts -h
2109
- #
2110
- # Finally, if you change your namespace to default:
2111
- #
2112
- # namespace :default
2113
- #
2114
- # Your commands can be invoked with a shortcut. Instead of:
2115
- #
2116
- # thor :my_command
2117
- #
2118
- # source://thor//lib/thor/base.rb#566
2119
- def namespace(name = T.unsafe(nil)); end
2120
-
2121
- # All methods defined inside the given block are not added as commands.
2122
- #
2123
- # So you can do:
2124
- #
2125
- # class MyScript < Thor
2126
- # no_commands do
2127
- # def this_is_not_a_command
2128
- # end
2129
- # end
2130
- # end
2131
- #
2132
- # You can also add the method and remove it from the command list:
2133
- #
2134
- # class MyScript < Thor
2135
- # def this_is_not_a_command
2136
- # end
2137
- # remove_command :this_is_not_a_command
2138
- # end
2139
- #
2140
- # source://thor//lib/thor/base.rb#530
2141
- def no_commands(&block); end
2142
-
2143
- # @return [Boolean]
2144
- #
2145
- # source://thor//lib/thor/base.rb#540
2146
- def no_commands?; end
2147
-
2148
- # source://thor//lib/thor/base.rb#536
2149
- def no_commands_context; end
2150
-
2151
- # All methods defined inside the given block are not added as commands.
2152
- #
2153
- # So you can do:
2154
- #
2155
- # class MyScript < Thor
2156
- # no_commands do
2157
- # def this_is_not_a_command
2158
- # end
2159
- # end
2160
- # end
2161
- #
2162
- # You can also add the method and remove it from the command list:
2163
- #
2164
- # class MyScript < Thor
2165
- # def this_is_not_a_command
2166
- # end
2167
- # remove_command :this_is_not_a_command
2168
- # end
2169
- #
2170
- # source://thor//lib/thor/base.rb#530
2171
- def no_tasks(&block); end
2172
-
2173
- # Allows to use private methods from parent in child classes as commands.
2174
- #
2175
- # ==== Parameters
2176
- # names<Array>:: Method names to be used as commands
2177
- #
2178
- # ==== Examples
2179
- #
2180
- # public_command :foo
2181
- # public_command :foo, :bar, :baz
2182
- #
2183
- # source://thor//lib/thor/base.rb#606
2184
- def public_command(*names); end
2185
-
2186
- # Allows to use private methods from parent in child classes as commands.
2187
- #
2188
- # ==== Parameters
2189
- # names<Array>:: Method names to be used as commands
2190
- #
2191
- # ==== Examples
2192
- #
2193
- # public_command :foo
2194
- # public_command :foo, :bar, :baz
2195
- #
2196
- # source://thor//lib/thor/base.rb#606
2197
- def public_task(*names); end
2198
-
2199
- # Removes a previous defined argument. If :undefine is given, undefine
2200
- # accessors as well.
2201
- #
2202
- # ==== Parameters
2203
- # names<Array>:: Arguments to be removed
2204
- #
2205
- # ==== Examples
2206
- #
2207
- # remove_argument :foo
2208
- # remove_argument :foo, :bar, :baz, :undefine => true
2209
- #
2210
- # source://thor//lib/thor/base.rb#426
2211
- def remove_argument(*names); end
2212
-
2213
- # Removes a previous defined class option.
2214
- #
2215
- # ==== Parameters
2216
- # names<Array>:: Class options to be removed
2217
- #
2218
- # ==== Examples
2219
- #
2220
- # remove_class_option :foo
2221
- # remove_class_option :foo, :bar, :baz
2222
- #
2223
- # source://thor//lib/thor/base.rb#445
2224
- def remove_class_option(*names); end
2225
-
2226
- # Removes a given command from this Thor class. This is usually done if you
2227
- # are inheriting from another class and don't want it to be available
2228
- # anymore.
2229
- #
2230
- # By default it only remove the mapping to the command. But you can supply
2231
- # :undefine => true to undefine the method from the class as well.
2232
- #
2233
- # ==== Parameters
2234
- # name<Symbol|String>:: The name of the command to be removed
2235
- # options<Hash>:: You can give :undefine => true if you want commands the method
2236
- # to be undefined from the class as well.
2237
- #
2238
- # source://thor//lib/thor/base.rb#500
2239
- def remove_command(*names); end
2240
-
2241
- # Removes a given command from this Thor class. This is usually done if you
2242
- # are inheriting from another class and don't want it to be available
2243
- # anymore.
2244
- #
2245
- # By default it only remove the mapping to the command. But you can supply
2246
- # :undefine => true to undefine the method from the class as well.
2247
- #
2248
- # ==== Parameters
2249
- # name<Symbol|String>:: The name of the command to be removed
2250
- # options<Hash>:: You can give :undefine => true if you want commands the method
2251
- # to be undefined from the class as well.
2252
- #
2253
- # source://thor//lib/thor/base.rb#500
2254
- def remove_task(*names); end
2255
-
2256
- # Parses the command and options from the given args, instantiate the class
2257
- # and invoke the command. This method is used when the arguments must be parsed
2258
- # from an array. If you are inside Ruby and want to use a Thor class, you
2259
- # can simply initialize it:
2260
- #
2261
- # script = MyScript.new(args, options, config)
2262
- # script.invoke(:command, first_arg, second_arg, third_arg)
2263
- #
2264
- # source://thor//lib/thor/base.rb#582
2265
- def start(given_args = T.unsafe(nil), config = T.unsafe(nil)); end
2266
-
2267
- # If true, option parsing is suspended as soon as an unknown option or a
2268
- # regular argument is encountered. All remaining arguments are passed to
2269
- # the command as regular arguments.
2270
- #
2271
- # @return [Boolean]
2272
- #
2273
- # source://thor//lib/thor/base.rb#201
2274
- def stop_on_unknown_option?(command_name); end
2275
-
2276
- # source://thor//lib/thor/base.rb#218
2277
- def strict_args_position; end
2278
-
2279
- # If you want only strict string args (useful when cascading thor classes),
2280
- # call strict_args_position! This is disabled by default to allow dynamic
2281
- # invocations.
2282
- #
2283
- # source://thor//lib/thor/base.rb#214
2284
- def strict_args_position!; end
2285
-
2286
- # @return [Boolean]
2287
- #
2288
- # source://thor//lib/thor/base.rb#222
2289
- def strict_args_position?(config); end
2290
-
2291
- # Returns the commands for this Thor class.
2292
- #
2293
- # ==== Returns
2294
- # Hash:: An ordered hash with commands names as keys and Thor::Command
2295
- # objects as values.
2296
- #
2297
- # source://thor//lib/thor/base.rb#471
2298
- def tasks; end
2299
-
2300
- protected
2301
-
2302
- # SIGNATURE: Sets the baseclass. This is where the superclass lookup
2303
- # finishes.
2304
- #
2305
- # source://thor//lib/thor/base.rb#777
2306
- def baseclass; end
2307
-
2308
- # The basename of the program invoking the thor class.
2309
- #
2310
- # source://thor//lib/thor/base.rb#771
2311
- def basename; end
2312
-
2313
- # Build an option and adds it to the given scope.
2314
- #
2315
- # ==== Parameters
2316
- # name<Symbol>:: The name of the argument.
2317
- # options<Hash>:: Described in both class_option and method_option.
2318
- # scope<Hash>:: Options hash that is being built up
2319
- #
2320
- # source://thor//lib/thor/base.rb#688
2321
- def build_option(name, options, scope); end
2322
-
2323
- # Receives a hash of options, parse them and add to the scope. This is a
2324
- # fast way to set a bunch of options:
2325
- #
2326
- # build_options :foo => true, :bar => :required, :baz => :string
2327
- #
2328
- # ==== Parameters
2329
- # Hash[Symbol => Object]
2330
- #
2331
- # source://thor//lib/thor/base.rb#699
2332
- def build_options(options, scope); end
2333
-
2334
- # Get target(method_options or class_options) options
2335
- # of before and after by block evaluation.
2336
- #
2337
- # source://thor//lib/thor/base.rb#808
2338
- def built_option_names(target, opt = T.unsafe(nil), &block); end
2339
-
2340
- # Prints the class options per group. If an option does not belong to
2341
- # any group, it's printed as Class option.
2342
- #
2343
- # source://thor//lib/thor/base.rb#638
2344
- def class_options_help(shell, groups = T.unsafe(nil)); end
2345
-
2346
- # Get command scope member by name.
2347
- #
2348
- # source://thor//lib/thor/base.rb#816
2349
- def command_scope_member(name, options = T.unsafe(nil)); end
2350
-
2351
- # SIGNATURE: Creates a new command if valid_command? is true. This method is
2352
- # called when a new method is added to the class.
2353
- #
2354
- # source://thor//lib/thor/base.rb#782
2355
- def create_command(meth); end
2356
-
2357
- # SIGNATURE: Creates a new command if valid_command? is true. This method is
2358
- # called when a new method is added to the class.
2359
- #
2360
- # source://thor//lib/thor/base.rb#782
2361
- def create_task(meth); end
2362
-
2363
- # SIGNATURE: The hook invoked by start.
2364
- #
2365
- # @raise [NotImplementedError]
2366
- #
2367
- # source://thor//lib/thor/base.rb#792
2368
- def dispatch(command, given_args, given_opts, config); end
2369
-
2370
- # Finds a command with the given name. If the command belongs to the current
2371
- # class, just return it, otherwise dup it and add the fresh copy to the
2372
- # current command hash.
2373
- #
2374
- # source://thor//lib/thor/base.rb#708
2375
- def find_and_refresh_command(name); end
2376
-
2377
- # Finds a command with the given name. If the command belongs to the current
2378
- # class, just return it, otherwise dup it and add the fresh copy to the
2379
- # current command hash.
2380
- #
2381
- # source://thor//lib/thor/base.rb#708
2382
- def find_and_refresh_task(name); end
2383
-
2384
- # Retrieves a value from superclass. If it reaches the baseclass,
2385
- # returns default.
2386
- #
2387
- # source://thor//lib/thor/base.rb#749
2388
- def from_superclass(method, default = T.unsafe(nil)); end
2389
-
2390
- # Every time someone inherits from a Thor class, register the klass
2391
- # and file into baseclass.
2392
- #
2393
- # source://thor//lib/thor/base.rb#721
2394
- def inherited(klass); end
2395
-
2396
- # SIGNATURE: Defines behavior when the initialize method is added to the
2397
- # class.
2398
- #
2399
- # source://thor//lib/thor/base.rb#788
2400
- def initialize_added; end
2401
-
2402
- # Raises an error if the word given is a Thor reserved word.
2403
- #
2404
- # @return [Boolean]
2405
- #
2406
- # source://thor//lib/thor/base.rb#677
2407
- def is_thor_reserved_word?(word, type); end
2408
-
2409
- # Fire this callback whenever a method is added. Added methods are
2410
- # tracked as commands by invoking the create_command method.
2411
- #
2412
- # source://thor//lib/thor/base.rb#729
2413
- def method_added(meth); end
2414
-
2415
- # Receives a set of options and print them.
2416
- #
2417
- # source://thor//lib/thor/base.rb#656
2418
- def print_options(shell, options, group_name = T.unsafe(nil)); end
2419
-
2420
- # Register a relation of options for target(method_option/class_option)
2421
- # by args and block.
2422
- #
2423
- # source://thor//lib/thor/base.rb#798
2424
- def register_options_relation_for(target, relation, *args, &block); end
2425
- end
2426
-
2427
- # source://thor//lib/thor/command.rb#2
2428
- class Thor::Command < ::Struct
2429
- # @return [Command] a new instance of Command
2430
- #
2431
- # source://thor//lib/thor/command.rb#5
2432
- def initialize(name, description, long_description, wrap_long_description, usage, options = T.unsafe(nil), options_relation = T.unsafe(nil)); end
2433
-
2434
- # Returns the formatted usage by injecting given required arguments
2435
- # and required options into the given usage.
2436
- #
2437
- # source://thor//lib/thor/command.rb#42
2438
- def formatted_usage(klass, namespace = T.unsafe(nil), subcommand = T.unsafe(nil)); end
2439
-
2440
- # @return [Boolean]
2441
- #
2442
- # source://thor//lib/thor/command.rb#15
2443
- def hidden?; end
2444
-
2445
- # source://thor//lib/thor/command.rb#70
2446
- def method_at_least_one_option_names; end
2447
-
2448
- # source://thor//lib/thor/command.rb#66
2449
- def method_exclusive_option_names; end
2450
-
2451
- # By default, a command invokes a method in the thor class. You can change this
2452
- # implementation to create custom commands.
2453
- #
2454
- # source://thor//lib/thor/command.rb#21
2455
- def run(instance, args = T.unsafe(nil)); end
2456
-
2457
- protected
2458
-
2459
- # @return [Boolean]
2460
- #
2461
- # source://thor//lib/thor/command.rb#114
2462
- def handle_argument_error?(instance, error, caller); end
2463
-
2464
- # @return [Boolean]
2465
- #
2466
- # source://thor//lib/thor/command.rb#121
2467
- def handle_no_method_error?(instance, error, caller); end
2468
-
2469
- # @return [Boolean]
2470
- #
2471
- # source://thor//lib/thor/command.rb#104
2472
- def local_method?(instance, name); end
2473
-
2474
- # @return [Boolean]
2475
- #
2476
- # source://thor//lib/thor/command.rb#87
2477
- def not_debugging?(instance); end
2478
-
2479
- # @return [Boolean]
2480
- #
2481
- # source://thor//lib/thor/command.rb#100
2482
- def private_method?(instance); end
2483
-
2484
- # Given a target, checks if this class name is a public method.
2485
- #
2486
- # @return [Boolean]
2487
- #
2488
- # source://thor//lib/thor/command.rb#96
2489
- def public_method?(instance); end
2490
-
2491
- # Add usage with required arguments
2492
- #
2493
- # source://thor//lib/thor/command.rb#77
2494
- def required_arguments_for(klass, usage); end
2495
-
2496
- # source://thor//lib/thor/command.rb#91
2497
- def required_options; end
2498
-
2499
- # source://thor//lib/thor/command.rb#109
2500
- def sans_backtrace(backtrace, caller); end
2501
-
2502
- private
2503
-
2504
- # source://thor//lib/thor/command.rb#9
2505
- def initialize_copy(other); end
2506
- end
2507
-
2508
- # source://thor//lib/thor/command.rb#3
2509
- Thor::Command::FILE_REGEXP = T.let(T.unsafe(nil), Regexp)
2510
-
2511
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#2
2512
- module Thor::CoreExt; end
2513
-
2514
- # A hash with indifferent access and magic predicates.
2515
- #
2516
- # hash = Thor::CoreExt::HashWithIndifferentAccess.new 'foo' => 'bar', 'baz' => 'bee', 'force' => true
2517
- #
2518
- # hash[:foo] #=> 'bar'
2519
- # hash['foo'] #=> 'bar'
2520
- # hash.foo? #=> true
2521
- #
2522
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#11
2523
- class Thor::CoreExt::HashWithIndifferentAccess < ::Hash
2524
- # @return [HashWithIndifferentAccess] a new instance of HashWithIndifferentAccess
2525
- #
2526
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#12
2527
- def initialize(hash = T.unsafe(nil)); end
2528
-
2529
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#19
2530
- def [](key); end
2531
-
2532
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#23
2533
- def []=(key, value); end
2534
-
2535
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#27
2536
- def delete(key); end
2537
-
2538
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#31
2539
- def except(*keys); end
2540
-
2541
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#37
2542
- def fetch(key, *args); end
2543
-
2544
- # @return [Boolean]
2545
- #
2546
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#45
2547
- def key?(key); end
2548
-
2549
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#53
2550
- def merge(other); end
2551
-
2552
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#57
2553
- def merge!(other); end
2554
-
2555
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#72
2556
- def replace(other_hash); end
2557
-
2558
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#64
2559
- def reverse_merge(other); end
2560
-
2561
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#68
2562
- def reverse_merge!(other_hash); end
2563
-
2564
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#41
2565
- def slice(*keys); end
2566
-
2567
- # Convert to a Hash with String keys.
2568
- #
2569
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#77
2570
- def to_hash; end
2571
-
2572
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#49
2573
- def values_at(*indices); end
2574
-
2575
- protected
2576
-
2577
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#83
2578
- def convert_key(key); end
2579
-
2580
- # Magic predicates. For instance:
2581
- #
2582
- # options.force? # => !!options['force']
2583
- # options.shebang # => "/usr/lib/local/ruby"
2584
- # options.test_framework?(:rspec) # => options[:test_framework] == :rspec
2585
- #
2586
- # source://thor//lib/thor/core_ext/hash_with_indifferent_access.rb#93
2587
- def method_missing(method, *args); end
2588
- end
2589
-
2590
- # source://thor//lib/thor/error.rb#3
2591
- module Thor::Correctable
2592
- # source://thor//lib/thor/error.rb#8
2593
- def corrections; end
2594
-
2595
- # source://thor//lib/thor/error.rb#4
2596
- def to_s; end
2597
- end
2598
-
2599
- # A dynamic command that handles method missing scenarios.
2600
- #
2601
- # source://thor//lib/thor/command.rb#137
2602
- class Thor::DynamicCommand < ::Thor::Command
2603
- # @return [DynamicCommand] a new instance of DynamicCommand
2604
- #
2605
- # source://thor//lib/thor/command.rb#138
2606
- def initialize(name, options = T.unsafe(nil)); end
2607
-
2608
- # source://thor//lib/thor/command.rb#142
2609
- def run(instance, args = T.unsafe(nil)); end
2610
- end
2611
-
2612
- # source://thor//lib/thor/command.rb#150
2613
- Thor::DynamicTask = Thor::DynamicCommand
2614
-
2615
- # Thor::Error is raised when it's caused by wrong usage of thor classes. Those
2616
- # errors have their backtrace suppressed and are nicely shown to the user.
2617
- #
2618
- # Errors that are caused by the developer, like declaring a method which
2619
- # overwrites a thor keyword, SHOULD NOT raise a Thor::Error. This way, we
2620
- # ensure that developer errors are shown with full backtrace.
2621
- #
2622
- # source://thor//lib/thor/error.rb#20
2623
- class Thor::Error < ::StandardError; end
2624
-
2625
- # source://thor//lib/thor/error.rb#101
2626
- class Thor::ExclusiveArgumentError < ::Thor::InvocationError; end
2627
-
2628
- # Thor has a special class called Thor::Group. The main difference to Thor class
2629
- # is that it invokes all commands at once. It also include some methods that allows
2630
- # invocations to be done at the class method, which are not available to Thor
2631
- # commands.
2632
- #
2633
- # source://thor//lib/thor/group.rb#7
2634
- class Thor::Group
2635
- include ::Thor::Base
2636
- include ::Thor::Invocation
2637
- include ::Thor::Shell
2638
- extend ::Thor::Base::ClassMethods
2639
- extend ::Thor::Invocation::ClassMethods
2640
-
2641
- protected
2642
-
2643
- # Shortcut to invoke with padding and block handling. Use internally by
2644
- # invoke and invoke_from_option class methods.
2645
- #
2646
- # source://thor//lib/thor/group.rb#276
2647
- def _invoke_for_class_method(klass, command = T.unsafe(nil), *args, &block); end
2648
-
2649
- class << self
2650
- # Overwrite class options help to allow invoked generators options to be
2651
- # shown recursively when invoking a generator.
2652
- #
2653
- # source://thor//lib/thor/group.rb#161
2654
- def class_options_help(shell, groups = T.unsafe(nil)); end
2655
-
2656
- # Checks if a specified command exists.
2657
- #
2658
- # ==== Parameters
2659
- # command_name<String>:: The name of the command to check for existence.
2660
- #
2661
- # ==== Returns
2662
- # Boolean:: +true+ if the command exists, +false+ otherwise.
2663
- #
2664
- # @return [Boolean]
2665
- #
2666
- # source://thor//lib/thor/group.rb#221
2667
- def command_exists?(command_name); end
2668
-
2669
- # The description for this Thor::Group. If none is provided, but a source root
2670
- # exists, tries to find the USAGE one folder above it, otherwise searches
2671
- # in the superclass.
2672
- #
2673
- # ==== Parameters
2674
- # description<String>:: The description for this Thor::Group.
2675
- #
2676
- # source://thor//lib/thor/group.rb#16
2677
- def desc(description = T.unsafe(nil)); end
2678
-
2679
- # Get invocations array and merge options from invocations. Those
2680
- # options are added to group_options hash. Options that already exists
2681
- # in base_options are not added twice.
2682
- #
2683
- # source://thor//lib/thor/group.rb#172
2684
- def get_options_from_invocations(group_options, base_options); end
2685
-
2686
- # @raise [error]
2687
- #
2688
- # source://thor//lib/thor/group.rb#207
2689
- def handle_argument_error(command, error, _args, arity); end
2690
-
2691
- # Prints help information.
2692
- #
2693
- # ==== Options
2694
- # short:: When true, shows only usage.
2695
- #
2696
- # source://thor//lib/thor/group.rb#29
2697
- def help(shell); end
2698
-
2699
- # Stores invocation blocks used on invoke_from_option.
2700
- #
2701
- # source://thor//lib/thor/group.rb#45
2702
- def invocation_blocks; end
2703
-
2704
- # Stores invocations for this class merging with superclass values.
2705
- #
2706
- # source://thor//lib/thor/group.rb#39
2707
- def invocations; end
2708
-
2709
- # Invoke the given namespace or class given. It adds an instance
2710
- # method that will invoke the klass and command. You can give a block to
2711
- # configure how it will be invoked.
2712
- #
2713
- # The namespace/class given will have its options showed on the help
2714
- # usage. Check invoke_from_option for more information.
2715
- #
2716
- # source://thor//lib/thor/group.rb#56
2717
- def invoke(*names, &block); end
2718
-
2719
- # Invoke a thor class based on the value supplied by the user to the
2720
- # given option named "name". A class option must be created before this
2721
- # method is invoked for each name given.
2722
- #
2723
- # ==== Examples
2724
- #
2725
- # class GemGenerator < Thor::Group
2726
- # class_option :test_framework, :type => :string
2727
- # invoke_from_option :test_framework
2728
- # end
2729
- #
2730
- # ==== Boolean options
2731
- #
2732
- # In some cases, you want to invoke a thor class if some option is true or
2733
- # false. This is automatically handled by invoke_from_option. Then the
2734
- # option name is used to invoke the generator.
2735
- #
2736
- # ==== Preparing for invocation
2737
- #
2738
- # In some cases you want to customize how a specified hook is going to be
2739
- # invoked. You can do that by overwriting the class method
2740
- # prepare_for_invocation. The class method must necessarily return a klass
2741
- # and an optional command.
2742
- #
2743
- # ==== Custom invocations
2744
- #
2745
- # You can also supply a block to customize how the option is going to be
2746
- # invoked. The block receives two parameters, an instance of the current
2747
- # class and the klass to be invoked.
2748
- #
2749
- # source://thor//lib/thor/group.rb#110
2750
- def invoke_from_option(*names, &block); end
2751
-
2752
- # Returns commands ready to be printed.
2753
- #
2754
- # source://thor//lib/thor/group.rb#199
2755
- def printable_commands(*_arg0); end
2756
-
2757
- # Returns commands ready to be printed.
2758
- #
2759
- # source://thor//lib/thor/group.rb#199
2760
- def printable_tasks(*_arg0); end
2761
-
2762
- # Remove a previously added invocation.
2763
- #
2764
- # ==== Examples
2765
- #
2766
- # remove_invocation :test_framework
2767
- #
2768
- # source://thor//lib/thor/group.rb#149
2769
- def remove_invocation(*names); end
2770
-
2771
- protected
2772
-
2773
- # The banner for this class. You can customize it if you are invoking the
2774
- # thor class by another ways which is not the Thor::Runner.
2775
- #
2776
- # source://thor//lib/thor/group.rb#249
2777
- def banner; end
2778
-
2779
- # source://thor//lib/thor/group.rb#259
2780
- def baseclass; end
2781
-
2782
- # source://thor//lib/thor/group.rb#263
2783
- def create_command(meth); end
2784
-
2785
- # source://thor//lib/thor/group.rb#263
2786
- def create_task(meth); end
2787
-
2788
- # The method responsible for dispatching given the args.
2789
- #
2790
- # @yield [instance]
2791
- #
2792
- # source://thor//lib/thor/group.rb#228
2793
- def dispatch(command, given_args, given_opts, config); end
2794
-
2795
- # Represents the whole class as a command.
2796
- #
2797
- # source://thor//lib/thor/group.rb#254
2798
- def self_command; end
2799
-
2800
- # Represents the whole class as a command.
2801
- #
2802
- # source://thor//lib/thor/group.rb#254
2803
- def self_task; end
2804
- end
2805
- end
2806
-
2807
- # Shortcuts for help.
2808
- #
2809
- # source://thor//lib/thor/base.rb#17
2810
- Thor::HELP_MAPPINGS = T.let(T.unsafe(nil), Array)
2811
-
2812
- # A command that is hidden in help messages but still invocable.
2813
- #
2814
- # source://thor//lib/thor/command.rb#129
2815
- class Thor::HiddenCommand < ::Thor::Command
2816
- # @return [Boolean]
2817
- #
2818
- # source://thor//lib/thor/command.rb#130
2819
- def hidden?; end
2820
- end
2821
-
2822
- # source://thor//lib/thor/command.rb#134
2823
- Thor::HiddenTask = Thor::HiddenCommand
2824
-
2825
- # source://thor//lib/thor/invocation.rb#2
2826
- module Thor::Invocation
2827
- mixes_in_class_methods ::Thor::Invocation::ClassMethods
2828
-
2829
- # Make initializer aware of invocations and the initialization args.
2830
- #
2831
- # source://thor//lib/thor/invocation.rb#23
2832
- def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil), &block); end
2833
-
2834
- # Make the current command chain accessible with in a Thor-(sub)command
2835
- #
2836
- # source://thor//lib/thor/invocation.rb#30
2837
- def current_command_chain; end
2838
-
2839
- # Receives a name and invokes it. The name can be a string (either "command" or
2840
- # "namespace:command"), a Thor::Command, a Class or a Thor instance. If the
2841
- # command cannot be guessed by name, it can also be supplied as second argument.
2842
- #
2843
- # You can also supply the arguments, options and configuration values for
2844
- # the command to be invoked, if none is given, the same values used to
2845
- # initialize the invoker are used to initialize the invoked.
2846
- #
2847
- # When no name is given, it will invoke the default command of the current class.
2848
- #
2849
- # ==== Examples
2850
- #
2851
- # class A < Thor
2852
- # def foo
2853
- # invoke :bar
2854
- # invoke "b:hello", ["Erik"]
2855
- # end
2856
- #
2857
- # def bar
2858
- # invoke "b:hello", ["Erik"]
2859
- # end
2860
- # end
2861
- #
2862
- # class B < Thor
2863
- # def hello(name)
2864
- # puts "hello #{name}"
2865
- # end
2866
- # end
2867
- #
2868
- # You can notice that the method "foo" above invokes two commands: "bar",
2869
- # which belongs to the same class and "hello" which belongs to the class B.
2870
- #
2871
- # By using an invocation system you ensure that a command is invoked only once.
2872
- # In the example above, invoking "foo" will invoke "b:hello" just once, even
2873
- # if it's invoked later by "bar" method.
2874
- #
2875
- # When class A invokes class B, all arguments used on A initialization are
2876
- # supplied to B. This allows lazy parse of options. Let's suppose you have
2877
- # some rspec commands:
2878
- #
2879
- # class Rspec < Thor::Group
2880
- # class_option :mock_framework, :type => :string, :default => :rr
2881
- #
2882
- # def invoke_mock_framework
2883
- # invoke "rspec:#{options[:mock_framework]}"
2884
- # end
2885
- # end
2886
- #
2887
- # As you noticed, it invokes the given mock framework, which might have its
2888
- # own options:
2889
- #
2890
- # class Rspec::RR < Thor::Group
2891
- # class_option :style, :type => :string, :default => :mock
2892
- # end
2893
- #
2894
- # Since it's not rspec concern to parse mock framework options, when RR
2895
- # is invoked all options are parsed again, so RR can extract only the options
2896
- # that it's going to use.
2897
- #
2898
- # If you want Rspec::RR to be initialized with its own set of options, you
2899
- # have to do that explicitly:
2900
- #
2901
- # invoke "rspec:rr", [], :style => :foo
2902
- #
2903
- # Besides giving an instance, you can also give a class to invoke:
2904
- #
2905
- # invoke Rspec::RR, [], :style => :foo
2906
- #
2907
- # source://thor//lib/thor/invocation.rb#102
2908
- def invoke(name = T.unsafe(nil), *args); end
2909
-
2910
- # Invoke all commands for the current instance.
2911
- #
2912
- # source://thor//lib/thor/invocation.rb#133
2913
- def invoke_all; end
2914
-
2915
- # Invoke the given command if the given args.
2916
- #
2917
- # source://thor//lib/thor/invocation.rb#122
2918
- def invoke_command(command, *args); end
2919
-
2920
- # Invoke the given command if the given args.
2921
- #
2922
- # source://thor//lib/thor/invocation.rb#122
2923
- def invoke_task(command, *args); end
2924
-
2925
- # Invokes using shell padding.
2926
- #
2927
- # source://thor//lib/thor/invocation.rb#138
2928
- def invoke_with_padding(*args); end
2929
-
2930
- protected
2931
-
2932
- # Initialize klass using values stored in the @_initializer.
2933
- #
2934
- # source://thor//lib/thor/invocation.rb#166
2935
- def _parse_initialization_options(args, opts, config); end
2936
-
2937
- # This method simply retrieves the class and command to be invoked.
2938
- # If the name is nil or the given name is a command in the current class,
2939
- # use the given name and return self as class. Otherwise, call
2940
- # prepare_for_invocation in the current class.
2941
- #
2942
- # source://thor//lib/thor/invocation.rb#153
2943
- def _retrieve_class_and_command(name, sent_command = T.unsafe(nil)); end
2944
-
2945
- # This method simply retrieves the class and command to be invoked.
2946
- # If the name is nil or the given name is a command in the current class,
2947
- # use the given name and return self as class. Otherwise, call
2948
- # prepare_for_invocation in the current class.
2949
- #
2950
- # source://thor//lib/thor/invocation.rb#153
2951
- def _retrieve_class_and_task(name, sent_command = T.unsafe(nil)); end
2952
-
2953
- # Configuration values that are shared between invocations.
2954
- #
2955
- # source://thor//lib/thor/invocation.rb#145
2956
- def _shared_configuration; end
2957
-
2958
- class << self
2959
- # source://thor//lib/thor/invocation.rb#3
2960
- def included(base); end
2961
- end
2962
- end
2963
-
2964
- # source://thor//lib/thor/invocation.rb#8
2965
- module Thor::Invocation::ClassMethods
2966
- # This method is responsible for receiving a name and find the proper
2967
- # class and command for it. The key is an optional parameter which is
2968
- # available only in class methods invocations (i.e. in Thor::Group).
2969
- #
2970
- # source://thor//lib/thor/invocation.rb#12
2971
- def prepare_for_invocation(key, name); end
2972
- end
2973
-
2974
- # Raised when a command was found, but not invoked properly.
2975
- #
2976
- # source://thor//lib/thor/error.rb#62
2977
- class Thor::InvocationError < ::Thor::Error; end
2978
-
2979
- # source://thor//lib/thor/line_editor/basic.rb#2
2980
- module Thor::LineEditor
2981
- class << self
2982
- # source://thor//lib/thor/line_editor.rb#10
2983
- def best_available; end
2984
-
2985
- # source://thor//lib/thor/line_editor.rb#6
2986
- def readline(prompt, options = T.unsafe(nil)); end
2987
- end
2988
- end
2989
-
2990
- # source://thor//lib/thor/line_editor/basic.rb#3
2991
- class Thor::LineEditor::Basic
2992
- # @return [Basic] a new instance of Basic
2993
- #
2994
- # source://thor//lib/thor/line_editor/basic.rb#10
2995
- def initialize(prompt, options); end
2996
-
2997
- # Returns the value of attribute options.
2998
- #
2999
- # source://thor//lib/thor/line_editor/basic.rb#4
3000
- def options; end
3001
-
3002
- # Returns the value of attribute prompt.
3003
- #
3004
- # source://thor//lib/thor/line_editor/basic.rb#4
3005
- def prompt; end
3006
-
3007
- # source://thor//lib/thor/line_editor/basic.rb#15
3008
- def readline; end
3009
-
3010
- private
3011
-
3012
- # @return [Boolean]
3013
- #
3014
- # source://thor//lib/thor/line_editor/basic.rb#32
3015
- def echo?; end
3016
-
3017
- # source://thor//lib/thor/line_editor/basic.rb#22
3018
- def get_input; end
3019
-
3020
- class << self
3021
- # @return [Boolean]
3022
- #
3023
- # source://thor//lib/thor/line_editor/basic.rb#6
3024
- def available?; end
3025
- end
3026
- end
3027
-
3028
- # source://thor//lib/thor/line_editor/readline.rb#3
3029
- class Thor::LineEditor::Readline < ::Thor::LineEditor::Basic
3030
- # source://thor//lib/thor/line_editor/readline.rb#13
3031
- def readline; end
3032
-
3033
- private
3034
-
3035
- # @return [Boolean]
3036
- #
3037
- # source://thor//lib/thor/line_editor/readline.rb#28
3038
- def add_to_history?; end
3039
-
3040
- # source://thor//lib/thor/line_editor/readline.rb#42
3041
- def completion_options; end
3042
-
3043
- # source://thor//lib/thor/line_editor/readline.rb#32
3044
- def completion_proc; end
3045
-
3046
- # @return [Boolean]
3047
- #
3048
- # source://thor//lib/thor/line_editor/readline.rb#46
3049
- def use_path_completion?; end
3050
-
3051
- class << self
3052
- # @return [Boolean]
3053
- #
3054
- # source://thor//lib/thor/line_editor/readline.rb#4
3055
- def available?; end
3056
- end
3057
- end
3058
-
3059
- # source://thor//lib/thor/line_editor/readline.rb#50
3060
- class Thor::LineEditor::Readline::PathCompletion
3061
- # @return [PathCompletion] a new instance of PathCompletion
3062
- #
3063
- # source://thor//lib/thor/line_editor/readline.rb#54
3064
- def initialize(text); end
3065
-
3066
- # source://thor//lib/thor/line_editor/readline.rb#58
3067
- def matches; end
3068
-
3069
- private
3070
-
3071
- # source://thor//lib/thor/line_editor/readline.rb#68
3072
- def absolute_matches; end
3073
-
3074
- # source://thor//lib/thor/line_editor/readline.rb#82
3075
- def base_path; end
3076
-
3077
- # source://thor//lib/thor/line_editor/readline.rb#78
3078
- def glob_pattern; end
3079
-
3080
- # source://thor//lib/thor/line_editor/readline.rb#64
3081
- def relative_matches; end
3082
-
3083
- # Returns the value of attribute text.
3084
- #
3085
- # source://thor//lib/thor/line_editor/readline.rb#51
3086
- def text; end
3087
- end
3088
-
3089
- # source://thor//lib/thor/error.rb#98
3090
- class Thor::MalformattedArgumentError < ::Thor::InvocationError; end
3091
-
3092
- # source://thor//lib/thor/nested_context.rb#2
3093
- class Thor::NestedContext
3094
- # @return [NestedContext] a new instance of NestedContext
3095
- #
3096
- # source://thor//lib/thor/nested_context.rb#3
3097
- def initialize; end
3098
-
3099
- # source://thor//lib/thor/nested_context.rb#7
3100
- def enter; end
3101
-
3102
- # @return [Boolean]
3103
- #
3104
- # source://thor//lib/thor/nested_context.rb#15
3105
- def entered?; end
3106
-
3107
- private
3108
-
3109
- # source://thor//lib/thor/nested_context.rb#25
3110
- def pop; end
3111
-
3112
- # source://thor//lib/thor/nested_context.rb#21
3113
- def push; end
3114
- end
3115
-
3116
- # source://thor//lib/thor/parser/option.rb#2
3117
- class Thor::Option < ::Thor::Argument
3118
- # @return [Option] a new instance of Option
3119
- #
3120
- # source://thor//lib/thor/parser/option.rb#7
3121
- def initialize(name, options = T.unsafe(nil)); end
3122
-
3123
- # Returns the value of attribute aliases.
3124
- #
3125
- # source://thor//lib/thor/parser/option.rb#3
3126
- def aliases; end
3127
-
3128
- # source://thor//lib/thor/parser/option.rb#99
3129
- def aliases_for_usage; end
3130
-
3131
- # source://thor//lib/thor/parser/option.rb#118
3132
- def array?; end
3133
-
3134
- # source://thor//lib/thor/parser/option.rb#118
3135
- def boolean?; end
3136
-
3137
- # Returns the value of attribute group.
3138
- #
3139
- # source://thor//lib/thor/parser/option.rb#3
3140
- def group; end
3141
-
3142
- # source://thor//lib/thor/parser/option.rb#118
3143
- def hash?; end
3144
-
3145
- # Returns the value of attribute hide.
3146
- #
3147
- # source://thor//lib/thor/parser/option.rb#3
3148
- def hide; end
3149
-
3150
- # source://thor//lib/thor/parser/option.rb#79
3151
- def human_name; end
3152
-
3153
- # Returns the value of attribute lazy_default.
3154
- #
3155
- # source://thor//lib/thor/parser/option.rb#3
3156
- def lazy_default; end
3157
-
3158
- # source://thor//lib/thor/parser/option.rb#118
3159
- def numeric?; end
3160
-
3161
- # Returns the value of attribute repeatable.
3162
- #
3163
- # source://thor//lib/thor/parser/option.rb#3
3164
- def repeatable; end
3165
-
3166
- # @return [Boolean]
3167
- #
3168
- # source://thor//lib/thor/parser/option.rb#107
3169
- def show_default?; end
3170
-
3171
- # source://thor//lib/thor/parser/option.rb#118
3172
- def string?; end
3173
-
3174
- # source://thor//lib/thor/parser/option.rb#75
3175
- def switch_name; end
3176
-
3177
- # source://thor//lib/thor/parser/option.rb#83
3178
- def usage(padding = T.unsafe(nil)); end
3179
-
3180
- protected
3181
-
3182
- # source://thor//lib/thor/parser/option.rb#168
3183
- def dasherize(str); end
3184
-
3185
- # @return [Boolean]
3186
- #
3187
- # source://thor//lib/thor/parser/option.rb#160
3188
- def dasherized?; end
3189
-
3190
- # source://thor//lib/thor/parser/option.rb#164
3191
- def undasherize(str); end
3192
-
3193
- # @raise [ArgumentError]
3194
- #
3195
- # source://thor//lib/thor/parser/option.rb#126
3196
- def validate!; end
3197
-
3198
- # source://thor//lib/thor/parser/option.rb#131
3199
- def validate_default_type!; end
3200
-
3201
- private
3202
-
3203
- # source://thor//lib/thor/parser/option.rb#174
3204
- def normalize_aliases(aliases); end
3205
-
3206
- class << self
3207
- # This parse quick options given as method_options. It makes several
3208
- # assumptions, but you can be more specific using the option method.
3209
- #
3210
- # parse :foo => "bar"
3211
- # #=> Option foo with default value bar
3212
- #
3213
- # parse [:foo, :baz] => "bar"
3214
- # #=> Option foo with default value bar and alias :baz
3215
- #
3216
- # parse :foo => :required
3217
- # #=> Required option foo without default value
3218
- #
3219
- # parse :foo => 2
3220
- # #=> Option foo with default value 2 and type numeric
3221
- #
3222
- # parse :foo => :numeric
3223
- # #=> Option foo without default value and type numeric
3224
- #
3225
- # parse :foo => true
3226
- # #=> Option foo with default value true and type boolean
3227
- #
3228
- # The valid types are :boolean, :numeric, :hash, :array and :string. If none
3229
- # is given a default type is assumed. This default type accepts arguments as
3230
- # string (--foo=value) or booleans (just --foo).
3231
- #
3232
- # By default all options are optional, unless :required is given.
3233
- #
3234
- # source://thor//lib/thor/parser/option.rb#45
3235
- def parse(key, value); end
3236
- end
3237
- end
3238
-
3239
- # source://thor//lib/thor/parser/option.rb#5
3240
- Thor::Option::VALID_TYPES = T.let(T.unsafe(nil), Array)
3241
-
3242
- # source://thor//lib/thor/parser/options.rb#2
3243
- class Thor::Options < ::Thor::Arguments
3244
- # Takes a hash of Thor::Option and a hash with defaults.
3245
- #
3246
- # If +stop_on_unknown+ is true, #parse will stop as soon as it encounters
3247
- # an unknown option or a regular argument.
3248
- #
3249
- # @return [Options] a new instance of Options
3250
- #
3251
- # source://thor//lib/thor/parser/options.rb#32
3252
- def initialize(hash_options = T.unsafe(nil), defaults = T.unsafe(nil), stop_on_unknown = T.unsafe(nil), disable_required_check = T.unsafe(nil), relations = T.unsafe(nil)); end
3253
-
3254
- # source://thor//lib/thor/parser/options.rb#156
3255
- def check_at_least_one!; end
3256
-
3257
- # source://thor//lib/thor/parser/options.rb#144
3258
- def check_exclusive!; end
3259
-
3260
- # @raise [UnknownArgumentError]
3261
- #
3262
- # source://thor//lib/thor/parser/options.rb#168
3263
- def check_unknown!; end
3264
-
3265
- # source://thor//lib/thor/parser/options.rb#89
3266
- def parse(args); end
3267
-
3268
- # source://thor//lib/thor/parser/options.rb#65
3269
- def peek; end
3270
-
3271
- # source://thor//lib/thor/parser/options.rb#61
3272
- def remaining; end
3273
-
3274
- # source://thor//lib/thor/parser/options.rb#79
3275
- def shift; end
3276
-
3277
- # source://thor//lib/thor/parser/options.rb#84
3278
- def unshift(arg, is_value: T.unsafe(nil)); end
3279
-
3280
- protected
3281
-
3282
- # source://thor//lib/thor/parser/options.rb#189
3283
- def assign_result!(option, result); end
3284
-
3285
- # Check if the current value in peek is a registered switch.
3286
- #
3287
- # Two booleans are returned. The first is true if the current value
3288
- # starts with a hyphen; the second is true if it is a registered switch.
3289
- #
3290
- # @return [Boolean]
3291
- #
3292
- # source://thor//lib/thor/parser/options.rb#203
3293
- def current_is_switch?; end
3294
-
3295
- # @return [Boolean]
3296
- #
3297
- # source://thor//lib/thor/parser/options.rb#215
3298
- def current_is_switch_formatted?; end
3299
-
3300
- # @return [Boolean]
3301
- #
3302
- # source://thor//lib/thor/parser/options.rb#225
3303
- def current_is_value?; end
3304
-
3305
- # Option names changes to swith name or human name
3306
- #
3307
- # source://thor//lib/thor/parser/options.rb#179
3308
- def names_to_switch_names(names = T.unsafe(nil)); end
3309
-
3310
- # Check if the given argument is actually a shortcut.
3311
- #
3312
- # source://thor//lib/thor/parser/options.rb#244
3313
- def normalize_switch(arg); end
3314
-
3315
- # Parse boolean values which can be given as --foo=true or --foo for true values, or
3316
- # --foo=false, --no-foo or --skip-foo for false values.
3317
- #
3318
- # source://thor//lib/thor/parser/options.rb#256
3319
- def parse_boolean(switch); end
3320
-
3321
- # Parse the value at the peek analyzing if it requires an input or not.
3322
- #
3323
- # source://thor//lib/thor/parser/options.rb#274
3324
- def parse_peek(switch, option); end
3325
-
3326
- # @return [Boolean]
3327
- #
3328
- # source://thor//lib/thor/parser/options.rb#248
3329
- def parsing_options?; end
3330
-
3331
- # @return [Boolean]
3332
- #
3333
- # source://thor//lib/thor/parser/options.rb#230
3334
- def switch?(arg); end
3335
-
3336
- # source://thor//lib/thor/parser/options.rb#234
3337
- def switch_option(arg); end
3338
-
3339
- class << self
3340
- # Receives a hash and makes it switches.
3341
- #
3342
- # source://thor//lib/thor/parser/options.rb#11
3343
- def to_switches(options); end
3344
- end
3345
- end
3346
-
3347
- # source://thor//lib/thor/parser/options.rb#5
3348
- Thor::Options::EQ_RE = T.let(T.unsafe(nil), Regexp)
3349
-
3350
- # source://thor//lib/thor/parser/options.rb#3
3351
- Thor::Options::LONG_RE = T.let(T.unsafe(nil), Regexp)
3352
-
3353
- # source://thor//lib/thor/parser/options.rb#8
3354
- Thor::Options::OPTS_END = T.let(T.unsafe(nil), String)
3355
-
3356
- # source://thor//lib/thor/parser/options.rb#7
3357
- Thor::Options::SHORT_NUM = T.let(T.unsafe(nil), Regexp)
3358
-
3359
- # source://thor//lib/thor/parser/options.rb#4
3360
- Thor::Options::SHORT_RE = T.let(T.unsafe(nil), Regexp)
3361
-
3362
- # Allow either -x -v or -xv style for single char args
3363
- #
3364
- # source://thor//lib/thor/parser/options.rb#6
3365
- Thor::Options::SHORT_SQ_RE = T.let(T.unsafe(nil), Regexp)
3366
-
3367
- # Adds a compatibility layer to your Thor classes which allows you to use
3368
- # rake package tasks. For example, to use rspec rake tasks, one can do:
3369
- #
3370
- # require 'thor/rake_compat'
3371
- # require 'rspec/core/rake_task'
3372
- #
3373
- # class Default < Thor
3374
- # include Thor::RakeCompat
3375
- #
3376
- # RSpec::Core::RakeTask.new(:spec) do |t|
3377
- # t.spec_opts = ['--options', './.rspec']
3378
- # t.spec_files = FileList['spec/**/*_spec.rb']
3379
- # end
3380
- # end
3381
- #
3382
- # source://thor//lib/thor/rake_compat.rb#20
3383
- module Thor::RakeCompat
3384
- include ::FileUtils::StreamUtils_
3385
- include ::FileUtils
3386
- include ::Rake::FileUtilsExt
3387
- include ::Rake::DSL
3388
-
3389
- class << self
3390
- # @private
3391
- #
3392
- # source://thor//lib/thor/rake_compat.rb#27
3393
- def included(base); end
3394
-
3395
- # source://thor//lib/thor/rake_compat.rb#23
3396
- def rake_classes; end
3397
- end
3398
- end
3399
-
3400
- # source://thor//lib/thor/error.rb#95
3401
- class Thor::RequiredArgumentMissingError < ::Thor::InvocationError; end
3402
-
3403
- # source://thor//lib/thor/util.rb#4
3404
- module Thor::Sandbox; end
3405
-
3406
- # source://thor//lib/thor/shell.rb#23
3407
- module Thor::Shell
3408
- # Add shell to initialize config values.
3409
- #
3410
- # ==== Configuration
3411
- # shell<Object>:: An instance of the shell to be used.
3412
- #
3413
- # ==== Examples
3414
- #
3415
- # class MyScript < Thor
3416
- # argument :first, :type => :numeric
3417
- # end
3418
- #
3419
- # MyScript.new [1.0], { :foo => :bar }, :shell => Thor::Shell::Basic.new
3420
- #
3421
- # source://thor//lib/thor/shell.rb#44
3422
- def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil)); end
3423
-
3424
- # source://thor//lib/thor/shell.rb#59
3425
- def ask(*args, &block); end
3426
-
3427
- # source://thor//lib/thor/shell.rb#59
3428
- def error(*args, &block); end
3429
-
3430
- # source://thor//lib/thor/shell.rb#59
3431
- def file_collision(*args, &block); end
3432
-
3433
- # source://thor//lib/thor/shell.rb#59
3434
- def no?(*args, &block); end
3435
-
3436
- # source://thor//lib/thor/shell.rb#59
3437
- def print_in_columns(*args, &block); end
3438
-
3439
- # source://thor//lib/thor/shell.rb#59
3440
- def print_table(*args, &block); end
3441
-
3442
- # source://thor//lib/thor/shell.rb#59
3443
- def print_wrapped(*args, &block); end
3444
-
3445
- # source://thor//lib/thor/shell.rb#59
3446
- def say(*args, &block); end
3447
-
3448
- # source://thor//lib/thor/shell.rb#59
3449
- def say_error(*args, &block); end
3450
-
3451
- # source://thor//lib/thor/shell.rb#59
3452
- def say_status(*args, &block); end
3453
-
3454
- # source://thor//lib/thor/shell.rb#59
3455
- def set_color(*args, &block); end
3456
-
3457
- # Holds the shell for the given Thor instance. If no shell is given,
3458
- # it gets a default shell from Thor::Base.shell.
3459
- #
3460
- # source://thor//lib/thor/shell.rb#52
3461
- def shell; end
3462
-
3463
- # Sets the attribute shell
3464
- #
3465
- # @param value the value to set the attribute shell to.
3466
- #
3467
- # source://thor//lib/thor/shell.rb#25
3468
- def shell=(_arg0); end
3469
-
3470
- # source://thor//lib/thor/shell.rb#59
3471
- def terminal_width(*args, &block); end
3472
-
3473
- # Yields the given block with padding.
3474
- #
3475
- # source://thor//lib/thor/shell.rb#66
3476
- def with_padding; end
3477
-
3478
- # source://thor//lib/thor/shell.rb#59
3479
- def yes?(*args, &block); end
3480
-
3481
- protected
3482
-
3483
- # Allow shell to be shared between invocations.
3484
- #
3485
- # source://thor//lib/thor/shell.rb#77
3486
- def _shared_configuration; end
3487
- end
3488
-
3489
- # source://thor//lib/thor/shell/basic.rb#7
3490
- class Thor::Shell::Basic
3491
- # Initialize base, mute and padding to nil.
3492
- #
3493
- # @return [Basic] a new instance of Basic
3494
- #
3495
- # source://thor//lib/thor/shell/basic.rb#13
3496
- def initialize; end
3497
-
3498
- # Asks something to the user and receives a response.
3499
- #
3500
- # If a default value is specified it will be presented to the user
3501
- # and allows them to select that value with an empty response. This
3502
- # option is ignored when limited answers are supplied.
3503
- #
3504
- # If asked to limit the correct responses, you can pass in an
3505
- # array of acceptable answers. If one of those is not supplied,
3506
- # they will be shown a message stating that one of those answers
3507
- # must be given and re-asked the question.
3508
- #
3509
- # If asking for sensitive information, the :echo option can be set
3510
- # to false to mask user input from $stdin.
3511
- #
3512
- # If the required input is a path, then set the path option to
3513
- # true. This will enable tab completion for file paths relative
3514
- # to the current working directory on systems that support
3515
- # Readline.
3516
- #
3517
- # ==== Example
3518
- # ask("What is your name?")
3519
- #
3520
- # ask("What is the planet furthest from the sun?", :default => "Neptune")
3521
- #
3522
- # ask("What is your favorite Neopolitan flavor?", :limited_to => ["strawberry", "chocolate", "vanilla"])
3523
- #
3524
- # ask("What is your password?", :echo => false)
3525
- #
3526
- # ask("Where should the file be saved?", :path => true)
3527
- #
3528
- # source://thor//lib/thor/shell/basic.rb#80
3529
- def ask(statement, *args); end
3530
-
3531
- # Returns the value of attribute base.
3532
- #
3533
- # source://thor//lib/thor/shell/basic.rb#8
3534
- def base; end
3535
-
3536
- # Sets the attribute base
3537
- #
3538
- # @param value the value to set the attribute base to.
3539
- #
3540
- # source://thor//lib/thor/shell/basic.rb#8
3541
- def base=(_arg0); end
3542
-
3543
- # Called if something goes wrong during the execution. This is used by Thor
3544
- # internally and should not be used inside your scripts. If something went
3545
- # wrong, you can always raise an exception. If you raise a Thor::Error, it
3546
- # will be rescued and wrapped in the method below.
3547
- #
3548
- # source://thor//lib/thor/shell/basic.rb#251
3549
- def error(statement); end
3550
-
3551
- # Deals with file collision and returns true if the file should be
3552
- # overwritten and false otherwise. If a block is given, it uses the block
3553
- # response as the content for the diff.
3554
- #
3555
- # ==== Parameters
3556
- # destination<String>:: the destination file to solve conflicts
3557
- # block<Proc>:: an optional block that returns the value to be used in diff and merge
3558
- #
3559
- # source://thor//lib/thor/shell/basic.rb#207
3560
- def file_collision(destination); end
3561
-
3562
- # Sets the output padding while executing a block and resets it.
3563
- #
3564
- # source://thor//lib/thor/shell/basic.rb#43
3565
- def indent(count = T.unsafe(nil)); end
3566
-
3567
- # Mute everything that's inside given block
3568
- #
3569
- # source://thor//lib/thor/shell/basic.rb#22
3570
- def mute; end
3571
-
3572
- # Check if base is muted
3573
- #
3574
- # @return [Boolean]
3575
- #
3576
- # source://thor//lib/thor/shell/basic.rb#31
3577
- def mute?; end
3578
-
3579
- # Asks the user a question and returns true if the user replies "n" or
3580
- # "no".
3581
- #
3582
- # @return [Boolean]
3583
- #
3584
- # source://thor//lib/thor/shell/basic.rb#156
3585
- def no?(statement, color = T.unsafe(nil)); end
3586
-
3587
- # Returns the value of attribute padding.
3588
- #
3589
- # source://thor//lib/thor/shell/basic.rb#9
3590
- def padding; end
3591
-
3592
- # Sets the output padding, not allowing less than zero values.
3593
- #
3594
- # source://thor//lib/thor/shell/basic.rb#37
3595
- def padding=(value); end
3596
-
3597
- # Prints values in columns
3598
- #
3599
- # ==== Parameters
3600
- # Array[String, String, ...]
3601
- #
3602
- # source://thor//lib/thor/shell/basic.rb#165
3603
- def print_in_columns(array); end
3604
-
3605
- # Prints a table.
3606
- #
3607
- # ==== Parameters
3608
- # Array[Array[String, String, ...]]
3609
- #
3610
- # ==== Options
3611
- # indent<Integer>:: Indent the first column by indent value.
3612
- # colwidth<Integer>:: Force the first column to colwidth spaces wide.
3613
- # borders<Boolean>:: Adds ascii borders.
3614
- #
3615
- # source://thor//lib/thor/shell/basic.rb#180
3616
- def print_table(array, options = T.unsafe(nil)); end
3617
-
3618
- # Prints a long string, word-wrapping the text to the current width of the
3619
- # terminal display. Ideal for printing heredocs.
3620
- #
3621
- # ==== Parameters
3622
- # String
3623
- #
3624
- # ==== Options
3625
- # indent<Integer>:: Indent each line of the printed paragraph by indent value.
3626
- #
3627
- # source://thor//lib/thor/shell/basic.rb#194
3628
- def print_wrapped(message, options = T.unsafe(nil)); end
3629
-
3630
- # Say (print) something to the user. If the sentence ends with a whitespace
3631
- # or tab character, a new line is not appended (print + flush). Otherwise
3632
- # are passed straight to puts (behavior got from Highline).
3633
- #
3634
- # ==== Example
3635
- # say("I know you knew that.")
3636
- #
3637
- # source://thor//lib/thor/shell/basic.rb#98
3638
- def say(message = T.unsafe(nil), color = T.unsafe(nil), force_new_line = T.unsafe(nil)); end
3639
-
3640
- # Say (print) an error to the user. If the sentence ends with a whitespace
3641
- # or tab character, a new line is not appended (print + flush). Otherwise
3642
- # are passed straight to puts (behavior got from Highline).
3643
- #
3644
- # ==== Example
3645
- # say_error("error: something went wrong")
3646
- #
3647
- # source://thor//lib/thor/shell/basic.rb#115
3648
- def say_error(message = T.unsafe(nil), color = T.unsafe(nil), force_new_line = T.unsafe(nil)); end
3649
-
3650
- # Say a status with the given color and appends the message. Since this
3651
- # method is used frequently by actions, it allows nil or false to be given
3652
- # in log_status, avoiding the message from being shown. If a Symbol is
3653
- # given in log_status, it's used as the color.
3654
- #
3655
- # source://thor//lib/thor/shell/basic.rb#130
3656
- def say_status(status, message, log_status = T.unsafe(nil)); end
3657
-
3658
- # Apply color to the given string with optional bold. Disabled in the
3659
- # Thor::Shell::Basic class.
3660
- #
3661
- # source://thor//lib/thor/shell/basic.rb#258
3662
- def set_color(string, *_arg1); end
3663
-
3664
- # Asks the user a question and returns true if the user replies "y" or
3665
- # "yes".
3666
- #
3667
- # @return [Boolean]
3668
- #
3669
- # source://thor//lib/thor/shell/basic.rb#149
3670
- def yes?(statement, color = T.unsafe(nil)); end
3671
-
3672
- protected
3673
-
3674
- # source://thor//lib/thor/shell/basic.rb#362
3675
- def answer_match(possibilities, answer, case_insensitive); end
3676
-
3677
- # source://thor//lib/thor/shell/basic.rb#349
3678
- def ask_filtered(statement, color, options); end
3679
-
3680
- # source://thor//lib/thor/shell/basic.rb#332
3681
- def ask_simply(statement, color, options); end
3682
-
3683
- # @return [Boolean]
3684
- #
3685
- # source://thor//lib/thor/shell/basic.rb#269
3686
- def can_display_colors?; end
3687
-
3688
- # source://thor//lib/thor/shell/basic.rb#296
3689
- def file_collision_help(block_given); end
3690
-
3691
- # source://thor//lib/thor/shell/basic.rb#383
3692
- def git_merge_tool; end
3693
-
3694
- # @return [Boolean]
3695
- #
3696
- # source://thor//lib/thor/shell/basic.rb#286
3697
- def is?(value); end
3698
-
3699
- # source://thor//lib/thor/shell/basic.rb#273
3700
- def lookup_color(color); end
3701
-
3702
- # source://thor//lib/thor/shell/basic.rb#370
3703
- def merge(destination, content); end
3704
-
3705
- # source://thor//lib/thor/shell/basic.rb#379
3706
- def merge_tool; end
3707
-
3708
- # source://thor//lib/thor/shell/basic.rb#264
3709
- def prepare_message(message, *color); end
3710
-
3711
- # @return [Boolean]
3712
- #
3713
- # source://thor//lib/thor/shell/basic.rb#324
3714
- def quiet?; end
3715
-
3716
- # source://thor//lib/thor/shell/basic.rb#313
3717
- def show_diff(destination, content); end
3718
-
3719
- # source://thor//lib/thor/shell/basic.rb#282
3720
- def stderr; end
3721
-
3722
- # source://thor//lib/thor/shell/basic.rb#278
3723
- def stdout; end
3724
-
3725
- # @return [Boolean]
3726
- #
3727
- # source://thor//lib/thor/shell/basic.rb#328
3728
- def unix?; end
3729
- end
3730
-
3731
- # Inherit from Thor::Shell::Basic and add set_color behavior. Check
3732
- # Thor::Shell::Basic to see all available methods.
3733
- #
3734
- # source://thor//lib/thor/shell/color.rb#9
3735
- class Thor::Shell::Color < ::Thor::Shell::Basic
3736
- include ::LCSDiff
3737
-
3738
- # Set color by using a string or one of the defined constants. If a third
3739
- # option is set to true, it also adds bold to the string. This is based
3740
- # on Highline implementation and it automatically appends CLEAR to the end
3741
- # of the returned String.
3742
- #
3743
- # Pass foreground, background and bold options to this method as
3744
- # symbols.
3745
- #
3746
- # Example:
3747
- #
3748
- # set_color "Hi!", :red, :on_white, :bold
3749
- #
3750
- # The available colors are:
3751
- #
3752
- # :bold
3753
- # :black
3754
- # :red
3755
- # :green
3756
- # :yellow
3757
- # :blue
3758
- # :magenta
3759
- # :cyan
3760
- # :white
3761
- # :on_black
3762
- # :on_red
3763
- # :on_green
3764
- # :on_yellow
3765
- # :on_blue
3766
- # :on_magenta
3767
- # :on_cyan
3768
- # :on_white
3769
- #
3770
- # source://thor//lib/thor/shell/color.rb#82
3771
- def set_color(string, *colors); end
3772
-
3773
- protected
3774
-
3775
- # @return [Boolean]
3776
- #
3777
- # source://thor//lib/thor/shell/color.rb#110
3778
- def are_colors_disabled?; end
3779
-
3780
- # @return [Boolean]
3781
- #
3782
- # source://thor//lib/thor/shell/color.rb#106
3783
- def are_colors_supported?; end
3784
-
3785
- # @return [Boolean]
3786
- #
3787
- # source://thor//lib/thor/shell/color.rb#102
3788
- def can_display_colors?; end
3789
- end
3790
-
3791
- # Set the terminal's foreground ANSI color to black.
3792
- #
3793
- # source://thor//lib/thor/shell/color.rb#18
3794
- Thor::Shell::Color::BLACK = T.let(T.unsafe(nil), String)
3795
-
3796
- # Set the terminal's foreground ANSI color to blue.
3797
- #
3798
- # source://thor//lib/thor/shell/color.rb#26
3799
- Thor::Shell::Color::BLUE = T.let(T.unsafe(nil), String)
3800
-
3801
- # The start of an ANSI bold sequence.
3802
- #
3803
- # source://thor//lib/thor/shell/color.rb#15
3804
- Thor::Shell::Color::BOLD = T.let(T.unsafe(nil), String)
3805
-
3806
- # Embed in a String to clear all previous ANSI sequences.
3807
- #
3808
- # source://thor//lib/thor/shell/color.rb#13
3809
- Thor::Shell::Color::CLEAR = T.let(T.unsafe(nil), String)
3810
-
3811
- # Set the terminal's foreground ANSI color to cyan.
3812
- #
3813
- # source://thor//lib/thor/shell/color.rb#30
3814
- Thor::Shell::Color::CYAN = T.let(T.unsafe(nil), String)
3815
-
3816
- # Set the terminal's foreground ANSI color to green.
3817
- #
3818
- # source://thor//lib/thor/shell/color.rb#22
3819
- Thor::Shell::Color::GREEN = T.let(T.unsafe(nil), String)
3820
-
3821
- # Set the terminal's foreground ANSI color to magenta.
3822
- #
3823
- # source://thor//lib/thor/shell/color.rb#28
3824
- Thor::Shell::Color::MAGENTA = T.let(T.unsafe(nil), String)
3825
-
3826
- # Set the terminal's background ANSI color to black.
3827
- #
3828
- # source://thor//lib/thor/shell/color.rb#35
3829
- Thor::Shell::Color::ON_BLACK = T.let(T.unsafe(nil), String)
3830
-
3831
- # Set the terminal's background ANSI color to blue.
3832
- #
3833
- # source://thor//lib/thor/shell/color.rb#43
3834
- Thor::Shell::Color::ON_BLUE = T.let(T.unsafe(nil), String)
3835
-
3836
- # Set the terminal's background ANSI color to cyan.
3837
- #
3838
- # source://thor//lib/thor/shell/color.rb#47
3839
- Thor::Shell::Color::ON_CYAN = T.let(T.unsafe(nil), String)
3840
-
3841
- # Set the terminal's background ANSI color to green.
3842
- #
3843
- # source://thor//lib/thor/shell/color.rb#39
3844
- Thor::Shell::Color::ON_GREEN = T.let(T.unsafe(nil), String)
3845
-
3846
- # Set the terminal's background ANSI color to magenta.
3847
- #
3848
- # source://thor//lib/thor/shell/color.rb#45
3849
- Thor::Shell::Color::ON_MAGENTA = T.let(T.unsafe(nil), String)
3850
-
3851
- # Set the terminal's background ANSI color to red.
3852
- #
3853
- # source://thor//lib/thor/shell/color.rb#37
3854
- Thor::Shell::Color::ON_RED = T.let(T.unsafe(nil), String)
3855
-
3856
- # Set the terminal's background ANSI color to white.
3857
- #
3858
- # source://thor//lib/thor/shell/color.rb#49
3859
- Thor::Shell::Color::ON_WHITE = T.let(T.unsafe(nil), String)
3860
-
3861
- # Set the terminal's background ANSI color to yellow.
3862
- #
3863
- # source://thor//lib/thor/shell/color.rb#41
3864
- Thor::Shell::Color::ON_YELLOW = T.let(T.unsafe(nil), String)
3865
-
3866
- # Set the terminal's foreground ANSI color to red.
3867
- #
3868
- # source://thor//lib/thor/shell/color.rb#20
3869
- Thor::Shell::Color::RED = T.let(T.unsafe(nil), String)
3870
-
3871
- # Set the terminal's foreground ANSI color to white.
3872
- #
3873
- # source://thor//lib/thor/shell/color.rb#32
3874
- Thor::Shell::Color::WHITE = T.let(T.unsafe(nil), String)
3875
-
3876
- # Set the terminal's foreground ANSI color to yellow.
3877
- #
3878
- # source://thor//lib/thor/shell/color.rb#24
3879
- Thor::Shell::Color::YELLOW = T.let(T.unsafe(nil), String)
3880
-
3881
- # source://thor//lib/thor/shell/column_printer.rb#5
3882
- class Thor::Shell::ColumnPrinter
3883
- # @return [ColumnPrinter] a new instance of ColumnPrinter
3884
- #
3885
- # source://thor//lib/thor/shell/column_printer.rb#8
3886
- def initialize(stdout, options = T.unsafe(nil)); end
3887
-
3888
- # Returns the value of attribute options.
3889
- #
3890
- # source://thor//lib/thor/shell/column_printer.rb#6
3891
- def options; end
3892
-
3893
- # source://thor//lib/thor/shell/column_printer.rb#14
3894
- def print(array); end
3895
-
3896
- # Returns the value of attribute stdout.
3897
- #
3898
- # source://thor//lib/thor/shell/column_printer.rb#6
3899
- def stdout; end
3900
- end
3901
-
3902
- # Inherit from Thor::Shell::Basic and add set_color behavior. Check
3903
- # Thor::Shell::Basic to see all available methods.
3904
- #
3905
- # source://thor//lib/thor/shell/html.rb#9
3906
- class Thor::Shell::HTML < ::Thor::Shell::Basic
3907
- include ::LCSDiff
3908
-
3909
- # Ask something to the user and receives a response.
3910
- #
3911
- # ==== Example
3912
- # ask("What is your name?")
3913
- #
3914
- # TODO: Implement #ask for Thor::Shell::HTML
3915
- #
3916
- # @raise [NotImplementedError]
3917
- #
3918
- # source://thor//lib/thor/shell/html.rb#73
3919
- def ask(statement, color = T.unsafe(nil)); end
3920
-
3921
- # Set color by using a string or one of the defined constants. If a third
3922
- # option is set to true, it also adds bold to the string. This is based
3923
- # on Highline implementation and it automatically appends CLEAR to the end
3924
- # of the returned String.
3925
- #
3926
- # source://thor//lib/thor/shell/html.rb#54
3927
- def set_color(string, *colors); end
3928
-
3929
- protected
3930
-
3931
- # @return [Boolean]
3932
- #
3933
- # source://thor//lib/thor/shell/html.rb#79
3934
- def can_display_colors?; end
3935
- end
3936
-
3937
- # Set the terminal's foreground HTML color to black.
3938
- #
3939
- # source://thor//lib/thor/shell/html.rb#16
3940
- Thor::Shell::HTML::BLACK = T.let(T.unsafe(nil), String)
3941
-
3942
- # Set the terminal's foreground HTML color to blue.
3943
- #
3944
- # source://thor//lib/thor/shell/html.rb#24
3945
- Thor::Shell::HTML::BLUE = T.let(T.unsafe(nil), String)
3946
-
3947
- # The start of an HTML bold sequence.
3948
- #
3949
- # source://thor//lib/thor/shell/html.rb#13
3950
- Thor::Shell::HTML::BOLD = T.let(T.unsafe(nil), String)
3951
-
3952
- # Set the terminal's foreground HTML color to cyan.
3953
- #
3954
- # source://thor//lib/thor/shell/html.rb#28
3955
- Thor::Shell::HTML::CYAN = T.let(T.unsafe(nil), String)
3956
-
3957
- # Set the terminal's foreground HTML color to green.
3958
- #
3959
- # source://thor//lib/thor/shell/html.rb#20
3960
- Thor::Shell::HTML::GREEN = T.let(T.unsafe(nil), String)
3961
-
3962
- # Set the terminal's foreground HTML color to magenta.
3963
- #
3964
- # source://thor//lib/thor/shell/html.rb#26
3965
- Thor::Shell::HTML::MAGENTA = T.let(T.unsafe(nil), String)
3966
-
3967
- # Set the terminal's background HTML color to black.
3968
- #
3969
- # source://thor//lib/thor/shell/html.rb#33
3970
- Thor::Shell::HTML::ON_BLACK = T.let(T.unsafe(nil), String)
3971
-
3972
- # Set the terminal's background HTML color to blue.
3973
- #
3974
- # source://thor//lib/thor/shell/html.rb#41
3975
- Thor::Shell::HTML::ON_BLUE = T.let(T.unsafe(nil), String)
3976
-
3977
- # Set the terminal's background HTML color to cyan.
3978
- #
3979
- # source://thor//lib/thor/shell/html.rb#45
3980
- Thor::Shell::HTML::ON_CYAN = T.let(T.unsafe(nil), String)
3981
-
3982
- # Set the terminal's background HTML color to green.
3983
- #
3984
- # source://thor//lib/thor/shell/html.rb#37
3985
- Thor::Shell::HTML::ON_GREEN = T.let(T.unsafe(nil), String)
3986
-
3987
- # Set the terminal's background HTML color to magenta.
3988
- #
3989
- # source://thor//lib/thor/shell/html.rb#43
3990
- Thor::Shell::HTML::ON_MAGENTA = T.let(T.unsafe(nil), String)
3991
-
3992
- # Set the terminal's background HTML color to red.
3993
- #
3994
- # source://thor//lib/thor/shell/html.rb#35
3995
- Thor::Shell::HTML::ON_RED = T.let(T.unsafe(nil), String)
3996
-
3997
- # Set the terminal's background HTML color to white.
3998
- #
3999
- # source://thor//lib/thor/shell/html.rb#47
4000
- Thor::Shell::HTML::ON_WHITE = T.let(T.unsafe(nil), String)
4001
-
4002
- # Set the terminal's background HTML color to yellow.
4003
- #
4004
- # source://thor//lib/thor/shell/html.rb#39
4005
- Thor::Shell::HTML::ON_YELLOW = T.let(T.unsafe(nil), String)
4006
-
4007
- # Set the terminal's foreground HTML color to red.
4008
- #
4009
- # source://thor//lib/thor/shell/html.rb#18
4010
- Thor::Shell::HTML::RED = T.let(T.unsafe(nil), String)
4011
-
4012
- # Set the terminal's foreground HTML color to white.
4013
- #
4014
- # source://thor//lib/thor/shell/html.rb#30
4015
- Thor::Shell::HTML::WHITE = T.let(T.unsafe(nil), String)
4016
-
4017
- # Set the terminal's foreground HTML color to yellow.
4018
- #
4019
- # source://thor//lib/thor/shell/html.rb#22
4020
- Thor::Shell::HTML::YELLOW = T.let(T.unsafe(nil), String)
4021
-
4022
- # source://thor//lib/thor/shell.rb#24
4023
- Thor::Shell::SHELL_DELEGATED_METHODS = T.let(T.unsafe(nil), Array)
4024
-
4025
- # source://thor//lib/thor/shell/table_printer.rb#6
4026
- class Thor::Shell::TablePrinter < ::Thor::Shell::ColumnPrinter
4027
- # @return [TablePrinter] a new instance of TablePrinter
4028
- #
4029
- # source://thor//lib/thor/shell/table_printer.rb#9
4030
- def initialize(stdout, options = T.unsafe(nil)); end
4031
-
4032
- # source://thor//lib/thor/shell/table_printer.rb#18
4033
- def print(array); end
4034
-
4035
- private
4036
-
4037
- # source://thor//lib/thor/shell/table_printer.rb#72
4038
- def format_cell(column, row_size, index); end
4039
-
4040
- # source://thor//lib/thor/shell/table_printer.rb#113
4041
- def indentation; end
4042
-
4043
- # source://thor//lib/thor/shell/table_printer.rb#47
4044
- def prepare(array); end
4045
-
4046
- # source://thor//lib/thor/shell/table_printer.rb#96
4047
- def print_border_separator; end
4048
-
4049
- # source://thor//lib/thor/shell/table_printer.rb#103
4050
- def truncate(string); end
4051
- end
4052
-
4053
- # source://thor//lib/thor/shell/table_printer.rb#7
4054
- Thor::Shell::TablePrinter::BORDER_SEPARATOR = T.let(T.unsafe(nil), Symbol)
4055
-
4056
- # source://thor//lib/thor/shell/terminal.rb#3
4057
- module Thor::Shell::Terminal
4058
- class << self
4059
- # source://thor//lib/thor/shell/terminal.rb#9
4060
- def terminal_width; end
4061
-
4062
- # @return [Boolean]
4063
- #
4064
- # source://thor//lib/thor/shell/terminal.rb#20
4065
- def unix?; end
4066
-
4067
- private
4068
-
4069
- # Calculate the dynamic width of the terminal
4070
- #
4071
- # source://thor//lib/thor/shell/terminal.rb#27
4072
- def dynamic_width; end
4073
-
4074
- # source://thor//lib/thor/shell/terminal.rb#31
4075
- def dynamic_width_stty; end
4076
-
4077
- # source://thor//lib/thor/shell/terminal.rb#35
4078
- def dynamic_width_tput; end
4079
- end
4080
- end
4081
-
4082
- # source://thor//lib/thor/shell/terminal.rb#4
4083
- Thor::Shell::Terminal::DEFAULT_TERMINAL_WIDTH = T.let(T.unsafe(nil), Integer)
4084
-
4085
- # source://thor//lib/thor/shell/wrapped_printer.rb#6
4086
- class Thor::Shell::WrappedPrinter < ::Thor::Shell::ColumnPrinter
4087
- # source://thor//lib/thor/shell/wrapped_printer.rb#7
4088
- def print(message); end
4089
- end
4090
-
4091
- # source://thor//lib/thor/base.rb#23
4092
- Thor::TEMPLATE_EXTNAME = T.let(T.unsafe(nil), String)
4093
-
4094
- # Thor methods that should not be overwritten by the user.
4095
- #
4096
- # source://thor//lib/thor/base.rb#20
4097
- Thor::THOR_RESERVED_WORDS = T.let(T.unsafe(nil), Array)
4098
-
4099
- # source://thor//lib/thor/command.rb#126
4100
- Thor::Task = Thor::Command
4101
-
4102
- # Raised when a command was not found.
4103
- #
4104
- # source://thor//lib/thor/error.rb#24
4105
- class Thor::UndefinedCommandError < ::Thor::Error
4106
- include ::Thor::Correctable
4107
-
4108
- # @return [UndefinedCommandError] a new instance of UndefinedCommandError
4109
- #
4110
- # source://thor//lib/thor/error.rb#43
4111
- def initialize(command, all_commands, namespace); end
4112
-
4113
- # Returns the value of attribute all_commands.
4114
- #
4115
- # source://thor//lib/thor/error.rb#41
4116
- def all_commands; end
4117
-
4118
- # Returns the value of attribute command.
4119
- #
4120
- # source://thor//lib/thor/error.rb#41
4121
- def command; end
4122
- end
4123
-
4124
- # source://thor//lib/thor/error.rb#25
4125
- class Thor::UndefinedCommandError::SpellChecker
4126
- # @return [SpellChecker] a new instance of SpellChecker
4127
- #
4128
- # source://thor//lib/thor/error.rb#28
4129
- def initialize(error); end
4130
-
4131
- # source://thor//lib/thor/error.rb#32
4132
- def corrections; end
4133
-
4134
- # Returns the value of attribute error.
4135
- #
4136
- # source://thor//lib/thor/error.rb#26
4137
- def error; end
4138
-
4139
- # source://thor//lib/thor/error.rb#36
4140
- def spell_checker; end
4141
- end
4142
-
4143
- # source://thor//lib/thor/error.rb#55
4144
- Thor::UndefinedTaskError = Thor::UndefinedCommandError
4145
-
4146
- # source://thor//lib/thor/error.rb#65
4147
- class Thor::UnknownArgumentError < ::Thor::Error
4148
- include ::Thor::Correctable
4149
-
4150
- # @return [UnknownArgumentError] a new instance of UnknownArgumentError
4151
- #
4152
- # source://thor//lib/thor/error.rb#85
4153
- def initialize(switches, unknown); end
4154
-
4155
- # Returns the value of attribute switches.
4156
- #
4157
- # source://thor//lib/thor/error.rb#83
4158
- def switches; end
4159
-
4160
- # Returns the value of attribute unknown.
4161
- #
4162
- # source://thor//lib/thor/error.rb#83
4163
- def unknown; end
4164
- end
4165
-
4166
- # source://thor//lib/thor/error.rb#66
4167
- class Thor::UnknownArgumentError::SpellChecker
4168
- # @return [SpellChecker] a new instance of SpellChecker
4169
- #
4170
- # source://thor//lib/thor/error.rb#69
4171
- def initialize(error); end
4172
-
4173
- # source://thor//lib/thor/error.rb#73
4174
- def corrections; end
4175
-
4176
- # Returns the value of attribute error.
4177
- #
4178
- # source://thor//lib/thor/error.rb#67
4179
- def error; end
4180
-
4181
- # source://thor//lib/thor/error.rb#78
4182
- def spell_checker; end
4183
- end
4184
-
4185
- # This module holds several utilities:
4186
- #
4187
- # 1) Methods to convert thor namespaces to constants and vice-versa.
4188
- #
4189
- # Thor::Util.namespace_from_thor_class(Foo::Bar::Baz) #=> "foo:bar:baz"
4190
- #
4191
- # 2) Loading thor files and sandboxing:
4192
- #
4193
- # Thor::Util.load_thorfile("~/.thor/foo")
4194
- #
4195
- # source://thor//lib/thor/util.rb#17
4196
- module Thor::Util
4197
- class << self
4198
- # Receives a string and convert it to camel case. camel_case returns CamelCase.
4199
- #
4200
- # ==== Parameters
4201
- # String
4202
- #
4203
- # ==== Returns
4204
- # String
4205
- #
4206
- # source://thor//lib/thor/util.rb#104
4207
- def camel_case(str); end
4208
-
4209
- # Returns a string that has had any glob characters escaped.
4210
- # The glob characters are `* ? { } [ ]`.
4211
- #
4212
- # ==== Examples
4213
- #
4214
- # Thor::Util.escape_globs('[apps]') # => '\[apps\]'
4215
- #
4216
- # ==== Parameters
4217
- # String
4218
- #
4219
- # ==== Returns
4220
- # String
4221
- #
4222
- # source://thor//lib/thor/util.rb#264
4223
- def escape_globs(path); end
4224
-
4225
- # Returns a string that has had any HTML characters escaped.
4226
- #
4227
- # ==== Examples
4228
- #
4229
- # Thor::Util.escape_html('<div>') # => "&lt;div&gt;"
4230
- #
4231
- # ==== Parameters
4232
- # String
4233
- #
4234
- # ==== Returns
4235
- # String
4236
- #
4237
- # source://thor//lib/thor/util.rb#280
4238
- def escape_html(string); end
4239
-
4240
- # Receives a namespace and search for it in the Thor::Base subclasses.
4241
- #
4242
- # ==== Parameters
4243
- # namespace<String>:: The namespace to search for.
4244
- #
4245
- # source://thor//lib/thor/util.rb#24
4246
- def find_by_namespace(namespace); end
4247
-
4248
- # Receives a namespace and tries to retrieve a Thor or Thor::Group class
4249
- # from it. It first searches for a class using the all the given namespace,
4250
- # if it's not found, removes the highest entry and searches for the class
4251
- # again. If found, returns the highest entry as the class name.
4252
- #
4253
- # ==== Examples
4254
- #
4255
- # class Foo::Bar < Thor
4256
- # def baz
4257
- # end
4258
- # end
4259
- #
4260
- # class Baz::Foo < Thor::Group
4261
- # end
4262
- #
4263
- # Thor::Util.namespace_to_thor_class("foo:bar") #=> Foo::Bar, nil # will invoke default command
4264
- # Thor::Util.namespace_to_thor_class("baz:foo") #=> Baz::Foo, nil
4265
- # Thor::Util.namespace_to_thor_class("foo:bar:baz") #=> Foo::Bar, "baz"
4266
- #
4267
- # ==== Parameters
4268
- # namespace<String>
4269
- #
4270
- # source://thor//lib/thor/util.rb#131
4271
- def find_class_and_command_by_namespace(namespace, fallback = T.unsafe(nil)); end
4272
-
4273
- # Receives a namespace and tries to retrieve a Thor or Thor::Group class
4274
- # from it. It first searches for a class using the all the given namespace,
4275
- # if it's not found, removes the highest entry and searches for the class
4276
- # again. If found, returns the highest entry as the class name.
4277
- #
4278
- # ==== Examples
4279
- #
4280
- # class Foo::Bar < Thor
4281
- # def baz
4282
- # end
4283
- # end
4284
- #
4285
- # class Baz::Foo < Thor::Group
4286
- # end
4287
- #
4288
- # Thor::Util.namespace_to_thor_class("foo:bar") #=> Foo::Bar, nil # will invoke default command
4289
- # Thor::Util.namespace_to_thor_class("baz:foo") #=> Baz::Foo, nil
4290
- # Thor::Util.namespace_to_thor_class("foo:bar:baz") #=> Foo::Bar, "baz"
4291
- #
4292
- # ==== Parameters
4293
- # namespace<String>
4294
- #
4295
- # source://thor//lib/thor/util.rb#131
4296
- def find_class_and_task_by_namespace(namespace, fallback = T.unsafe(nil)); end
4297
-
4298
- # Where to look for Thor files.
4299
- #
4300
- # source://thor//lib/thor/util.rb#213
4301
- def globs_for(path); end
4302
-
4303
- # Receives a path and load the thor file in the path. The file is evaluated
4304
- # inside the sandbox to avoid namespacing conflicts.
4305
- #
4306
- # source://thor//lib/thor/util.rb#153
4307
- def load_thorfile(path, content = T.unsafe(nil), debug = T.unsafe(nil)); end
4308
-
4309
- # Receives a constant and converts it to a Thor namespace. Since Thor
4310
- # commands can be added to a sandbox, this method is also responsible for
4311
- # removing the sandbox namespace.
4312
- #
4313
- # This method should not be used in general because it's used to deal with
4314
- # older versions of Thor. On current versions, if you need to get the
4315
- # namespace from a class, just call namespace on it.
4316
- #
4317
- # ==== Parameters
4318
- # constant<Object>:: The constant to be converted to the thor path.
4319
- #
4320
- # ==== Returns
4321
- # String:: If we receive Foo::Bar::Baz it returns "foo:bar:baz"
4322
- #
4323
- # source://thor//lib/thor/util.rb#43
4324
- def namespace_from_thor_class(constant); end
4325
-
4326
- # Given the contents, evaluate it inside the sandbox and returns the
4327
- # namespaces defined in the sandbox.
4328
- #
4329
- # ==== Parameters
4330
- # contents<String>
4331
- #
4332
- # ==== Returns
4333
- # Array[Object]
4334
- #
4335
- # source://thor//lib/thor/util.rb#58
4336
- def namespaces_in_content(contents, file = T.unsafe(nil)); end
4337
-
4338
- # Return the path to the ruby interpreter taking into account multiple
4339
- # installations and windows extensions.
4340
- #
4341
- # source://thor//lib/thor/util.rb#221
4342
- def ruby_command; end
4343
-
4344
- # Receives a string and convert it to snake case. SnakeCase returns snake_case.
4345
- #
4346
- # ==== Parameters
4347
- # String
4348
- #
4349
- # ==== Returns
4350
- # String
4351
- #
4352
- # source://thor//lib/thor/util.rb#90
4353
- def snake_case(str); end
4354
-
4355
- # Returns the thor classes declared inside the given class.
4356
- #
4357
- # source://thor//lib/thor/util.rb#74
4358
- def thor_classes_in(klass); end
4359
-
4360
- # Returns the root where thor files are located, depending on the OS.
4361
- #
4362
- # source://thor//lib/thor/util.rb#192
4363
- def thor_root; end
4364
-
4365
- # Returns the files in the thor root. On Windows thor_root will be something
4366
- # like this:
4367
- #
4368
- # C:\Documents and Settings\james\.thor
4369
- #
4370
- # If we don't #gsub the \ character, Dir.glob will fail.
4371
- #
4372
- # source://thor//lib/thor/util.rb#203
4373
- def thor_root_glob; end
4374
-
4375
- # source://thor//lib/thor/util.rb#168
4376
- def user_home; end
4377
- end
4378
- end