eac_tools 0.117.5 → 0.118.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +34 -39
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/eac_ruby_base0/.gitrepo +7 -0
  5. data/sub/eac_ruby_base0/eac_ruby_base0.gemspec +22 -0
  6. data/sub/eac_ruby_base0/lib/eac_ruby_base0/application.rb +79 -0
  7. data/sub/eac_ruby_base0/lib/eac_ruby_base0/application_xdg.rb +32 -0
  8. data/sub/eac_ruby_base0/lib/eac_ruby_base0/error_presenter.rb +53 -0
  9. data/sub/eac_ruby_base0/lib/eac_ruby_base0/jobs_runner.rb +28 -0
  10. data/sub/eac_ruby_base0/lib/eac_ruby_base0/patches/class/jobs_runner.rb +7 -0
  11. data/sub/eac_ruby_base0/lib/eac_ruby_base0/rspec/setup.rb +12 -0
  12. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner/contexts.rb +47 -0
  13. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner/prepend.rb +33 -0
  14. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner.rb +30 -0
  15. data/sub/eac_ruby_base0/lib/eac_ruby_base0/version.rb +5 -0
  16. data/sub/{eac_cli/lib/eac_cli.rb → eac_ruby_base0/lib/eac_ruby_base0.rb} +3 -1
  17. data/sub/{eac_cli → eac_ruby_base0}/spec/spec_helper.rb +1 -1
  18. metadata +20 -392
  19. data/sub/eac_cli/.gitrepo +0 -7
  20. data/sub/eac_cli/eac_cli.gemspec +0 -25
  21. data/sub/eac_cli/lib/eac_cli/config/entry/options.rb +0 -55
  22. data/sub/eac_cli/lib/eac_cli/config/entry/undefined.rb +0 -26
  23. data/sub/eac_cli/lib/eac_cli/config/entry.rb +0 -55
  24. data/sub/eac_cli/lib/eac_cli/config.rb +0 -13
  25. data/sub/eac_cli/lib/eac_cli/default_runner.rb +0 -12
  26. data/sub/eac_cli/lib/eac_cli/definition/alternative.rb +0 -101
  27. data/sub/eac_cli/lib/eac_cli/definition/argument_option.rb +0 -19
  28. data/sub/eac_cli/lib/eac_cli/definition/boolean_option.rb +0 -25
  29. data/sub/eac_cli/lib/eac_cli/definition/error.rb +0 -8
  30. data/sub/eac_cli/lib/eac_cli/definition/option/initialize_args_parser.rb +0 -48
  31. data/sub/eac_cli/lib/eac_cli/definition/option.rb +0 -68
  32. data/sub/eac_cli/lib/eac_cli/definition/option_or_positional.rb +0 -41
  33. data/sub/eac_cli/lib/eac_cli/definition/positional.rb +0 -50
  34. data/sub/eac_cli/lib/eac_cli/definition.rb +0 -102
  35. data/sub/eac_cli/lib/eac_cli/enum.rb +0 -44
  36. data/sub/eac_cli/lib/eac_cli/old_configs/entry_reader.rb +0 -76
  37. data/sub/eac_cli/lib/eac_cli/old_configs/password_entry_reader.rb +0 -14
  38. data/sub/eac_cli/lib/eac_cli/old_configs/read_entry_options.rb +0 -42
  39. data/sub/eac_cli/lib/eac_cli/old_configs/store_passwords_entry_reader.rb +0 -23
  40. data/sub/eac_cli/lib/eac_cli/old_configs.rb +0 -30
  41. data/sub/eac_cli/lib/eac_cli/parser/alternative/any_options.rb +0 -17
  42. data/sub/eac_cli/lib/eac_cli/parser/alternative/argv.rb +0 -19
  43. data/sub/eac_cli/lib/eac_cli/parser/alternative/double_dash.rb +0 -24
  44. data/sub/eac_cli/lib/eac_cli/parser/alternative/long_options.rb +0 -37
  45. data/sub/eac_cli/lib/eac_cli/parser/alternative/option_argument.rb +0 -29
  46. data/sub/eac_cli/lib/eac_cli/parser/alternative/options.rb +0 -29
  47. data/sub/eac_cli/lib/eac_cli/parser/alternative/positionals.rb +0 -30
  48. data/sub/eac_cli/lib/eac_cli/parser/alternative/short_options.rb +0 -54
  49. data/sub/eac_cli/lib/eac_cli/parser/alternative.rb +0 -99
  50. data/sub/eac_cli/lib/eac_cli/parser/collector.rb +0 -52
  51. data/sub/eac_cli/lib/eac_cli/parser/error.rb +0 -13
  52. data/sub/eac_cli/lib/eac_cli/parser.rb +0 -31
  53. data/sub/eac_cli/lib/eac_cli/patches/object/runner_with.rb +0 -23
  54. data/sub/eac_cli/lib/eac_cli/rspec/setup.rb +0 -41
  55. data/sub/eac_cli/lib/eac_cli/runner/after_class_methods.rb +0 -34
  56. data/sub/eac_cli/lib/eac_cli/runner/class_runner.rb +0 -32
  57. data/sub/eac_cli/lib/eac_cli/runner/context.rb +0 -57
  58. data/sub/eac_cli/lib/eac_cli/runner/context_responders/base.rb +0 -22
  59. data/sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb +0 -24
  60. data/sub/eac_cli/lib/eac_cli/runner/context_responders/runner.rb +0 -17
  61. data/sub/eac_cli/lib/eac_cli/runner/context_responders/runner_missing_method.rb +0 -29
  62. data/sub/eac_cli/lib/eac_cli/runner/context_responders/set.rb +0 -41
  63. data/sub/eac_cli/lib/eac_cli/runner/exit.rb +0 -14
  64. data/sub/eac_cli/lib/eac_cli/runner/for_context.rb +0 -35
  65. data/sub/eac_cli/lib/eac_cli/runner/instance_methods.rb +0 -45
  66. data/sub/eac_cli/lib/eac_cli/runner.rb +0 -46
  67. data/sub/eac_cli/lib/eac_cli/runner_with/confirmation/input_result.rb +0 -60
  68. data/sub/eac_cli/lib/eac_cli/runner_with/confirmation.rb +0 -63
  69. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder/alternative.rb +0 -61
  70. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder.rb +0 -79
  71. data/sub/eac_cli/lib/eac_cli/runner_with/help/layout.rb +0 -38
  72. data/sub/eac_cli/lib/eac_cli/runner_with/help.rb +0 -50
  73. data/sub/eac_cli/lib/eac_cli/runner_with/input.rb +0 -36
  74. data/sub/eac_cli/lib/eac_cli/runner_with/output/clipboard_writer.rb +0 -15
  75. data/sub/eac_cli/lib/eac_cli/runner_with/output.rb +0 -52
  76. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/asciidoc_formatter/section.rb +0 -31
  77. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/asciidoc_formatter.rb +0 -50
  78. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/base_formatter.rb +0 -12
  79. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/csv_formatter.rb +0 -21
  80. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/yaml_formatter.rb +0 -16
  81. data/sub/eac_cli/lib/eac_cli/runner_with/output_item.rb +0 -45
  82. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/base_formatter.rb +0 -44
  83. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/csv_formatter.rb +0 -24
  84. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/tty_formatter.rb +0 -34
  85. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/yaml_formatter.rb +0 -21
  86. data/sub/eac_cli/lib/eac_cli/runner_with/output_list.rb +0 -37
  87. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands/definition_concern.rb +0 -10
  88. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands.rb +0 -122
  89. data/sub/eac_cli/lib/eac_cli/runner_with_set/from_gems_registry.rb +0 -23
  90. data/sub/eac_cli/lib/eac_cli/runner_with_set.rb +0 -49
  91. data/sub/eac_cli/lib/eac_cli/speaker/constants.rb +0 -11
  92. data/sub/eac_cli/lib/eac_cli/speaker/input_blocked.rb +0 -14
  93. data/sub/eac_cli/lib/eac_cli/speaker/input_requested.rb +0 -8
  94. data/sub/eac_cli/lib/eac_cli/speaker/list.rb +0 -83
  95. data/sub/eac_cli/lib/eac_cli/speaker/options.rb +0 -42
  96. data/sub/eac_cli/lib/eac_cli/speaker/request_from_list.rb +0 -40
  97. data/sub/eac_cli/lib/eac_cli/speaker.rb +0 -114
  98. data/sub/eac_cli/lib/eac_cli/version.rb +0 -5
  99. data/sub/eac_cli/spec/lib/eac_cli/definition/alternative_spec.rb +0 -16
  100. data/sub/eac_cli/spec/lib/eac_cli/old_configs_spec.rb +0 -12
  101. data/sub/eac_cli/spec/lib/eac_cli/parser/alternative/subcommands_spec.rb +0 -55
  102. data/sub/eac_cli/spec/lib/eac_cli/parser/alternative_spec.rb +0 -86
  103. data/sub/eac_cli/spec/lib/eac_cli/runner/for_context_spec.rb +0 -77
  104. data/sub/eac_cli/spec/lib/eac_cli/runner_spec.rb +0 -127
  105. data/sub/eac_cli/spec/lib/eac_cli/runner_with/confirmation/input_result_spec.rb +0 -32
  106. data/sub/eac_cli/spec/lib/eac_cli/runner_with/confirmation_spec.rb +0 -40
  107. data/sub/eac_cli/spec/lib/eac_cli/runner_with/help/layout_spec.rb +0 -19
  108. data/sub/eac_cli/spec/lib/eac_cli/runner_with/help_spec.rb +0 -46
  109. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_item/asciidoc_formatter_spec.rb +0 -26
  110. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_item/asciidoc_formatter_spec_files/gb_1.source.yaml +0 -16
  111. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_item/asciidoc_formatter_spec_files/gb_1.target.adoc +0 -22
  112. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_list_spec.rb +0 -55
  113. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_spec.rb +0 -78
  114. data/sub/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb +0 -95
  115. data/sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb +0 -34
  116. data/sub/eac_ruby_utils/.avm.yaml +0 -3
  117. data/sub/eac_ruby_utils/.gitignore +0 -4
  118. data/sub/eac_ruby_utils/.gitrepo +0 -7
  119. data/sub/eac_ruby_utils/.rspec +0 -1
  120. data/sub/eac_ruby_utils/.rubocop.yml +0 -3
  121. data/sub/eac_ruby_utils/.yardopts +0 -1
  122. data/sub/eac_ruby_utils/Gemfile +0 -8
  123. data/sub/eac_ruby_utils/MIT-LICENCE +0 -16
  124. data/sub/eac_ruby_utils/README.rdoc +0 -3
  125. data/sub/eac_ruby_utils/eac_ruby_utils.gemspec +0 -27
  126. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_abstract.rb +0 -100
  127. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/array_accessor.rb +0 -25
  128. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/base_accessor.rb +0 -57
  129. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/boolean_accessor.rb +0 -16
  130. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/class_methods.rb +0 -20
  131. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/common_accessor.rb +0 -30
  132. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/enumerable_accessor.rb +0 -52
  133. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/hash_accessor.rb +0 -57
  134. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/instance_methods.rb +0 -21
  135. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/set_accessor.rb +0 -25
  136. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable.rb +0 -16
  137. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_instance_method.rb +0 -34
  138. data/sub/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb +0 -80
  139. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit.rb +0 -47
  140. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit_array.rb +0 -81
  141. data/sub/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb +0 -19
  142. data/sub/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb +0 -31
  143. data/sub/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb +0 -23
  144. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte.rb +0 -106
  145. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte_array.rb +0 -36
  146. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/class_setup.rb +0 -53
  147. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/module_setup.rb +0 -42
  148. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +0 -20
  149. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_accessors.rb +0 -36
  150. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_initialize.rb +0 -39
  151. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/instance_initialize.rb +0 -64
  152. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/super_args.rb +0 -55
  153. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +0 -95
  154. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compact.rb +0 -32
  155. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compare_by.rb +0 -28
  156. data/sub/eac_ruby_utils/lib/eac_ruby_utils/context.rb +0 -33
  157. data/sub/eac_ruby_utils/lib/eac_ruby_utils/contextualizable.rb +0 -19
  158. data/sub/eac_ruby_utils/lib/eac_ruby_utils/core_ext.rb +0 -6
  159. data/sub/eac_ruby_utils/lib/eac_ruby_utils/custom_format.rb +0 -51
  160. data/sub/eac_ruby_utils/lib/eac_ruby_utils/enum.rb +0 -102
  161. data/sub/eac_ruby_utils/lib/eac_ruby_utils/enumerables_methods.rb +0 -42
  162. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/append_command_options.rb +0 -38
  163. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/concat.rb +0 -41
  164. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/debugging.rb +0 -19
  165. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/execution.rb +0 -52
  166. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/extra_options.rb +0 -28
  167. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command.rb +0 -45
  168. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_env.rb +0 -28
  169. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/envvars.rb +0 -27
  170. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/extra_options.rb +0 -23
  171. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +0 -67
  172. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/composite_command.rb +0 -45
  173. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/executable.rb +0 -93
  174. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/execution_error.rb +0 -8
  175. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/execution_result.rb +0 -45
  176. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/file.rb +0 -22
  177. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/local_env.rb +0 -17
  178. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/process.rb +0 -27
  179. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/spawn.rb +0 -32
  180. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/dasho_options.rb +0 -51
  181. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/identity_file.rb +0 -26
  182. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/quiet.rb +0 -25
  183. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/terminal.rb +0 -36
  184. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env.rb +0 -74
  185. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs.rb +0 -23
  186. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb +0 -57
  187. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb +0 -35
  188. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb +0 -16
  189. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/file.rb +0 -34
  190. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb +0 -52
  191. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs.rb +0 -11
  192. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem/dependencies.rb +0 -33
  193. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem/paths_to_require.rb +0 -55
  194. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem.rb +0 -50
  195. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry.rb +0 -34
  196. data/sub/eac_ruby_utils/lib/eac_ruby_utils/inflector.rb +0 -29
  197. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/class_methods.rb +0 -14
  198. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/instance_methods.rb +0 -30
  199. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/integer_list.rb +0 -23
  200. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/item.rb +0 -48
  201. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +0 -129
  202. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/lists.rb +0 -51
  203. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/string_list.rb +0 -19
  204. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/symbol_list.rb +0 -19
  205. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable.rb +0 -17
  206. data/sub/eac_ruby_utils/lib/eac_ruby_utils/local_time_zone.rb +0 -48
  207. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_all_gems.rb +0 -4
  208. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_gem.rb +0 -47
  209. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/module_i18n_translate.rb +0 -74
  210. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales.rb +0 -9
  211. data/sub/eac_ruby_utils/lib/eac_ruby_utils/method_class.rb +0 -30
  212. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/base.rb +0 -34
  213. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/hash.rb +0 -20
  214. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/set.rb +0 -19
  215. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable.rb +0 -9
  216. data/sub/eac_ruby_utils/lib/eac_ruby_utils/objects_table.rb +0 -41
  217. data/sub/eac_ruby_utils/lib/eac_ruby_utils/options_consumer.rb +0 -62
  218. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patch_module.rb +0 -21
  219. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable/uri/query_value.rb +0 -37
  220. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable/uri.rb +0 -4
  221. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable.rb +0 -4
  222. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/abstract.rb +0 -9
  223. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb +0 -9
  224. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/method_class.rb +0 -9
  225. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/self_included_modules.rb +0 -7
  226. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/settings_provider.rb +0 -10
  227. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/static_method_class.rb +0 -9
  228. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class.rb +0 -4
  229. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb +0 -45
  230. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb +0 -4
  231. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb +0 -9
  232. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb +0 -14
  233. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb +0 -4
  234. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/if_key.rb +0 -12
  235. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb +0 -10
  236. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb +0 -10
  237. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/to_struct.rb +0 -10
  238. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb +0 -5
  239. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/integer/rjust_zero.rb +0 -13
  240. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/integer.rb +0 -4
  241. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel/ibr.rb +0 -10
  242. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel/nyi.rb +0 -10
  243. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel.rb +0 -4
  244. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/abstract_methods.rb +0 -10
  245. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_abstract.rb +0 -15
  246. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_immutable.rb +0 -10
  247. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_instance_method.rb +0 -10
  248. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/common_concern.rb +0 -9
  249. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/compare_by.rb +0 -9
  250. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/context.rb +0 -11
  251. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/enable_memoized.rb +0 -10
  252. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/i18n_translate.rb +0 -9
  253. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/immutable.rb +0 -11
  254. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb +0 -10
  255. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/module_parent.rb +0 -5
  256. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch_self.rb +0 -9
  257. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb +0 -9
  258. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb +0 -10
  259. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/speaker.rb +0 -9
  260. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module.rb +0 -4
  261. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb +0 -25
  262. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/call_if_proc.rb +0 -11
  263. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/compact.rb +0 -20
  264. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +0 -55
  265. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/i18n_translate.rb +0 -11
  266. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_nil.rb +0 -17
  267. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb +0 -19
  268. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_respond.rb +0 -22
  269. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/recursive_build.rb +0 -12
  270. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_bool.rb +0 -12
  271. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_pathname.rb +0 -15
  272. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_sym_by_eac.rb +0 -11
  273. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_uri.rb +0 -15
  274. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb +0 -5
  275. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/assert_parent.rb +0 -12
  276. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_noext.rb +0 -9
  277. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_sub.rb +0 -13
  278. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/child_of.rb +0 -16
  279. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/if_exist.rb +0 -10
  280. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/mkpath_s.rb +0 -12
  281. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/parent_n.rb +0 -11
  282. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/readlink_r.rb +0 -11
  283. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb +0 -13
  284. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname.rb +0 -4
  285. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/if_match.rb +0 -16
  286. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/to_parser.rb +0 -10
  287. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp.rb +0 -4
  288. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/delimited.rb +0 -16
  289. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/inflector.rb +0 -11
  290. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string.rb +0 -4
  291. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time/required_zone.rb +0 -11
  292. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time.rb +0 -4
  293. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches.rb +0 -4
  294. data/sub/eac_ruby_utils/lib/eac_ruby_utils/recursive_builder.rb +0 -51
  295. data/sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb +0 -39
  296. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/base.rb +0 -93
  297. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/sub_file.rb +0 -64
  298. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +0 -11
  299. data/sub/eac_ruby_utils/lib/eac_ruby_utils/root_module_setup/ignore.rb +0 -57
  300. data/sub/eac_ruby_utils/lib/eac_ruby_utils/root_module_setup.rb +0 -108
  301. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/default_setup.rb +0 -23
  302. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/conditionals.rb +0 -17
  303. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/setup_manager.rb +0 -17
  304. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +0 -27
  305. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup_manager.rb +0 -49
  306. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/stub_speaker.rb +0 -39
  307. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb +0 -9
  308. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +0 -32
  309. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_clean_environment.rb +0 -71
  310. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_replace_objects/replace_instance_method.rb +0 -36
  311. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_replace_objects.rb +0 -52
  312. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby.rb +0 -9
  313. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider/setting_value.rb +0 -79
  314. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider.rb +0 -50
  315. data/sub/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +0 -77
  316. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/receiver.rb +0 -64
  317. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/sender.rb +0 -37
  318. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker.rb +0 -16
  319. data/sub/eac_ruby_utils/lib/eac_ruby_utils/static_method_class.rb +0 -12
  320. data/sub/eac_ruby_utils/lib/eac_ruby_utils/string_delimited.rb +0 -70
  321. data/sub/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +0 -63
  322. data/sub/eac_ruby_utils/lib/eac_ruby_utils/unimplemented_method_error.rb +0 -6
  323. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +0 -5
  324. data/sub/eac_ruby_utils/lib/eac_ruby_utils/wildcards.rb +0 -26
  325. data/sub/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb +0 -107
  326. data/sub/eac_ruby_utils/lib/eac_ruby_utils.rb +0 -15
  327. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_abstract_spec.rb +0 -91
  328. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/array_accessor_spec.rb +0 -41
  329. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/common_accessor_spec.rb +0 -55
  330. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/hash_accessor_spec.rb +0 -40
  331. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/set_accessor_spec.rb +0 -41
  332. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb +0 -15
  333. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/bit_array_spec.rb +0 -20
  334. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb +0 -14
  335. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/byte_spec.rb +0 -52
  336. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb +0 -63
  337. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +0 -149
  338. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compact_spec.rb +0 -19
  339. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compare_by_spec.rb +0 -37
  340. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/custom_format_spec.rb +0 -58
  341. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enum_spec.rb +0 -42
  342. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enumerables_methods_spec.rb +0 -48
  343. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/base_example.rb +0 -95
  344. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/local_env_spec.rb +0 -9
  345. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/ssh_env_spec.rb +0 -16
  346. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/executable_spec.rb +0 -34
  347. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/ssh_env_spec.rb +0 -23
  348. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/extname_spec.rb +0 -16
  349. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp/directory_spec.rb +0 -10
  350. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp_spec.rb +0 -50
  351. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/gems_registry_spec.rb +0 -14
  352. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/inflector_spec.rb +0 -14
  353. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +0 -223
  354. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/local_time_zone_spec.rb +0 -15
  355. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/method_class_spec.rb +0 -45
  356. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/module_ancestors_variable/hash_spec.rb +0 -55
  357. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/module_ancestors_variable/set_spec.rb +0 -55
  358. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb +0 -78
  359. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/addressable/uri/query_value_spec.rb +0 -23
  360. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/abstract_spec.rb +0 -23
  361. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/acts_as_abstract_spec.rb +0 -11
  362. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/method_class_spec.rb +0 -17
  363. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/self_included_modules_spec.rb +0 -28
  364. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/static_method_class_spec.rb +0 -17
  365. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb +0 -37
  366. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb +0 -24
  367. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb +0 -30
  368. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/if_key_spec.rb +0 -21
  369. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb +0 -15
  370. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb +0 -11
  371. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/integer/rjust_zero_spec.rb +0 -18
  372. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/compare_by_spec.rb +0 -35
  373. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/listable_spec.rb +0 -13
  374. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/simple_cache_spec.rb +0 -13
  375. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/speaker_spec.rb +0 -13
  376. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/call_if_proc_spec.rb +0 -9
  377. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/compact_spec.rb +0 -18
  378. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/if_present_spec.rb +0 -11
  379. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/recursive_build_spec.rb +0 -60
  380. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec_files/path/my_stub_with_template +0 -1
  381. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/assert_parent_spec.rb +0 -19
  382. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_noext_spec.rb +0 -24
  383. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_sub_spec.rb +0 -15
  384. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/child_of_spec.rb +0 -24
  385. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/parent_n_spec.rb +0 -31
  386. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/string/delimited_spec.rb +0 -32
  387. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/recursive_builder_spec.rb +0 -63
  388. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_module_a.rb +0 -6
  389. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_not_module.rb +0 -6
  390. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec.rb +0 -17
  391. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/rspec/setup/setup_manager_spec.rb +0 -14
  392. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby/on_clean_environment_spec.rb +0 -29
  393. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby/on_replace_objects_spec.rb +0 -63
  394. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb +0 -62
  395. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb +0 -127
  396. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/static_method_class_spec.rb +0 -43
  397. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/struct_spec.rb +0 -55
  398. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/wildcards_spec.rb +0 -25
  399. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/yaml_spec.rb +0 -73
  400. data/sub/eac_ruby_utils/spec/locales/pt-BR.yml +0 -58
  401. data/sub/eac_ruby_utils/spec/meta/rubocop_check_spec.rb +0 -3
  402. data/sub/eac_ruby_utils/spec/spec_helper.rb +0 -11
  403. /data/sub/{eac_cli → eac_ruby_base0}/.gitignore +0 -0
  404. /data/sub/{eac_cli → eac_ruby_base0}/.rspec +0 -0
  405. /data/sub/{eac_cli → eac_ruby_base0}/.rubocop.yml +0 -0
  406. /data/sub/{eac_cli → eac_ruby_base0}/Gemfile +0 -0
