roast-ai 0.4.4 → 0.4.5

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 (231) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CODEOWNERS +2 -0
  3. data/.github/workflows/ci.yaml +1 -0
  4. data/.gitignore +0 -26
  5. data/.rubocop.yml +13 -0
  6. data/.rubocop_todo.yml +21 -0
  7. data/CHANGELOG.md +29 -0
  8. data/Gemfile +4 -0
  9. data/Gemfile.lock +43 -1
  10. data/bin/rubocop +27 -0
  11. data/bin/spoom +27 -0
  12. data/bin/srb +27 -0
  13. data/bin/srb-rbi +27 -0
  14. data/bin/tapioca +27 -0
  15. data/docs/INSTRUMENTATION.md +3 -3
  16. data/dsl/simple.rb +10 -0
  17. data/lib/roast/dsl/executor.rb +26 -0
  18. data/lib/roast/dsl.rb +7 -0
  19. data/lib/roast/errors.rb +1 -0
  20. data/lib/roast/factories/api_provider_factory.rb +1 -0
  21. data/lib/roast/helpers/function_caching_interceptor.rb +3 -0
  22. data/lib/roast/helpers/logger.rb +6 -9
  23. data/lib/roast/helpers/metadata_access.rb +1 -0
  24. data/lib/roast/helpers/minitest_coverage_runner.rb +1 -0
  25. data/lib/roast/helpers/path_resolver.rb +8 -18
  26. data/lib/roast/helpers/prompt_loader.rb +3 -2
  27. data/lib/roast/helpers/timeout_handler.rb +3 -5
  28. data/lib/roast/initializers.rb +1 -0
  29. data/lib/roast/resources/api_resource.rb +4 -3
  30. data/lib/roast/resources/base_resource.rb +1 -0
  31. data/lib/roast/resources/directory_resource.rb +1 -0
  32. data/lib/roast/resources/file_resource.rb +1 -0
  33. data/lib/roast/resources/none_resource.rb +1 -0
  34. data/lib/roast/resources/url_resource.rb +2 -1
  35. data/lib/roast/resources.rb +1 -2
  36. data/lib/roast/services/context_threshold_checker.rb +1 -0
  37. data/lib/roast/services/token_counting_service.rb +1 -0
  38. data/lib/roast/tools/apply_diff.rb +1 -0
  39. data/lib/roast/tools/ask_user.rb +1 -0
  40. data/lib/roast/tools/bash.rb +1 -0
  41. data/lib/roast/tools/cmd.rb +1 -0
  42. data/lib/roast/tools/coding_agent.rb +1 -0
  43. data/lib/roast/tools/context_summarizer.rb +1 -0
  44. data/lib/roast/tools/grep.rb +1 -0
  45. data/lib/roast/tools/helpers/coding_agent_message_formatter.rb +1 -0
  46. data/lib/roast/tools/read_file.rb +1 -0
  47. data/lib/roast/tools/search_file.rb +1 -0
  48. data/lib/roast/tools/swarm.rb +1 -0
  49. data/lib/roast/tools/update_files.rb +1 -0
  50. data/lib/roast/tools/write_file.rb +1 -0
  51. data/lib/roast/tools.rb +2 -0
  52. data/lib/roast/value_objects/api_token.rb +1 -0
  53. data/lib/roast/value_objects/step_name.rb +1 -0
  54. data/lib/roast/value_objects/uri_base.rb +1 -0
  55. data/lib/roast/value_objects/workflow_path.rb +1 -0
  56. data/lib/roast/value_objects.rb +1 -0
  57. data/lib/roast/version.rb +2 -1
  58. data/lib/roast/workflow/agent_step.rb +1 -0
  59. data/lib/roast/workflow/api_configuration.rb +1 -0
  60. data/lib/roast/workflow/base_iteration_step.rb +1 -0
  61. data/lib/roast/workflow/base_step.rb +1 -0
  62. data/lib/roast/workflow/base_workflow.rb +1 -0
  63. data/lib/roast/workflow/case_executor.rb +1 -0
  64. data/lib/roast/workflow/case_step.rb +1 -0
  65. data/lib/roast/workflow/command_executor.rb +1 -0
  66. data/lib/roast/workflow/conditional_executor.rb +1 -0
  67. data/lib/roast/workflow/conditional_step.rb +1 -0
  68. data/lib/roast/workflow/configuration.rb +9 -0
  69. data/lib/roast/workflow/configuration_loader.rb +4 -1
  70. data/lib/roast/workflow/context_manager.rb +1 -0
  71. data/lib/roast/workflow/context_path_resolver.rb +1 -0
  72. data/lib/roast/workflow/dot_access_hash.rb +1 -0
  73. data/lib/roast/workflow/each_step.rb +1 -0
  74. data/lib/roast/workflow/error_handler.rb +7 -1
  75. data/lib/roast/workflow/expression_evaluator.rb +1 -0
  76. data/lib/roast/workflow/expression_utils.rb +1 -0
  77. data/lib/roast/workflow/file_state_repository.rb +2 -1
  78. data/lib/roast/workflow/input_executor.rb +1 -0
  79. data/lib/roast/workflow/input_step.rb +1 -0
  80. data/lib/roast/workflow/interpolator.rb +2 -1
  81. data/lib/roast/workflow/iteration_executor.rb +1 -0
  82. data/lib/roast/workflow/llm_boolean_coercer.rb +1 -0
  83. data/lib/roast/workflow/metadata_manager.rb +1 -0
  84. data/lib/roast/workflow/output_handler.rb +1 -0
  85. data/lib/roast/workflow/output_manager.rb +1 -0
  86. data/lib/roast/workflow/parallel_executor.rb +1 -0
  87. data/lib/roast/workflow/prompt_step.rb +1 -0
  88. data/lib/roast/workflow/repeat_step.rb +1 -0
  89. data/lib/roast/workflow/replay_handler.rb +1 -0
  90. data/lib/roast/workflow/resource_resolver.rb +2 -6
  91. data/lib/roast/workflow/session_manager.rb +1 -0
  92. data/lib/roast/workflow/shell_script_step.rb +1 -0
  93. data/lib/roast/workflow/sqlite_state_repository.rb +1 -0
  94. data/lib/roast/workflow/state_manager.rb +1 -0
  95. data/lib/roast/workflow/state_repository.rb +1 -0
  96. data/lib/roast/workflow/state_repository_factory.rb +4 -2
  97. data/lib/roast/workflow/step_completion_reporter.rb +1 -0
  98. data/lib/roast/workflow/step_executor_coordinator.rb +9 -5
  99. data/lib/roast/workflow/step_executor_factory.rb +1 -0
  100. data/lib/roast/workflow/step_executor_registry.rb +2 -3
  101. data/lib/roast/workflow/step_executor_with_reporting.rb +1 -0
  102. data/lib/roast/workflow/step_executors/base_step_executor.rb +1 -0
  103. data/lib/roast/workflow/step_executors/hash_step_executor.rb +1 -0
  104. data/lib/roast/workflow/step_executors/parallel_step_executor.rb +1 -0
  105. data/lib/roast/workflow/step_executors/string_step_executor.rb +1 -0
  106. data/lib/roast/workflow/step_factory.rb +1 -0
  107. data/lib/roast/workflow/step_finder.rb +1 -0
  108. data/lib/roast/workflow/step_loader.rb +1 -0
  109. data/lib/roast/workflow/step_name_extractor.rb +1 -0
  110. data/lib/roast/workflow/step_runner.rb +1 -0
  111. data/lib/roast/workflow/step_type_resolver.rb +1 -0
  112. data/lib/roast/workflow/validation_command.rb +1 -0
  113. data/lib/roast/workflow/validator.rb +1 -0
  114. data/lib/roast/workflow/validators/base_validator.rb +1 -0
  115. data/lib/roast/workflow/validators/dependency_validator.rb +1 -0
  116. data/lib/roast/workflow/validators/linting_validator.rb +1 -0
  117. data/lib/roast/workflow/validators/schema_validator.rb +1 -0
  118. data/lib/roast/workflow/validators/step_collector.rb +1 -0
  119. data/lib/roast/workflow/validators/validation_orchestrator.rb +1 -0
  120. data/lib/roast/workflow/workflow_context.rb +1 -0
  121. data/lib/roast/workflow/workflow_execution_context.rb +1 -0
  122. data/lib/roast/workflow/workflow_executor.rb +2 -1
  123. data/lib/roast/workflow/workflow_initializer.rb +1 -0
  124. data/lib/roast/workflow/workflow_runner.rb +66 -55
  125. data/lib/roast/workflow.rb +1 -0
  126. data/lib/roast/workflow_diagram_generator.rb +3 -2
  127. data/lib/roast.rb +23 -8
  128. data/sorbet/config +8 -0
  129. data/sorbet/rbi/dsl/.gitattributes +1 -0
  130. data/sorbet/rbi/dsl/active_support/callbacks.rbi +21 -0
  131. data/sorbet/rbi/gems/.gitattributes +1 -0
  132. data/sorbet/rbi/gems/activesupport@8.0.2.rbi +19107 -0
  133. data/sorbet/rbi/gems/addressable@2.8.7.rbi +1994 -0
  134. data/sorbet/rbi/gems/ast@2.4.3.rbi +585 -0
  135. data/sorbet/rbi/gems/base64@0.3.0.rbi +545 -0
  136. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
  137. data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +62 -0
  138. data/sorbet/rbi/gems/cgi@0.5.0.rbi +2961 -0
  139. data/sorbet/rbi/gems/claude_swarm@0.1.19.rbi +568 -0
  140. data/sorbet/rbi/gems/cli-kit@5.0.1.rbi +1991 -0
  141. data/sorbet/rbi/gems/cli-ui@2.3.0.rbi +3181 -0
  142. data/sorbet/rbi/gems/coderay@1.1.3.rbi +9 -0
  143. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +11657 -0
  144. data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +9 -0
  145. data/sorbet/rbi/gems/crack@1.0.0.rbi +145 -0
  146. data/sorbet/rbi/gems/diff-lcs@1.6.2.rbi +972 -0
  147. data/sorbet/rbi/gems/dotenv@3.1.8.rbi +295 -0
  148. data/sorbet/rbi/gems/drb@2.2.3.rbi +1661 -0
  149. data/sorbet/rbi/gems/dry-configurable@1.3.0.rbi +672 -0
  150. data/sorbet/rbi/gems/dry-core@1.1.0.rbi +1894 -0
  151. data/sorbet/rbi/gems/dry-inflector@1.2.0.rbi +659 -0
  152. data/sorbet/rbi/gems/dry-initializer@3.2.0.rbi +781 -0
  153. data/sorbet/rbi/gems/dry-logic@1.6.0.rbi +1127 -0
  154. data/sorbet/rbi/gems/dry-schema@1.14.1.rbi +3727 -0
  155. data/sorbet/rbi/gems/dry-types@1.8.3.rbi +3969 -0
  156. data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
  157. data/sorbet/rbi/gems/event_stream_parser@1.0.0.rbi +49 -0
  158. data/sorbet/rbi/gems/faraday-multipart@1.1.1.rbi +283 -0
  159. data/sorbet/rbi/gems/faraday-net_http@3.4.1.rbi +147 -0
  160. data/sorbet/rbi/gems/faraday-retry@2.3.2.rbi +9 -0
  161. data/sorbet/rbi/gems/faraday@2.13.1.rbi +2977 -0
  162. data/sorbet/rbi/gems/fast-mcp-annotations@1.5.3.rbi +1588 -0
  163. data/sorbet/rbi/gems/ffi@1.17.2.rbi +9 -0
  164. data/sorbet/rbi/gems/formatador@1.1.0.rbi +9 -0
  165. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +102 -0
  166. data/sorbet/rbi/gems/guard-minitest@2.4.6.rbi +402 -0
  167. data/sorbet/rbi/gems/guard@2.19.1.rbi +2283 -0
  168. data/sorbet/rbi/gems/hashdiff@1.2.0.rbi +355 -0
  169. data/sorbet/rbi/gems/i18n@1.14.7.rbi +2359 -0
  170. data/sorbet/rbi/gems/json-schema@5.1.1.rbi +1466 -0
  171. data/sorbet/rbi/gems/json@2.12.2.rbi +2051 -0
  172. data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +9 -0
  173. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +9 -0
  174. data/sorbet/rbi/gems/listen@3.9.0.rbi +1206 -0
  175. data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
  176. data/sorbet/rbi/gems/lumberjack@1.2.10.rbi +1830 -0
  177. data/sorbet/rbi/gems/method_source@1.1.0.rbi +9 -0
  178. data/sorbet/rbi/gems/mime-types-data@3.2025.0617.rbi +136 -0
  179. data/sorbet/rbi/gems/mime-types@3.7.0.rbi +1342 -0
  180. data/sorbet/rbi/gems/minitest-rg@5.3.0.rbi +160 -0
  181. data/sorbet/rbi/gems/minitest@5.25.5.rbi +1640 -0
  182. data/sorbet/rbi/gems/mocha@2.7.1.rbi +12 -0
  183. data/sorbet/rbi/gems/multipart-post@2.4.1.rbi +244 -0
  184. data/sorbet/rbi/gems/nenv@0.3.0.rbi +147 -0
  185. data/sorbet/rbi/gems/net-http@0.6.0.rbi +4247 -0
  186. data/sorbet/rbi/gems/netrc@0.11.0.rbi +159 -0
  187. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +1079 -0
  188. data/sorbet/rbi/gems/open_router@0.3.3.rbi +230 -0
  189. data/sorbet/rbi/gems/ostruct@0.6.2.rbi +354 -0
  190. data/sorbet/rbi/gems/parallel@1.27.0.rbi +291 -0
  191. data/sorbet/rbi/gems/parser@3.3.8.0.rbi +5535 -0
  192. data/sorbet/rbi/gems/prism@1.4.0.rbi +41732 -0
  193. data/sorbet/rbi/gems/pry@0.15.2.rbi +9 -0
  194. data/sorbet/rbi/gems/public_suffix@6.0.2.rbi +936 -0
  195. data/sorbet/rbi/gems/racc@1.8.1.rbi +158 -0
  196. data/sorbet/rbi/gems/rack@2.2.17.rbi +5659 -0
  197. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +9 -0
  198. data/sorbet/rbi/gems/raix@1.0.2.rbi +1104 -0
  199. data/sorbet/rbi/gems/rake@13.3.0.rbi +3036 -0
  200. data/sorbet/rbi/gems/rb-fsevent@0.11.2.rbi +9 -0
  201. data/sorbet/rbi/gems/rb-inotify@0.11.1.rbi +9 -0
  202. data/sorbet/rbi/gems/rbi@0.3.6.rbi +6893 -0
  203. data/sorbet/rbi/gems/rbs@3.9.4.rbi +6978 -0
  204. data/sorbet/rbi/gems/regexp_parser@2.10.0.rbi +9 -0
  205. data/sorbet/rbi/gems/rexml@3.4.1.rbi +5346 -0
  206. data/sorbet/rbi/gems/rubocop-ast@1.45.1.rbi +9 -0
  207. data/sorbet/rbi/gems/rubocop-shopify@2.17.1.rbi +9 -0
  208. data/sorbet/rbi/gems/rubocop@1.77.0.rbi +9 -0
  209. data/sorbet/rbi/gems/ruby-graphviz@1.2.5.rbi +1333 -0
  210. data/sorbet/rbi/gems/ruby-openai@8.1.0.rbi +758 -0
  211. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +9 -0
  212. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +9 -0
  213. data/sorbet/rbi/gems/securerandom@0.4.1.rbi +75 -0
  214. data/sorbet/rbi/gems/shellany@0.0.1.rbi +102 -0
  215. data/sorbet/rbi/gems/spoom@1.6.3.rbi +6985 -0
  216. data/sorbet/rbi/gems/sqlite3@2.7.0.rbi +1900 -0
  217. data/sorbet/rbi/gems/tapioca@0.16.11.rbi +3628 -0
  218. data/sorbet/rbi/gems/thor@1.4.0.rbi +4399 -0
  219. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5918 -0
  220. data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +9 -0
  221. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +9 -0
  222. data/sorbet/rbi/gems/uri@1.0.3.rbi +2349 -0
  223. data/sorbet/rbi/gems/vcr@6.3.1.rbi +3040 -0
  224. data/sorbet/rbi/gems/webmock@3.25.1.rbi +1792 -0
  225. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +435 -0
  226. data/sorbet/rbi/gems/yard@0.9.37.rbi +18492 -0
  227. data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +1429 -0
  228. data/sorbet/tapioca/config.yml +13 -0
  229. data/sorbet/tapioca/require.rb +36 -0
  230. metadata +113 -2
  231. data/lib/roast/workflow/configuration_parser.rb +0 -54
@@ -0,0 +1,781 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `dry-initializer` gem.
5
+ # Please instead update this file by running `bin/tapioca gem dry-initializer`.
6
+
7
+
8
+ # Namespace for gems in a dry-rb community
9
+ #
10
+ # source://dry-initializer//lib/dry/initializer.rb#6
11
+ module Dry
12
+ class << self
13
+ # source://dry-configurable/1.3.0/lib/dry/configurable.rb#11
14
+ def Configurable(**options); end
15
+
16
+ # source://dry-core/1.1.0/lib/dry/core.rb#52
17
+ def Equalizer(*keys, **options); end
18
+
19
+ # source://dry-types/1.8.3/lib/dry/types.rb#253
20
+ def Types(*namespaces, default: T.unsafe(nil), **aliases); end
21
+ end
22
+ end
23
+
24
+ # DSL for declaring params and options of class initializers
25
+ #
26
+ # source://dry-initializer//lib/dry/initializer.rb#10
27
+ module Dry::Initializer
28
+ extend ::Dry::Initializer::DSL
29
+
30
+ # Gem-related configuration
31
+ #
32
+ # @return [Dry::Initializer::Config]
33
+ #
34
+ # source://dry-initializer//lib/dry/initializer.rb#24
35
+ def dry_initializer; end
36
+
37
+ # Adds or redefines an option of [#dry_initializer]
38
+ #
39
+ # @option opts
40
+ # @option opts
41
+ # @option opts
42
+ # @option opts
43
+ # @param name [Symbol]
44
+ # @param type [#call, nil] (nil)
45
+ # @param opts [Hash] a customizable set of options
46
+ # @return [self] itself
47
+ # @yield block with nested definition
48
+ #
49
+ # source://dry-initializer//lib/dry/initializer.rb#47
50
+ def option(name, type = T.unsafe(nil), **opts, &block); end
51
+
52
+ # Adds or redefines a parameter of [#dry_initializer]
53
+ #
54
+ # @option opts
55
+ # @option opts
56
+ # @option opts
57
+ # @option opts
58
+ # @param name [Symbol]
59
+ # @param type [#call, nil] (nil)
60
+ # @param opts [Hash] a customizable set of options
61
+ # @return [self] itself
62
+ # @yield block with nested definition
63
+ #
64
+ # source://dry-initializer//lib/dry/initializer.rb#37
65
+ def param(name, type = T.unsafe(nil), **opts, &block); end
66
+
67
+ private
68
+
69
+ # source://dry-initializer//lib/dry/initializer.rb#54
70
+ def inherited(klass); end
71
+ end
72
+
73
+ # @private
74
+ #
75
+ # source://dry-initializer//lib/dry/initializer/builders.rb#6
76
+ module Dry::Initializer::Builders; end
77
+
78
+ # @private
79
+ #
80
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#7
81
+ class Dry::Initializer::Builders::Attribute
82
+ # @return [Attribute] a new instance of Attribute
83
+ #
84
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#18
85
+ def initialize(definition); end
86
+
87
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#12
88
+ def call; end
89
+
90
+ private
91
+
92
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#83
93
+ def assignment_line; end
94
+
95
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#71
96
+ def coercion_line; end
97
+
98
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#65
99
+ def default_line; end
100
+
101
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#59
102
+ def definition_line; end
103
+
104
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#33
105
+ def lines; end
106
+
107
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#50
108
+ def optional_reader; end
109
+
110
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#44
111
+ def reader_line; end
112
+
113
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#54
114
+ def required_reader; end
115
+
116
+ class << self
117
+ # source://dry-initializer//lib/dry/initializer/builders/attribute.rb#8
118
+ def [](definition); end
119
+ end
120
+ end
121
+
122
+ # @private
123
+ #
124
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#7
125
+ class Dry::Initializer::Builders::Initializer
126
+ # @return [Initializer] a new instance of Initializer
127
+ #
128
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#21
129
+ def initialize(config); end
130
+
131
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#15
132
+ def call; end
133
+
134
+ private
135
+
136
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#41
137
+ def define_line; end
138
+
139
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#53
140
+ def end_line; end
141
+
142
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#26
143
+ def lines; end
144
+
145
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#49
146
+ def options_lines; end
147
+
148
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#45
149
+ def params_lines; end
150
+
151
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#36
152
+ def undef_line; end
153
+
154
+ class << self
155
+ # source://dry-initializer//lib/dry/initializer/builders/initializer.rb#11
156
+ def [](config); end
157
+ end
158
+ end
159
+
160
+ # @private
161
+ #
162
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#7
163
+ class Dry::Initializer::Builders::Reader
164
+ # @return [Reader] a new instance of Reader
165
+ #
166
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#18
167
+ def initialize(definition); end
168
+
169
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#12
170
+ def call; end
171
+
172
+ private
173
+
174
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#35
175
+ def attribute_line; end
176
+
177
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#25
178
+ def lines; end
179
+
180
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#41
181
+ def method_lines; end
182
+
183
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#52
184
+ def type_line; end
185
+
186
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#29
187
+ def undef_line; end
188
+
189
+ class << self
190
+ # source://dry-initializer//lib/dry/initializer/builders/reader.rb#8
191
+ def [](definition); end
192
+ end
193
+ end
194
+
195
+ # @private
196
+ #
197
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#7
198
+ class Dry::Initializer::Builders::Signature
199
+ # @return [Signature] a new instance of Signature
200
+ #
201
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#18
202
+ def initialize(config); end
203
+
204
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#12
205
+ def call; end
206
+
207
+ private
208
+
209
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#28
210
+ def optional_params; end
211
+
212
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#32
213
+ def options; end
214
+
215
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#24
216
+ def required_params; end
217
+
218
+ class << self
219
+ # source://dry-initializer//lib/dry/initializer/builders/signature.rb#8
220
+ def [](config); end
221
+ end
222
+ end
223
+
224
+ # Gem-related configuration of some class
225
+ #
226
+ # source://dry-initializer//lib/dry/initializer/config.rb#8
227
+ class Dry::Initializer::Config
228
+ # @return [Config] a new instance of Config
229
+ #
230
+ # source://dry-initializer//lib/dry/initializer/config.rb#131
231
+ def initialize(extended_class = T.unsafe(nil), null: T.unsafe(nil)); end
232
+
233
+ # The hash of assigned attributes for an instance of the [#extended_class]
234
+ #
235
+ # @param instance [Dry::Initializer::Instance]
236
+ # @return [Hash<Symbol, Object>]
237
+ #
238
+ # source://dry-initializer//lib/dry/initializer/config.rb#93
239
+ def attributes(instance); end
240
+
241
+ # List of configs of all subclasses of the [#extended_class]
242
+ #
243
+ # @return [Array<Dry::Initializer::Config>]
244
+ #
245
+ # source://dry-initializer//lib/dry/initializer/config.rb#39
246
+ def children; end
247
+
248
+ # Code of the `#__initialize__` method
249
+ #
250
+ # @return [String]
251
+ #
252
+ # source://dry-initializer//lib/dry/initializer/config.rb#103
253
+ def code; end
254
+
255
+ # @return [Hash<Symbol, Dry::Initializer::Definition>] hash of attribute definitions with their source names
256
+ #
257
+ # source://dry-initializer//lib/dry/initializer/config.rb#22
258
+ def definitions; end
259
+
260
+ # @return [Hash<Symbol, Dry::Initializer::Definition>] hash of attribute definitions with their source names
261
+ #
262
+ # source://dry-initializer//lib/dry/initializer/config.rb#22
263
+ def extended_class; end
264
+
265
+ # Finalizes config
266
+ #
267
+ # @return [self]
268
+ #
269
+ # source://dry-initializer//lib/dry/initializer/config.rb#109
270
+ def finalize; end
271
+
272
+ # Human-readable representation of configured params and options
273
+ #
274
+ # @return [String]
275
+ #
276
+ # source://dry-initializer//lib/dry/initializer/config.rb#119
277
+ def inch; end
278
+
279
+ # @return [Module] reference to the module to be included into class
280
+ #
281
+ # source://dry-initializer//lib/dry/initializer/config.rb#26
282
+ def mixin; end
283
+
284
+ # @return [Hash<Symbol, Dry::Initializer::Definition>] hash of attribute definitions with their source names
285
+ #
286
+ # source://dry-initializer//lib/dry/initializer/config.rb#22
287
+ def null; end
288
+
289
+ # Adds or redefines an option of [#dry_initializer]
290
+ #
291
+ # @option opts
292
+ # @option opts
293
+ # @option opts
294
+ # @option opts
295
+ # @param name [Symbol]
296
+ # @param type [#call, nil] (nil)
297
+ # @param opts [Hash] a customizable set of options
298
+ # @return [self] itself
299
+ #
300
+ # source://dry-initializer//lib/dry/initializer/config.rb#73
301
+ def option(name, type = T.unsafe(nil), **opts, &block); end
302
+
303
+ # List of definitions for initializer options
304
+ #
305
+ # @return [Array<Dry::Initializer::Definition>]
306
+ #
307
+ # source://dry-initializer//lib/dry/initializer/config.rb#51
308
+ def options; end
309
+
310
+ # Adds or redefines a parameter
311
+ #
312
+ # @option opts
313
+ # @option opts
314
+ # @option opts
315
+ # @option opts
316
+ # @param name [Symbol]
317
+ # @param type [#call, nil] (nil)
318
+ # @param opts [Hash] a customizable set of options
319
+ # @return [self] itself
320
+ #
321
+ # source://dry-initializer//lib/dry/initializer/config.rb#63
322
+ def param(name, type = T.unsafe(nil), **opts, &block); end
323
+
324
+ # List of definitions for initializer params
325
+ #
326
+ # @return [Array<Dry::Initializer::Definition>]
327
+ #
328
+ # source://dry-initializer//lib/dry/initializer/config.rb#45
329
+ def params; end
330
+
331
+ # @return [Hash<Symbol, Dry::Initializer::Definition>] hash of attribute definitions with their source names
332
+ #
333
+ # source://dry-initializer//lib/dry/initializer/config.rb#22
334
+ def parent; end
335
+
336
+ # The hash of public attributes for an instance of the [#extended_class]
337
+ #
338
+ # @param instance [Dry::Initializer::Instance]
339
+ # @return [Hash<Symbol, Object>]
340
+ #
341
+ # source://dry-initializer//lib/dry/initializer/config.rb#80
342
+ def public_attributes(instance); end
343
+
344
+ private
345
+
346
+ # source://dry-initializer//lib/dry/initializer/config.rb#140
347
+ def add_definition(option, name, type, block, **opts); end
348
+
349
+ # source://dry-initializer//lib/dry/initializer/config.rb#174
350
+ def check_order_of_params; end
351
+
352
+ # @raise [SyntaxError]
353
+ #
354
+ # source://dry-initializer//lib/dry/initializer/config.rb#165
355
+ def check_type(previous, current); end
356
+
357
+ # source://dry-initializer//lib/dry/initializer/config.rb#158
358
+ def final_definitions; end
359
+ end
360
+
361
+ # Module-level DSL
362
+ #
363
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#6
364
+ module Dry::Initializer::DSL
365
+ # Returns a version of the module with custom settings
366
+ #
367
+ # @option settings
368
+ # @param settings [Hash] a customizable set of options
369
+ # @return [Dry::Initializer]
370
+ #
371
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#15
372
+ def [](undefined: T.unsafe(nil), **_arg1); end
373
+
374
+ # Returns mixin module to be included to target class by hand
375
+ #
376
+ # @return [Module]
377
+ # @yield proc defining params and options
378
+ #
379
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#27
380
+ def define(procedure = T.unsafe(nil), &block); end
381
+
382
+ # Setting for null (undefined value)
383
+ #
384
+ # @return [nil, Dry::Initializer::UNDEFINED]
385
+ #
386
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#9
387
+ def null; end
388
+
389
+ private
390
+
391
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#36
392
+ def extended(klass); end
393
+
394
+ class << self
395
+ private
396
+
397
+ # @private
398
+ #
399
+ # source://dry-initializer//lib/dry/initializer/dsl.rb#45
400
+ def extended(mod); end
401
+ end
402
+ end
403
+
404
+ # Base class for parameter or option definitions
405
+ # Defines methods to add corresponding reader to the class,
406
+ # and build value of instance attribute.
407
+ #
408
+ # @abstract
409
+ # @private
410
+ #
411
+ # source://dry-initializer//lib/dry/initializer/definition.rb#13
412
+ class Dry::Initializer::Definition
413
+ # @return [Definition] a new instance of Definition
414
+ #
415
+ # source://dry-initializer//lib/dry/initializer/definition.rb#55
416
+ def initialize(**options); end
417
+
418
+ # source://dry-initializer//lib/dry/initializer/definition.rb#36
419
+ def ==(other); end
420
+
421
+ # source://dry-initializer//lib/dry/initializer/definition.rb#40
422
+ def code; end
423
+
424
+ # Returns the value of attribute default.
425
+ #
426
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
427
+ def default; end
428
+
429
+ # Returns the value of attribute desc.
430
+ #
431
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
432
+ def desc; end
433
+
434
+ # source://dry-initializer//lib/dry/initializer/definition.rb#44
435
+ def inch; end
436
+
437
+ # source://dry-initializer//lib/dry/initializer/definition.rb#29
438
+ def inspect; end
439
+
440
+ # Returns the value of attribute ivar.
441
+ #
442
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
443
+ def ivar; end
444
+
445
+ # source://dry-initializer//lib/dry/initializer/definition.rb#29
446
+ def name; end
447
+
448
+ # Returns the value of attribute null.
449
+ #
450
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
451
+ def null; end
452
+
453
+ # Returns the value of attribute option.
454
+ #
455
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
456
+ def option; end
457
+
458
+ # Returns the value of attribute optional.
459
+ #
460
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
461
+ def optional; end
462
+
463
+ # source://dry-initializer//lib/dry/initializer/definition.rb#18
464
+ def options; end
465
+
466
+ # Returns the value of attribute reader.
467
+ #
468
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
469
+ def reader; end
470
+
471
+ # Returns the value of attribute source.
472
+ #
473
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
474
+ def source; end
475
+
476
+ # Returns the value of attribute target.
477
+ #
478
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
479
+ def target; end
480
+
481
+ # source://dry-initializer//lib/dry/initializer/definition.rb#29
482
+ def to_s; end
483
+
484
+ # source://dry-initializer//lib/dry/initializer/definition.rb#29
485
+ def to_str; end
486
+
487
+ # Returns the value of attribute type.
488
+ #
489
+ # source://dry-initializer//lib/dry/initializer/definition.rb#14
490
+ def type; end
491
+ end
492
+
493
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#66
494
+ module Dry::Initializer::Dispatchers
495
+ extend ::Dry::Initializer::Dispatchers
496
+
497
+ # Registers a new dispatcher
498
+ #
499
+ # @param dispatcher [#call]
500
+ # @return [self] itself
501
+ #
502
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#79
503
+ def <<(dispatcher); end
504
+
505
+ # Normalizes the source set of options
506
+ #
507
+ # @param options [Hash<Symbol, Object>]
508
+ # @return [Hash<Symbol, Objct>] normalized set of options
509
+ #
510
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#90
511
+ def call(**options); end
512
+
513
+ # @return [Object]
514
+ #
515
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#71
516
+ def null; end
517
+
518
+ # @return [Object]
519
+ #
520
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#71
521
+ def null=(_arg0); end
522
+
523
+ private
524
+
525
+ # source://dry-initializer//lib/dry/initializer/dispatchers.rb#108
526
+ def pipeline; end
527
+ end
528
+
529
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#14
530
+ module Dry::Initializer::Dispatchers::BuildNestedType
531
+ extend ::Dry::Initializer::Dispatchers::BuildNestedType
532
+
533
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#18
534
+ def call(parent:, source:, target:, type: T.unsafe(nil), block: T.unsafe(nil), **options); end
535
+
536
+ private
537
+
538
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#48
539
+ def build_nested_type(parent, name, block); end
540
+
541
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#59
542
+ def build_struct(klass_name, block); end
543
+
544
+ # @raise [ArgumentError]
545
+ #
546
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#28
547
+ def check_certainty!(source, type, block); end
548
+
549
+ # @raise [ArgumentError]
550
+ #
551
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#38
552
+ def check_name!(name, block); end
553
+
554
+ # source://dry-initializer//lib/dry/initializer/dispatchers/build_nested_type.rb#55
555
+ def full_name(parent, name); end
556
+ end
557
+
558
+ # source://dry-initializer//lib/dry/initializer/dispatchers/check_type.rb#8
559
+ module Dry::Initializer::Dispatchers::CheckType
560
+ extend ::Dry::Initializer::Dispatchers::CheckType
561
+
562
+ # source://dry-initializer//lib/dry/initializer/dispatchers/check_type.rb#11
563
+ def call(source:, type: T.unsafe(nil), wrap: T.unsafe(nil), **options); end
564
+
565
+ private
566
+
567
+ # @raise [ArgumentError]
568
+ #
569
+ # source://dry-initializer//lib/dry/initializer/dispatchers/check_type.rb#28
570
+ def check_arity!(_source, type, wrap); end
571
+
572
+ # @raise [ArgumentError]
573
+ #
574
+ # source://dry-initializer//lib/dry/initializer/dispatchers/check_type.rb#20
575
+ def check_if_callable!(source, type); end
576
+ end
577
+
578
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_default.rb#10
579
+ module Dry::Initializer::Dispatchers::PrepareDefault
580
+ extend ::Dry::Initializer::Dispatchers::PrepareDefault
581
+
582
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_default.rb#13
583
+ def call(default: T.unsafe(nil), optional: T.unsafe(nil), **options); end
584
+
585
+ private
586
+
587
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_default.rb#22
588
+ def callable!(default); end
589
+
590
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_default.rb#30
591
+ def check_arity!(default); end
592
+
593
+ # @raise [TypeError]
594
+ #
595
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_default.rb#39
596
+ def invalid!(default); end
597
+ end
598
+
599
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_ivar.rb#8
600
+ module Dry::Initializer::Dispatchers::PrepareIvar
601
+ private
602
+
603
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_ivar.rb#11
604
+ def call(target:, **options); end
605
+
606
+ class << self
607
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_ivar.rb#11
608
+ def call(target:, **options); end
609
+ end
610
+ end
611
+
612
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_optional.rb#8
613
+ module Dry::Initializer::Dispatchers::PrepareOptional
614
+ private
615
+
616
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_optional.rb#11
617
+ def call(optional: T.unsafe(nil), default: T.unsafe(nil), required: T.unsafe(nil), **options); end
618
+
619
+ class << self
620
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_optional.rb#11
621
+ def call(optional: T.unsafe(nil), default: T.unsafe(nil), required: T.unsafe(nil), **options); end
622
+ end
623
+ end
624
+
625
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_reader.rb#8
626
+ module Dry::Initializer::Dispatchers::PrepareReader
627
+ extend ::Dry::Initializer::Dispatchers::PrepareReader
628
+
629
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_reader.rb#11
630
+ def call(target: T.unsafe(nil), reader: T.unsafe(nil), **options); end
631
+
632
+ private
633
+
634
+ # @raise [ArgumentError]
635
+ #
636
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_reader.rb#24
637
+ def invalid_reader!(target, _reader); end
638
+ end
639
+
640
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_source.rb#26
641
+ module Dry::Initializer::Dispatchers::PrepareSource
642
+ private
643
+
644
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_source.rb#29
645
+ def call(source:, **options); end
646
+
647
+ class << self
648
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_source.rb#29
649
+ def call(source:, **options); end
650
+ end
651
+ end
652
+
653
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_target.rb#11
654
+ module Dry::Initializer::Dispatchers::PrepareTarget
655
+ extend ::Dry::Initializer::Dispatchers::PrepareTarget
656
+
657
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_target.rb#23
658
+ def call(source:, target: T.unsafe(nil), as: T.unsafe(nil), **options); end
659
+
660
+ private
661
+
662
+ # @raise [ArgumentError]
663
+ #
664
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_target.rb#42
665
+ def check_reserved_names!(target); end
666
+
667
+ # @raise [ArgumentError]
668
+ #
669
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_target.rb#35
670
+ def check_ruby_name!(target); end
671
+ end
672
+
673
+ # List of variable names reserved by the gem
674
+ #
675
+ # source://dry-initializer//lib/dry/initializer/dispatchers/prepare_target.rb#15
676
+ Dry::Initializer::Dispatchers::PrepareTarget::RESERVED = T.let(T.unsafe(nil), Array)
677
+
678
+ # source://dry-initializer//lib/dry/initializer/dispatchers/unwrap_type.rb#12
679
+ module Dry::Initializer::Dispatchers::UnwrapType
680
+ extend ::Dry::Initializer::Dispatchers::UnwrapType
681
+
682
+ # source://dry-initializer//lib/dry/initializer/dispatchers/unwrap_type.rb#15
683
+ def call(type: T.unsafe(nil), wrap: T.unsafe(nil), **options); end
684
+
685
+ private
686
+
687
+ # source://dry-initializer//lib/dry/initializer/dispatchers/unwrap_type.rb#23
688
+ def unwrap(type, count); end
689
+ end
690
+
691
+ # source://dry-initializer//lib/dry/initializer/dispatchers/wrap_type.rb#8
692
+ module Dry::Initializer::Dispatchers::WrapType
693
+ extend ::Dry::Initializer::Dispatchers::WrapType
694
+
695
+ # source://dry-initializer//lib/dry/initializer/dispatchers/wrap_type.rb#11
696
+ def call(type: T.unsafe(nil), wrap: T.unsafe(nil), **options); end
697
+
698
+ private
699
+
700
+ # source://dry-initializer//lib/dry/initializer/dispatchers/wrap_type.rb#23
701
+ def wrap_value(value, count, type); end
702
+
703
+ # source://dry-initializer//lib/dry/initializer/dispatchers/wrap_type.rb#17
704
+ def wrapped_type(type, count); end
705
+ end
706
+
707
+ # @private
708
+ #
709
+ # source://dry-initializer//lib/dry/initializer/mixin.rb#6
710
+ module Dry::Initializer::Mixin
711
+ include ::Dry::Initializer
712
+ extend ::Dry::Initializer::DSL
713
+
714
+ class << self
715
+ # @deprecated
716
+ #
717
+ # source://dry-initializer//lib/dry/initializer/mixin.rb#10
718
+ def extended(klass); end
719
+ end
720
+ end
721
+
722
+ # @private
723
+ #
724
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#7
725
+ module Dry::Initializer::Mixin::Local
726
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#10
727
+ def inspect; end
728
+
729
+ # Returns the value of attribute klass.
730
+ #
731
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#8
732
+ def klass; end
733
+
734
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#10
735
+ def to_s; end
736
+
737
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#10
738
+ def to_str; end
739
+
740
+ private
741
+
742
+ # source://dry-initializer//lib/dry/initializer/mixin/local.rb#18
743
+ def included(klass); end
744
+ end
745
+
746
+ # @private
747
+ #
748
+ # source://dry-initializer//lib/dry/initializer/mixin/root.rb#7
749
+ module Dry::Initializer::Mixin::Root
750
+ # source://dry-initializer//lib/dry/initializer/mixin/root.rb#10
751
+ def initialize(*args, **kwargs); end
752
+ end
753
+
754
+ # source://dry-initializer//lib/dry/initializer/struct.rb#7
755
+ class Dry::Initializer::Struct
756
+ include ::Dry::Initializer::Mixin::Root
757
+ extend ::Dry::Initializer
758
+
759
+ # Represents event data as a nested hash with deeply stringified keys
760
+ #
761
+ # @return [Hash<String, ...>]
762
+ #
763
+ # source://dry-initializer//lib/dry/initializer/struct.rb#23
764
+ def to_h; end
765
+
766
+ private
767
+
768
+ # source://dry-initializer//lib/dry/initializer/struct.rb#33
769
+ def __hashify(value); end
770
+
771
+ class << self
772
+ # source://dry-initializer//lib/dry/initializer/struct.rb#13
773
+ def call(options); end
774
+
775
+ # source://dry-initializer//lib/dry/initializer/struct.rb#13
776
+ def new(options); end
777
+ end
778
+ end
779
+
780
+ # source://dry-initializer//lib/dry/initializer/undefined.rb#5
781
+ module Dry::Initializer::UNDEFINED; end