@@ -1,31 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module OutputItem
6
- class AsciidocFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
7
- class Section
8
- acts_as_instance_method
9
- common_constructor :caller, :title, :content, :level
10
-
11
- # @return [String]
12
- def result
13
- "#{formatted_title}#{formatted_content}"
14
- end
15
-
16
- protected
17
-
18
- # @return [String]
19
- def formatted_title
20
- title.if_present('') { |_e| "#{'=' * level} #{title}\n\n" }
21
- end
22
-
23
- # @return [String]
24
- def formatted_content
25
- caller.send(:output_object, content, level + 1)
26
- end
27
- end
28
- end
29
- end
30
- end
31
- end
@@ -1,50 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'yaml'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputItem
8
- class AsciidocFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
9
- STARTING_LEVEL = 2
10
-
11
- # @return [String]
12
- def to_output
13
- output_hash(item_hash, STARTING_LEVEL)
14
- end
15
-
16
- protected
17
-
18
- # @param hash [Hash]
19
- # @param level [Integer]
20
- # @return [String]
21
- def output_enumerable(enumerable, level)
22
- enumerable.map { |e| output_object(e, level + 1) }.join
23
- end
24
-
25
- # @param hash [Hash]
26
- # @param level [Integer]
27
- # @return [String]
28
- def output_hash(hash, level)
29
- hash.map { |k, v| section(k, v, level) }.join("\n")
30
- end
31
-
32
- def output_object(object, level)
33
- return output_hash(object, level) if object.is_a?(::Hash)
34
- return output_enumerable(object, level) if object.is_a?(::Enumerable)
35
-
36
- output_string(object, level)
37
- end
38
-
39
- # @param string [String]
40
- # @param level [Integer]
41
- # @return [String]
42
- def output_string(string, _level)
43
- "* #{string.to_s.strip}\n"
44
- end
45
-
46
- require_sub __FILE__, require_mode: :kernel
47
- end
48
- end
49
- end
50
- end
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module OutputItem
6
- class BaseFormatter
7
- acts_as_abstract :to_output
8
- common_constructor :item_hash
9
- end
10
- end
11
- end
12
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'csv'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputItem
8
- class CsvFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
9
- COLUMNS = %w[key value].freeze
10
-
11
- # @return [String]
12
- def to_output
13
- ::CSV.generate do |csv|
14
- csv << COLUMNS
15
- item_hash.each { |k, v| csv << [k, v] }
16
- end
17
- end
18
- end
19
- end
20
- end
21
- end
@@ -1,16 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'yaml'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputItem
8
- class YamlFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
9
- # @return [String]
10
- def to_output
11
- ::YAML.dump(item_hash.deep_stringify_keys)
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,45 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module OutputItem
6
- FORMATS = %w[asciidoc csv yaml].freeze
7
-
8
- common_concern do
9
- acts_as_abstract :item_hash
10
- include ::EacCli::RunnerWith::Output
11
-
12
- runner_definition do
13
- arg_opt '-f', '--format', 'Format to output item.', default: 'yaml'
14
- end
15
- end
16
-
17
- # @return [String]
18
- def output_content
19
- formatter.to_output
20
- end
21
-
22
- # @return [EacCli::RunnerWith::OutputList::BaseFormatter]
23
- def formatter
24
- formatter_class.new(item_hash)
25
- end
26
-
27
- # @return [Class]
28
- def formatter_class
29
- formats.fetch(parsed.format)
30
- end
31
-
32
- # @return [Hash<String, Class>]
33
- def formats
34
- FORMATS.to_h do |e|
35
- [e, ::EacCli::RunnerWith::OutputItem.const_get("#{e.camelize}Formatter")]
36
- end
37
- end
38
-
39
- # @return [Hash<String, Enumerable<String>]
40
- def help_extra_text
41
- help_list_section('Formats', formats.keys.sort)
42
- end
43
- end
44
- end
45
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module OutputList
6
- class BaseFormatter
7
- acts_as_abstract :to_output
8
- common_constructor :columns, :rows
9
-
10
- # @return [String]
11
- def build_column(column)
12
- column.to_s
13
- end
14
-
15
- # @return [Array<String>]
16
- def build_columns
17
- columns.map(&:to_s)
18
- end
19
-
20
- # @param row [Object]
21
- # @return [Object]
22
- def build_row(_row)
23
- raise_abstract_method __method__
24
- end
25
-
26
- # @return [Array<Hash<String, String>>]
27
- def build_rows
28
- rows.map { |row| build_row(row) }
29
- end
30
-
31
- # @param row [Object]
32
- # @param column [String]
33
- # @return [Object]
34
- def build_value(row, column)
35
- return row.send(column) if row.respond_to?(column)
36
- return row.with_indifferent_access.fetch(column) if row.is_a?(::Hash)
37
-
38
- raise ::ArgumentError, "Row \"#{row}\" do not respond to column \"#{column}\" neither " \
39
- "is a Hash (Row: #{row}, Column: #{column})"
40
- end
41
- end
42
- end
43
- end
44
- end
@@ -1,24 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'csv'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputList
8
- class CsvFormatter < ::EacCli::RunnerWith::OutputList::BaseFormatter
9
- # @return [Array]
10
- def build_row(row)
11
- build_columns.map { |c| build_value(row, c) }
12
- end
13
-
14
- # @return [String]
15
- def to_output
16
- ::CSV.generate do |csv|
17
- csv << build_columns
18
- build_rows.each { |row| csv << row }
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
@@ -1,34 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'tty/table'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputList
8
- class TtyFormatter < ::EacCli::RunnerWith::OutputList::BaseFormatter
9
- # @param row [Object]
10
- # @return [Array]
11
- def build_row(row)
12
- build_columns.map { |c| build_value(row, c) }
13
- end
14
-
15
- # @return [String]
16
- def to_output
17
- "#{tty_table_output}\n"
18
- end
19
-
20
- # @return [TTY::Table]
21
- def tty_table
22
- ::TTY::Table.new(build_columns, build_rows)
23
- end
24
-
25
- # @return [String]
26
- def tty_table_output
27
- tty_table.render(:unicode, multiline: true) do |renderer|
28
- renderer.border.separator = ->(row) { ((row + 1) % columns.count).zero? }
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'yaml'
4
-
5
- module EacCli
6
- module RunnerWith
7
- module OutputList
8
- class YamlFormatter < ::EacCli::RunnerWith::OutputList::BaseFormatter
9
- # @return [Hash<String, String>]
10
- def build_row(row)
11
- build_columns.inject({}) { |a, e| a.merge(e => build_value(row, e).to_s) }
12
- end
13
-
14
- # @return [String]
15
- def to_output
16
- ::YAML.dump(build_rows)
17
- end
18
- end
19
- end
20
- end
21
- end
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module OutputList
6
- FORMATS = {
7
- 'csv' => ::EacCli::RunnerWith::OutputList::CsvFormatter,
8
- 'tty' => ::EacCli::RunnerWith::OutputList::TtyFormatter,
9
- 'yaml' => ::EacCli::RunnerWith::OutputList::YamlFormatter
10
- }.freeze
11
-
12
- common_concern do
13
- acts_as_abstract :list_columns, :list_rows
14
- include ::EacCli::RunnerWith::Output
15
-
16
- runner_definition do
17
- arg_opt '-f', '--format', 'Format to output list.', default: 'yaml'
18
- end
19
- end
20
-
21
- # @return [String]
22
- def output_content
23
- formatter.to_output
24
- end
25
-
26
- # @return [EacCli::RunnerWith::OutputList::BaseFormatter]
27
- def formatter
28
- formatter_class.new(list_columns, list_rows)
29
- end
30
-
31
- # @return [Class]
32
- def formatter_class
33
- FORMATS.fetch(parsed.format)
34
- end
35
- end
36
- end
37
- end
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module Subcommands
6
- module DefinitionConcern
7
- end
8
- end
9
- end
10
- end
@@ -1,122 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- module RunnerWith
5
- module Subcommands
6
- class << self
7
- delegate :runner?, to: :'::EacCli::Runner'
8
-
9
- # @return [Hash<String, EacCli::Runner>]
10
- def subcommands_from_module(a_module)
11
- a_module.constants
12
- .map { |name| [name.to_s.underscore.gsub('_', '-'), a_module.const_get(name)] }
13
- .select { |c| runner?(c[1]) }
14
- .to_h.with_indifferent_access
15
- end
16
- end
17
-
18
- common_concern do
19
- include ::EacCli::Runner
20
- runner_definition.singleton_class
21
- .include(::EacCli::RunnerWith::Subcommands::DefinitionConcern)
22
- end
23
-
24
- EXTRA_AVAILABLE_SUBCOMMANDS_METHOD_NAME = :extra_available_subcommands
25
-
26
- def available_subcommands
27
- @available_subcommands ||= available_subcommands_auto.merge(available_subcommands_extra)
28
- end
29
-
30
- # @return [Hash<String, EacCli::Runner>]
31
- def available_subcommands_auto
32
- ::EacCli::RunnerWith::Subcommands.subcommands_from_module(self.class)
33
- end
34
-
35
- def available_subcommands_extra
36
- if respond_to?(EXTRA_AVAILABLE_SUBCOMMANDS_METHOD_NAME, true)
37
- send(EXTRA_AVAILABLE_SUBCOMMANDS_METHOD_NAME)
38
- else
39
- {}
40
- end
41
- end
42
-
43
- def available_subcommands_to_s
44
- available_subcommands.keys.sort.join(', ')
45
- end
46
-
47
- # @return [Hash<String, Enumerable<String>]
48
- def help_extra_text
49
- help_list_section('Subcommands', available_subcommands.keys.sort)
50
- end
51
-
52
- def method_missing(method_name, *, &)
53
- return run_with_subcommand(*, &) if
54
- run_with_subcommand_alias_run?(method_name)
55
-
56
- super
57
- end
58
-
59
- def respond_to_missing?(method_name, include_private = false)
60
- run_with_subcommand_alias_run?(method_name) || super
61
- end
62
-
63
- def run_with_subcommand
64
- if run_subcommand?
65
- if subcommand_runner.respond_to?(:run_run)
66
- subcommand_runner.run_run
67
- else
68
- subcommand_runner.run
69
- end
70
- else
71
- run_without_subcommand
72
- end
73
- end
74
-
75
- def run_with_subcommand_alias_run?(method_name)
76
- subcommands? && method_name.to_sym == :run
77
- end
78
-
79
- def run_without_subcommand
80
- "Method #{__method__} should be overrided in #{self.class.name}"
81
- end
82
-
83
- def run_subcommand?
84
- subcommand_name.present?
85
- end
86
-
87
- def subcommands?
88
- self.class.runner_definition.subcommands?
89
- end
90
-
91
- def subcommand_args
92
- parsed.fetch(::EacCli::Definition::SUBCOMMAND_ARGS_ARG)
93
- end
94
-
95
- def subcommand_class
96
- available_subcommands[subcommand_name].if_present { |v| return v }
97
-
98
- raise(::EacCli::Parser::Error.new(
99
- self.class.runner_definition, runner_context.argv,
100
- "Subcommand \"#{subcommand_name}\" not found " \
101
- "(Available: #{available_subcommands_to_s})"
102
- ))
103
- end
104
-
105
- def subcommand_name
106
- parsed.fetch(::EacCli::Definition::SUBCOMMAND_NAME_ARG)
107
- end
108
-
109
- def subcommand_program
110
- [program_name, subcommand_name]
111
- end
112
-
113
- def subcommand_runner
114
- @subcommand_runner ||= subcommand_class.create(
115
- argv: subcommand_args,
116
- program_name: subcommand_program,
117
- parent: self
118
- )
119
- end
120
- end
121
- end
122
- end
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- class RunnerWithSet
5
- class FromGemsRegistry < ::EacCli::RunnerWithSet
6
- enable_memoized
7
-
8
- MODULE_SUFFIX = 'RunnerWith'
9
-
10
- protected
11
-
12
- # @return [EacRubyUtils::GemsRegistry]
13
- memoize def gems_registry
14
- ::EacRubyUtils::GemsRegistry.new(MODULE_SUFFIX)
15
- end
16
-
17
- # @return [Enumerable<Object>]
18
- def namespace_set
19
- super + gems_registry.registered.map(&:registered_module)
20
- end
21
- end
22
- end
23
- end
@@ -1,49 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- class RunnerWithSet
5
- class << self
6
- def default
7
- @default ||= ::EacCli::RunnerWithSet::FromGemsRegistry.new
8
- end
9
- end
10
-
11
- def add_namespace(namespace)
12
- namespace = sanitize_namespace(namespace)
13
- namespace_set << namespace unless namespace_set.include?(namespace)
14
- self
15
- end
16
-
17
- def item_to_module(item)
18
- item.is_a?(::Module) ? item : key_to_module(item)
19
- end
20
-
21
- def namespaces
22
- namespace_set.dup
23
- end
24
-
25
- private
26
-
27
- def namespace_set
28
- @namespace_set ||= []
29
- end
30
-
31
- def key_to_module(key)
32
- namespace_set.lazy
33
- .map { |namespace| key_to_module_in_namespace(namespace, key) }
34
- .find(&:present?) ||
35
- raise("Not module found with key \"#{key}\" (Namespaces: #{namespace_set})")
36
- end
37
-
38
- def key_to_module_in_namespace(namespace, key)
39
- leaf_name = key.to_s.camelize.to_sym
40
- namespace.const_get(leaf_name)
41
- rescue ::NameError => e
42
- e.receiver == namespace && e.name == leaf_name ? nil : raise(e)
43
- end
44
-
45
- def sanitize_namespace(source)
46
- source.is_a?(::Module) ? source : source.to_s.constantize
47
- end
48
- end
49
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- class Speaker
5
- module Constants
6
- STDERR = ::EacRubyUtils::ByReference.new { $stderr }
7
- STDIN = ::EacRubyUtils::ByReference.new { $stdin }
8
- STDOUT = ::EacRubyUtils::ByReference.new { $stdout }
9
- end
10
- end
11
- end
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- class Speaker
5
- class InputBlocked
6
- %w[gets noecho].each do |method|
7
- define_method(method) do
8
- raise ::EacCli::Speaker::InputRequested,
9
- "Method (\"#{method}\") was requested, but input is blocked"
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacCli
4
- class Speaker
5
- class InputRequested < ::RuntimeError
6
- end
7
- end
8
- end
@@ -1,83 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/hash_with_indifferent_access'
4
-
5
- module EacCli
6
- class Speaker
7
- class List
8
- VALUE_STRUCT = ::Struct.new(:key, :label, :value)
9
-
10
- class << self
11
- # @param list [Array, Hash]
12
- # @param options [Hash]
13
- def build(list, options = {})
14
- return List.new(hash_to_values(list), options) if list.is_a?(::Hash)
15
- return List.new(array_to_values(list), options) if list.is_a?(::Array)
16
-
17
- raise "Invalid list: #{list} (#{list.class})"
18
- end
19
-
20
- private
21
-
22
- def hash_to_values(list)
23
- list.map { |key, value| VALUE_STRUCT.new(key, key, value) }
24
- end
25
-
26
- def array_to_values(list)
27
- list.map { |value| VALUE_STRUCT.new(value, value, value) }
28
- end
29
- end
30
-
31
- DEFAULT_IGNORE_CASE = true
32
-
33
- enable_listable
34
- lists.add_symbol :option, :ignore_case
35
-
36
- # @!attribute [r] values
37
- # @return [Array<VALUE_STRUCT>]
38
- # # @!attribute [r] options
39
- # @return [Hash]
40
- # @!method initialize(values)
41
- # @param values [Array<VALUE_STRUCT>]
42
- # @param options [Hash]
43
- common_constructor :values, :options, default: [{}] do
44
- self.options = self.class.lists.option.hash_keys_validate!(options)
45
- self.values = values.map do |v|
46
- VALUE_STRUCT.new(to_key(v.key), to_label(v.label), v.value)
47
- end
48
- end
49
-
50
- # @return [Boolean]
51
- def ignore_case?
52
- options.if_key(OPTION_IGNORE_CASE, DEFAULT_IGNORE_CASE, &:to_bool)
53
- end
54
-
55
- def valid_labels
56
- values.map(&:label)
57
- end
58
-
59
- def valid_value?(value)
60
- values.any? { |v| v.key == to_key(value) }
61
- end
62
-
63
- # @param value [Object]
64
- # @return [String]
65
- def to_key(value)
66
- r = to_label(value)
67
- ignore_case? ? r.downcase : r
68
- end
69
-
70
- def to_label(value)
71
- value.to_s.strip
72
- end
73
-
74
- def build_value(value)
75
- key = to_key(value)
76
- values.each do |v|
77
- return v.value if v.key == key
78
- end
79
- raise "Value not found: \"#{value}\" (#{values})"
80
- end
81
- end
82
- end
83
- end