clean-architecture 2.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rspec.yml +21 -0
  3. data/.gitignore +1 -0
  4. data/.ruby-version +1 -1
  5. data/CHANGELOG.md +42 -0
  6. data/Gemfile +1 -0
  7. data/README.md +423 -4
  8. data/clean-architecture.gemspec +9 -5
  9. data/generate_require_files.rb +1 -0
  10. data/lib/clean-architecture.rb +1 -0
  11. data/lib/clean_architecture/adapters/all.rb +1 -0
  12. data/lib/clean_architecture/adapters/attribute_hash_base.rb +1 -0
  13. data/lib/clean_architecture/all.rb +3 -0
  14. data/lib/clean_architecture/builders/abstract_active_record_entity_builder.rb +124 -0
  15. data/lib/clean_architecture/builders/all.rb +6 -0
  16. data/lib/clean_architecture/checks/all.rb +1 -0
  17. data/lib/clean_architecture/checks/authorization.rb +1 -0
  18. data/lib/clean_architecture/entities/all.rb +1 -0
  19. data/lib/clean_architecture/entities/failure_details.rb +2 -1
  20. data/lib/clean_architecture/entities/targeted_parameters.rb +1 -0
  21. data/lib/clean_architecture/entities/untargeted_parameters.rb +1 -0
  22. data/lib/clean_architecture/interfaces/all.rb +1 -0
  23. data/lib/clean_architecture/interfaces/authorization_parameters.rb +1 -0
  24. data/lib/clean_architecture/interfaces/base_parameters.rb +1 -0
  25. data/lib/clean_architecture/interfaces/jsonable.rb +1 -0
  26. data/lib/clean_architecture/interfaces/success_payload.rb +1 -0
  27. data/lib/clean_architecture/interfaces/targeted_parameters.rb +1 -0
  28. data/lib/clean_architecture/interfaces/use_case.rb +1 -0
  29. data/lib/clean_architecture/interfaces/use_case_actor.rb +1 -0
  30. data/lib/clean_architecture/interfaces/use_case_target.rb +1 -0
  31. data/lib/clean_architecture/matchers/all.rb +1 -0
  32. data/lib/clean_architecture/matchers/use_case_result.rb +1 -0
  33. data/lib/clean_architecture/queries/all.rb +1 -0
  34. data/lib/clean_architecture/queries/http_failure_code.rb +1 -0
  35. data/lib/clean_architecture/queries/http_success_code.rb +1 -0
  36. data/lib/clean_architecture/serializers/all.rb +1 -0
  37. data/lib/clean_architecture/serializers/html_response_from_result.rb +1 -0
  38. data/lib/clean_architecture/serializers/json_response_from_result.rb +1 -0
  39. data/lib/clean_architecture/serializers/success_collection_payload.rb +1 -0
  40. data/lib/clean_architecture/serializers/success_payload.rb +1 -0
  41. data/lib/clean_architecture/types.rb +2 -1
  42. data/lib/clean_architecture/use_cases/abstract_use_case.rb +62 -0
  43. data/lib/clean_architecture/use_cases/all.rb +10 -0
  44. data/lib/clean_architecture/use_cases/contract.rb +9 -0
  45. data/lib/clean_architecture/use_cases/errors.rb +57 -0
  46. data/lib/clean_architecture/use_cases/form.rb +116 -0
  47. data/lib/clean_architecture/use_cases/parameters.rb +42 -0
  48. data/lib/clean_architecture/version.rb +2 -1
  49. data/sorbet/config +2 -0
  50. data/sorbet/rbi/gems/activemodel.rbi +74 -0
  51. data/sorbet/rbi/gems/activesupport.rbi +440 -0
  52. data/sorbet/rbi/gems/ast.rbi +47 -0
  53. data/sorbet/rbi/gems/axiom-types.rbi +159 -0
  54. data/sorbet/rbi/gems/byebug.rbi +1039 -0
  55. data/sorbet/rbi/gems/codeclimate-engine-rb.rbi +123 -0
  56. data/sorbet/rbi/gems/coderay.rbi +91 -0
  57. data/sorbet/rbi/gems/coercible.rbi +156 -0
  58. data/sorbet/rbi/gems/concurrent-ruby.rbi +1587 -0
  59. data/sorbet/rbi/gems/descendants_tracker.rbi +17 -0
  60. data/sorbet/rbi/gems/docile.rbi +31 -0
  61. data/sorbet/rbi/gems/dry-configurable.rbi +89 -0
  62. data/sorbet/rbi/gems/dry-container.rbi +88 -0
  63. data/sorbet/rbi/gems/dry-core.rbi +79 -0
  64. data/sorbet/rbi/gems/dry-equalizer.rbi +25 -0
  65. data/sorbet/rbi/gems/dry-inflector.rbi +72 -0
  66. data/sorbet/rbi/gems/dry-initializer.rbi +209 -0
  67. data/sorbet/rbi/gems/dry-logic.rbi +304 -0
  68. data/sorbet/rbi/gems/dry-matcher.rbi +33 -0
  69. data/sorbet/rbi/gems/dry-monads.rbi +508 -0
  70. data/sorbet/rbi/gems/dry-schema.rbi +790 -0
  71. data/sorbet/rbi/gems/dry-struct.rbi +165 -0
  72. data/sorbet/rbi/gems/dry-types.rbi +688 -0
  73. data/sorbet/rbi/gems/dry-validation.rbi +284 -0
  74. data/sorbet/rbi/gems/duckface-interfaces.rbi +93 -0
  75. data/sorbet/rbi/gems/equalizer.rbi +22 -0
  76. data/sorbet/rbi/gems/i18n.rbi +132 -0
  77. data/sorbet/rbi/gems/ice_nine.rbi +66 -0
  78. data/sorbet/rbi/gems/jaro_winkler.rbi +14 -0
  79. data/sorbet/rbi/gems/kwalify.rbi +339 -0
  80. data/sorbet/rbi/gems/method_source.rbi +63 -0
  81. data/sorbet/rbi/gems/parallel.rbi +81 -0
  82. data/sorbet/rbi/gems/parser.rbi +1293 -0
  83. data/sorbet/rbi/gems/pry-byebug.rbi +149 -0
  84. data/sorbet/rbi/gems/pry.rbi +1964 -0
  85. data/sorbet/rbi/gems/psych.rbi +462 -0
  86. data/sorbet/rbi/gems/rainbow.rbi +117 -0
  87. data/sorbet/rbi/gems/rake.rbi +634 -0
  88. data/sorbet/rbi/gems/rb-readline.rbi +766 -0
  89. data/sorbet/rbi/gems/reek.rbi +1066 -0
  90. data/sorbet/rbi/gems/rspec-core.rbi +1658 -0
  91. data/sorbet/rbi/gems/rspec-expectations.rbi +430 -0
  92. data/sorbet/rbi/gems/rspec-mocks.rbi +815 -0
  93. data/sorbet/rbi/gems/rspec-support.rbi +268 -0
  94. data/sorbet/rbi/gems/rspec.rbi +14 -0
  95. data/sorbet/rbi/gems/rubocop-rspec.rbi +875 -0
  96. data/sorbet/rbi/gems/rubocop.rbi +7014 -0
  97. data/sorbet/rbi/gems/ruby-progressbar.rbi +304 -0
  98. data/sorbet/rbi/gems/simplecov-html.rbi +30 -0
  99. data/sorbet/rbi/gems/simplecov.rbi +225 -0
  100. data/sorbet/rbi/gems/stackprof.rbi +51 -0
  101. data/sorbet/rbi/gems/thread_safe.rbi +81 -0
  102. data/sorbet/rbi/gems/timecop.rbi +97 -0
  103. data/sorbet/rbi/gems/unicode-display_width.rbi +16 -0
  104. data/sorbet/rbi/gems/virtus.rbi +421 -0
  105. data/sorbet/rbi/hidden-definitions/errors.txt +7332 -0
  106. data/sorbet/rbi/hidden-definitions/hidden.rbi +17521 -0
  107. data/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
  108. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +23 -0
  109. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +625 -0
  110. data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8684 -0
  111. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
  112. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +254 -0
  113. data/sorbet/rbi/sorbet-typed/lib/ruby/all/gem.rbi +4222 -0
  114. data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  115. data/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  116. data/sorbet/rbi/todo.rbi +12 -0
  117. metadata +156 -24
  118. data/Gemfile.lock +0 -187
@@ -0,0 +1,304 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strong
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/dry-logic/all/dry-logic.rbi
9
+ #
10
+ # dry-logic-1.0.3
11
+ module Dry
12
+ end
13
+ module Dry::Logic
14
+ def self.Rule(*args, **options, &block); end
15
+ end
16
+ module Dry::Logic::Operators
17
+ def &(other); end
18
+ def >(other); end
19
+ def ^(other); end
20
+ def and(other); end
21
+ def or(other); end
22
+ def then(other); end
23
+ def xor(other); end
24
+ def |(other); end
25
+ end
26
+ module Dry::Logic::Operations
27
+ end
28
+ class Dry::Logic::Operations::Abstract
29
+ def curry(*args); end
30
+ def id; end
31
+ def initialize(*rules, **options); end
32
+ def new(rules, **new_options); end
33
+ def options; end
34
+ def rules; end
35
+ def to_ast; end
36
+ def with(new_options); end
37
+ include Anonymous_Dry_Equalizer_37
38
+ include Dry::Core::Constants
39
+ include Dry::Equalizer::Methods
40
+ include Dry::Logic::Operators
41
+ end
42
+ module Anonymous_Dry_Equalizer_37
43
+ def cmp?(comparator, other); end
44
+ def hash; end
45
+ def inspect; end
46
+ end
47
+ class Dry::Logic::Operations::Binary < Dry::Logic::Operations::Abstract
48
+ def ast(input = nil); end
49
+ def initialize(*rules, **options); end
50
+ def left; end
51
+ def right; end
52
+ def to_s; end
53
+ end
54
+ class Dry::Logic::Result
55
+ def ast(input = nil); end
56
+ def failure?; end
57
+ def id; end
58
+ def initialize(success, id = nil, &block); end
59
+ def serializer; end
60
+ def success; end
61
+ def success?; end
62
+ def to_ast; end
63
+ def to_s; end
64
+ def type; end
65
+ def visit(ast); end
66
+ def visit_and(node); end
67
+ def visit_hint(node); end
68
+ def visit_not(node); end
69
+ def visit_or(node); end
70
+ def visit_predicate(node); end
71
+ def visit_xor(node); end
72
+ include Dry::Core::Constants
73
+ end
74
+ class Dry::Logic::Operations::And < Dry::Logic::Operations::Binary
75
+ def [](input); end
76
+ def call(input); end
77
+ def hints; end
78
+ def initialize(*arg0); end
79
+ def operator; end
80
+ def type; end
81
+ end
82
+ class Dry::Logic::Operations::Or < Dry::Logic::Operations::Binary
83
+ def [](input); end
84
+ def call(input); end
85
+ def operator; end
86
+ def type; end
87
+ end
88
+ class Dry::Logic::Operations::Xor < Dry::Logic::Operations::Binary
89
+ def [](input); end
90
+ def ast(input = nil); end
91
+ def call(input); end
92
+ def operator; end
93
+ def type; end
94
+ end
95
+ class Dry::Logic::Operations::Implication < Dry::Logic::Operations::Binary
96
+ def [](input); end
97
+ def call(input); end
98
+ def operator; end
99
+ def type; end
100
+ end
101
+ class Dry::Logic::Operations::Unary < Dry::Logic::Operations::Abstract
102
+ def ast(input = nil); end
103
+ def initialize(*rules, **options); end
104
+ def rule; end
105
+ def to_s; end
106
+ end
107
+ class Dry::Logic::Operations::Negation < Dry::Logic::Operations::Unary
108
+ def [](input); end
109
+ def call(input); end
110
+ def type; end
111
+ end
112
+ class Dry::Logic::Evaluator
113
+ def initialize(path); end
114
+ def path; end
115
+ include Anonymous_Dry_Equalizer_38
116
+ include Dry::Equalizer::Methods
117
+ end
118
+ module Anonymous_Dry_Equalizer_38
119
+ def cmp?(comparator, other); end
120
+ def hash; end
121
+ def inspect; end
122
+ end
123
+ class Dry::Logic::Evaluator::Set
124
+ def [](input); end
125
+ def call(input); end
126
+ def evaluators; end
127
+ def initialize(evaluators); end
128
+ def self.new(paths); end
129
+ include Anonymous_Dry_Equalizer_39
130
+ include Dry::Equalizer::Methods
131
+ end
132
+ module Anonymous_Dry_Equalizer_39
133
+ def cmp?(comparator, other); end
134
+ def hash; end
135
+ def inspect; end
136
+ end
137
+ class Dry::Logic::Evaluator::Key < Dry::Logic::Evaluator
138
+ def [](input); end
139
+ def call(input); end
140
+ end
141
+ class Dry::Logic::Evaluator::Attr < Dry::Logic::Evaluator
142
+ def [](input); end
143
+ def call(input); end
144
+ end
145
+ class Dry::Logic::Operations::Key < Dry::Logic::Operations::Unary
146
+ def [](hash); end
147
+ def ast(input = nil); end
148
+ def call(hash); end
149
+ def evaluator; end
150
+ def initialize(*rules, **options); end
151
+ def path; end
152
+ def self.evaluator(name); end
153
+ def self.new(rules, options); end
154
+ def to_s; end
155
+ def type; end
156
+ end
157
+ class Dry::Logic::Operations::Attr < Dry::Logic::Operations::Key
158
+ def self.evaluator(name); end
159
+ def type; end
160
+ end
161
+ class Dry::Logic::Operations::Each < Dry::Logic::Operations::Unary
162
+ def [](arr); end
163
+ def call(input); end
164
+ def type; end
165
+ end
166
+ class Dry::Logic::Operations::Set < Dry::Logic::Operations::Abstract
167
+ def [](input); end
168
+ def ast(input = nil); end
169
+ def call(input); end
170
+ def to_s; end
171
+ def type; end
172
+ end
173
+ class Dry::Logic::Operations::Check < Dry::Logic::Operations::Unary
174
+ def [](input); end
175
+ def ast(input = nil); end
176
+ def call(input); end
177
+ def evaluator; end
178
+ def initialize(*rules, **options); end
179
+ def self.new(rule, **options); end
180
+ def type; end
181
+ end
182
+ class Dry::Logic::Rule
183
+ def args; end
184
+ def args_with_names(*input); end
185
+ def arity; end
186
+ def ast(input = nil); end
187
+ def bind(object); end
188
+ def curry(*new_args); end
189
+ def eval_args(object); end
190
+ def id; end
191
+ def initialize(predicate, options = nil); end
192
+ def options; end
193
+ def parameters; end
194
+ def predicate; end
195
+ def self.build(predicate, args: nil, arity: nil, **options); end
196
+ def self.interfaces; end
197
+ def self.specialize(arity, curried, base = nil); end
198
+ def type; end
199
+ def with(new_opts); end
200
+ include Anonymous_Dry_Equalizer_40
201
+ include Dry::Core::Constants
202
+ include Dry::Equalizer::Methods
203
+ include Dry::Logic::Operators
204
+ end
205
+ class Dry::Logic::Rule::Interface < Module
206
+ def arity; end
207
+ def constant?; end
208
+ def curried; end
209
+ def curried?; end
210
+ def curried_args; end
211
+ def define_constant_application; end
212
+ def define_constructor; end
213
+ def define_fixed_application; end
214
+ def define_splat_application; end
215
+ def initialize(arity, curried); end
216
+ def name; end
217
+ def unapplied; end
218
+ def unapplied_args; end
219
+ def variable_arity?; end
220
+ end
221
+ module Anonymous_Dry_Equalizer_40
222
+ def cmp?(comparator, other); end
223
+ def hash; end
224
+ def inspect; end
225
+ end
226
+ class Dry::Logic::Rule::Predicate < Dry::Logic::Rule
227
+ def ast(input = nil); end
228
+ def name; end
229
+ def self.specialize(arity, curried, base = nil); end
230
+ def to_ast(input = nil); end
231
+ def to_s; end
232
+ def type; end
233
+ end
234
+ class Dry::Logic::RuleCompiler
235
+ def call(ast); end
236
+ def initialize(predicates); end
237
+ def predicates; end
238
+ def visit(node); end
239
+ def visit_and(node); end
240
+ def visit_attr(node); end
241
+ def visit_check(node); end
242
+ def visit_each(node); end
243
+ def visit_implication(node); end
244
+ def visit_key(node); end
245
+ def visit_not(node); end
246
+ def visit_or(node); end
247
+ def visit_predicate(node); end
248
+ def visit_set(node); end
249
+ def visit_xor(node); end
250
+ include Dry::Core::Constants
251
+ end
252
+ module Dry::Logic::Predicates
253
+ def self.included(other); end
254
+ extend Dry::Logic::Predicates::Methods
255
+ end
256
+ module Dry::Logic::Predicates::Methods
257
+ def [](name); end
258
+ def array?(input); end
259
+ def attr?(name, input); end
260
+ def bool?(input); end
261
+ def bytesize?(size, input); end
262
+ def case?(pattern, input); end
263
+ def date?(input); end
264
+ def date_time?(input); end
265
+ def decimal?(input); end
266
+ def empty?(input); end
267
+ def eql?(left, right); end
268
+ def even?(input); end
269
+ def excluded_from?(list, input); end
270
+ def excludes?(value, input); end
271
+ def exclusion?(list, input); end
272
+ def false?(value); end
273
+ def filled?(input); end
274
+ def float?(input); end
275
+ def format?(regex, input); end
276
+ def gt?(num, input); end
277
+ def gteq?(num, input); end
278
+ def hash?(input); end
279
+ def included_in?(list, input); end
280
+ def includes?(value, input); end
281
+ def inclusion?(list, input); end
282
+ def int?(input); end
283
+ def is?(left, right); end
284
+ def key?(name, input); end
285
+ def lt?(num, input); end
286
+ def lteq?(num, input); end
287
+ def max_bytesize?(num, input); end
288
+ def max_size?(num, input); end
289
+ def min_bytesize?(num, input); end
290
+ def min_size?(num, input); end
291
+ def nil?(input); end
292
+ def none?(input); end
293
+ def not_eql?(left, right); end
294
+ def number?(input); end
295
+ def odd?(input); end
296
+ def predicate(name, &block); end
297
+ def respond_to?(method, input); end
298
+ def size?(size, input); end
299
+ def str?(input); end
300
+ def time?(input); end
301
+ def true?(value); end
302
+ def type?(type, input); end
303
+ def uuid_v4?(input); end
304
+ end
@@ -0,0 +1,33 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strong
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/dry-matcher/all/dry-matcher.rbi
9
+ #
10
+ # dry-matcher-0.8.2
11
+ module Dry
12
+ end
13
+ class Dry::Matcher
14
+ def call(result, &block); end
15
+ def cases; end
16
+ def for(*methods); end
17
+ def initialize(cases = nil); end
18
+ def self.for(*match_methods, with:); end
19
+ include Dry::Core::Constants
20
+ end
21
+ class Dry::Matcher::Case
22
+ def call(value, patterns = nil, &block); end
23
+ def initialize(match: nil, resolve: nil, &block); end
24
+ end
25
+ class Dry::Matcher::NonExhaustiveMatchError < StandardError
26
+ end
27
+ class Dry::Matcher::Evaluator < BasicObject
28
+ def call; end
29
+ def ensure_exhaustive_match; end
30
+ def initialize(result, cases); end
31
+ def method_missing(name, *args, &block); end
32
+ def respond_to_missing?(name, _include_private = nil); end
33
+ end
@@ -0,0 +1,508 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strong
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/dry-monads/all/dry-monads.rbi
9
+ #
10
+ # dry-monads-1.3.1
11
+ module Dry
12
+ end
13
+ module Dry::Monads
14
+ def self.Result(error, **options); end
15
+ def self.[](*monads); end
16
+ def self.all_loaded?; end
17
+ def self.constructors; end
18
+ def self.included(base); end
19
+ def self.known_monads; end
20
+ def self.load_monad(name); end
21
+ def self.register_mixin(name, mod); end
22
+ def self.registry; end
23
+ def self.registry=(registry); end
24
+ extend Dry::Monads::Maybe::Mixin::Constructors
25
+ extend Dry::Monads::Maybe::Mixin::Constructors
26
+ extend Dry::Monads::Result::Mixin::Constructors
27
+ extend Dry::Monads::Validated::Mixin::Constructors
28
+ end
29
+ module Dry::Monads::Curry
30
+ def self.call(value); end
31
+ end
32
+ class Dry::Monads::UnwrapError < StandardError
33
+ def initialize(ctx); end
34
+ end
35
+ class Dry::Monads::InvalidFailureTypeError < StandardError
36
+ def initialize(failure); end
37
+ end
38
+ class Dry::Monads::ConstructorNotAppliedError < NoMethodError
39
+ def initialize(method_name, constructor_name); end
40
+ end
41
+ module Dry::Monads::RightBiased
42
+ end
43
+ module Dry::Monads::RightBiased::Right
44
+ def ===(other); end
45
+ def and(mb); end
46
+ def apply(val = nil); end
47
+ def bind(*args, **kwargs); end
48
+ def curry; end
49
+ def deconstruct; end
50
+ def destructure(*args, **kwargs); end
51
+ def discard; end
52
+ def flatten; end
53
+ def fmap(*arg0); end
54
+ def or(*arg0); end
55
+ def or_fmap(*arg0); end
56
+ def self.included(m); end
57
+ def tee(*args, &block); end
58
+ def value!; end
59
+ def value_or(_val = nil); end
60
+ include Dry::Core::Constants
61
+ end
62
+ module Dry::Monads::RightBiased::Left
63
+ def and(_); end
64
+ def apply(*arg0); end
65
+ def bind(*arg0); end
66
+ def deconstruct; end
67
+ def discard; end
68
+ def flatten; end
69
+ def fmap(*arg0); end
70
+ def or(*arg0); end
71
+ def or_fmap(*arg0); end
72
+ def self.trace_caller; end
73
+ def tee(*arg0); end
74
+ def value!; end
75
+ def value_or(val = nil); end
76
+ end
77
+ module Dry::Monads::Transformer
78
+ def fmap2(*args); end
79
+ def fmap3(*args); end
80
+ end
81
+ class Dry::Monads::Maybe
82
+ def failure?; end
83
+ def monad; end
84
+ def none?; end
85
+ def self.coerce(value); end
86
+ def self.lift(*args, &block); end
87
+ def self.pure(value = nil, &block); end
88
+ def self.to_proc; end
89
+ def some?; end
90
+ def success?; end
91
+ def to_maybe; end
92
+ def to_monad; end
93
+ include Dry::Monads::Transformer
94
+ end
95
+ class Dry::Monads::Maybe::Some < Dry::Monads::Maybe
96
+ def fmap(*args, &block); end
97
+ def initialize(value = nil); end
98
+ def inspect; end
99
+ def maybe(*args, &block); end
100
+ def self.[](*value); end
101
+ def self.call(*arg0); end
102
+ def self.to_proc; end
103
+ def to_result(fail = nil, &block); end
104
+ def to_s; end
105
+ include Anonymous_Dry_Equalizer_1
106
+ include Dry::Equalizer::Methods
107
+ include Dry::Monads::RightBiased::Right
108
+ end
109
+ module Anonymous_Dry_Equalizer_1
110
+ def cmp?(comparator, other); end
111
+ def hash; end
112
+ def inspect; end
113
+ end
114
+ class Dry::Monads::Maybe::None < Dry::Monads::Maybe
115
+ def ==(other); end
116
+ def deconstruct; end
117
+ def eql?(other); end
118
+ def hash; end
119
+ def initialize(trace = nil); end
120
+ def inspect; end
121
+ def maybe(*arg0); end
122
+ def or(*args); end
123
+ def or_fmap(*args, &block); end
124
+ def self.instance; end
125
+ def self.method_missing(m, *arg1); end
126
+ def to_result(fail = nil, &block); end
127
+ def to_s; end
128
+ def trace; end
129
+ include Dry::Core::Constants
130
+ include Dry::Monads::RightBiased::Left
131
+ end
132
+ module Dry::Monads::Maybe::Mixin
133
+ include Dry::Monads::Maybe::Mixin::Constructors
134
+ end
135
+ module Dry::Monads::Maybe::Mixin::Constructors
136
+ def Maybe(value); end
137
+ def None; end
138
+ def Some(value = nil, &block); end
139
+ end
140
+ module Dry::Monads::Maybe::Hash
141
+ def self.all(hash, trace = nil); end
142
+ def self.filter(hash); end
143
+ end
144
+ class Dry::Monads::Result
145
+ def failure; end
146
+ def monad; end
147
+ def self.pure(value = nil, &block); end
148
+ def success; end
149
+ def to_monad; end
150
+ def to_result; end
151
+ include Anonymous_Module_2
152
+ include Dry::Monads::Transformer
153
+ end
154
+ class Dry::Monads::Result::Success < Dry::Monads::Result
155
+ def either(f, _); end
156
+ def failure?; end
157
+ def flip; end
158
+ def fmap(*args, &block); end
159
+ def initialize(value); end
160
+ def inspect; end
161
+ def result(_, f); end
162
+ def self.[](*value); end
163
+ def self.call(*arg0); end
164
+ def self.to_proc; end
165
+ def success; end
166
+ def success?; end
167
+ def to_maybe; end
168
+ def to_s; end
169
+ def to_validated; end
170
+ include Anonymous_Dry_Equalizer_3
171
+ include Dry::Equalizer::Methods
172
+ include Dry::Monads::RightBiased::Right
173
+ end
174
+ class Dry::Monads::Result::Failure < Dry::Monads::Result
175
+ def ===(other); end
176
+ def either(_, g); end
177
+ def failure; end
178
+ def failure?; end
179
+ def flip; end
180
+ def initialize(value, trace = nil); end
181
+ def inspect; end
182
+ def or(*args); end
183
+ def or_fmap(*args, &block); end
184
+ def result(f, _); end
185
+ def self.[](*value); end
186
+ def self.call(*arg0); end
187
+ def self.to_proc; end
188
+ def success?; end
189
+ def to_maybe; end
190
+ def to_s; end
191
+ def to_validated; end
192
+ def trace; end
193
+ def value_or(val = nil); end
194
+ include Anonymous_Dry_Equalizer_4
195
+ include Dry::Equalizer::Methods
196
+ include Dry::Monads::RightBiased::Left
197
+ end
198
+ class Dry::Monads::Task
199
+ def ==(other); end
200
+ def apply(val = nil); end
201
+ def bind(&block); end
202
+ def compare_promises(x, y); end
203
+ def complete?; end
204
+ def curry(value); end
205
+ def discard; end
206
+ def fmap(&block); end
207
+ def initialize(promise); end
208
+ def inspect; end
209
+ def monad; end
210
+ def or(&block); end
211
+ def or_fmap(&block); end
212
+ def promise; end
213
+ def self.[](executor, &block); end
214
+ def self.failed(exc); end
215
+ def self.new(promise = nil, &block); end
216
+ def self.pure(value = nil, &block); end
217
+ def then(&block); end
218
+ def to_maybe; end
219
+ def to_monad; end
220
+ def to_result; end
221
+ def to_s; end
222
+ def value!; end
223
+ def value_or(&block); end
224
+ def wait(timeout = nil); end
225
+ include Anonymous_Module_5
226
+ end
227
+ class Dry::Monads::Try
228
+ def error?; end
229
+ def exception; end
230
+ def failure?; end
231
+ def self.[](*exceptions, &block); end
232
+ def self.lift(*args, &block); end
233
+ def self.pure(value = nil, exceptions = nil, &block); end
234
+ def self.run(exceptions, f); end
235
+ def success?; end
236
+ def to_monad; end
237
+ def value?; end
238
+ include Anonymous_Module_6
239
+ end
240
+ class Dry::Monads::Try::Value < Dry::Monads::Try
241
+ def bind(*args); end
242
+ def bind_call(*args, **kwargs); end
243
+ def catchable; end
244
+ def fmap(*args, &block); end
245
+ def initialize(exceptions, value); end
246
+ def inspect; end
247
+ def self.call(*arg0); end
248
+ def self.to_proc; end
249
+ def to_maybe; end
250
+ def to_result; end
251
+ def to_s; end
252
+ include Anonymous_Dry_Equalizer_7
253
+ include Dry::Equalizer::Methods
254
+ include Dry::Monads::RightBiased::Right
255
+ end
256
+ class Dry::Monads::Try::Error < Dry::Monads::Try
257
+ def ===(other); end
258
+ def initialize(exception); end
259
+ def inspect; end
260
+ def or(*args); end
261
+ def self.call(*arg0); end
262
+ def to_maybe; end
263
+ def to_result; end
264
+ def to_s; end
265
+ include Anonymous_Dry_Equalizer_8
266
+ include Dry::Equalizer::Methods
267
+ include Dry::Monads::RightBiased::Left
268
+ end
269
+ class Dry::Monads::Validated
270
+ def bind(*arg0); end
271
+ def self.pure(value = nil, &block); end
272
+ def to_monad; end
273
+ include Anonymous_Module_9
274
+ end
275
+ class Dry::Monads::Validated::Valid < Dry::Monads::Validated
276
+ def ===(other); end
277
+ def alt_map(_ = nil); end
278
+ def apply(val = nil); end
279
+ def fmap(proc = nil, &block); end
280
+ def initialize(value); end
281
+ def inspect; end
282
+ def or(_ = nil); end
283
+ def to_maybe; end
284
+ def to_result; end
285
+ def to_s; end
286
+ def value!; end
287
+ include Anonymous_Dry_Equalizer_10
288
+ include Dry::Equalizer::Methods
289
+ end
290
+ class Dry::Monads::Validated::Invalid < Dry::Monads::Validated
291
+ def ===(other); end
292
+ def alt_map(proc = nil, &block); end
293
+ def apply(val = nil); end
294
+ def error; end
295
+ def fmap(_ = nil); end
296
+ def initialize(error, trace = nil); end
297
+ def inspect; end
298
+ def or(proc = nil, &block); end
299
+ def to_maybe; end
300
+ def to_result; end
301
+ def to_s; end
302
+ def trace; end
303
+ include Anonymous_Dry_Equalizer_11
304
+ include Dry::Equalizer::Methods
305
+ end
306
+ module Dry::Monads::ConversionStubs
307
+ def self.[](*method_names); end
308
+ end
309
+ module Dry::Monads::ConversionStubs::Methods
310
+ def self.to_maybe; end
311
+ def self.to_result; end
312
+ def self.to_validated; end
313
+ def to_maybe; end
314
+ def to_result; end
315
+ def to_validated; end
316
+ end
317
+ class Dry::Monads::Task::Promise < Concurrent::Promise
318
+ def on_fulfill(result); end
319
+ def on_reject(reason); end
320
+ end
321
+ module Anonymous_Module_5
322
+ def to_maybe(*arg0); end
323
+ def to_result(*arg0); end
324
+ end
325
+ module Dry::Monads::Task::Mixin
326
+ def self.[](executor); end
327
+ include Dry::Monads::Task::Mixin::Constructors
328
+ end
329
+ module Dry::Monads::Task::Mixin::Constructors
330
+ def Task(&block); end
331
+ end
332
+ module Anonymous_Module_2
333
+ def to_maybe(*arg0); end
334
+ def to_validated(*arg0); end
335
+ end
336
+ module Anonymous_Dry_Equalizer_3
337
+ def cmp?(comparator, other); end
338
+ def hash; end
339
+ def inspect; end
340
+ end
341
+ module Anonymous_Dry_Equalizer_4
342
+ def cmp?(comparator, other); end
343
+ def hash; end
344
+ def inspect; end
345
+ end
346
+ module Dry::Monads::Result::Mixin
347
+ include Dry::Monads::Result::Mixin::Constructors
348
+ end
349
+ module Dry::Monads::Result::Mixin::Constructors
350
+ def Failure(value = nil, &block); end
351
+ def Success(value = nil, &block); end
352
+ end
353
+ module Anonymous_Module_6
354
+ def to_maybe(*arg0); end
355
+ def to_result(*arg0); end
356
+ end
357
+ module Anonymous_Dry_Equalizer_7
358
+ def cmp?(comparator, other); end
359
+ def hash; end
360
+ def inspect; end
361
+ end
362
+ module Anonymous_Dry_Equalizer_8
363
+ def cmp?(comparator, other); end
364
+ def hash; end
365
+ def inspect; end
366
+ end
367
+ module Dry::Monads::Try::Mixin
368
+ def Error(error = nil, &block); end
369
+ def Value(value = nil, exceptions = nil, &block); end
370
+ include Dry::Monads::Try::Mixin::Constructors
371
+ end
372
+ module Dry::Monads::Try::Mixin::Constructors
373
+ def Try(*exceptions, &f); end
374
+ end
375
+ module Anonymous_Module_9
376
+ def to_maybe(*arg0); end
377
+ def to_result(*arg0); end
378
+ end
379
+ module Anonymous_Dry_Equalizer_10
380
+ def cmp?(comparator, other); end
381
+ def hash; end
382
+ def inspect; end
383
+ end
384
+ module Anonymous_Dry_Equalizer_11
385
+ def cmp?(comparator, other); end
386
+ def hash; end
387
+ def inspect; end
388
+ end
389
+ module Dry::Monads::Validated::Mixin
390
+ include Dry::Monads::Validated::Mixin::Constructors
391
+ end
392
+ module Dry::Monads::Validated::Mixin::Constructors
393
+ def Invalid(value = nil, &block); end
394
+ def Valid(value = nil, &block); end
395
+ end
396
+ class Dry::Monads::List
397
+ def +(other); end
398
+ def apply(list = nil); end
399
+ def bind(*args); end
400
+ def coerce(other); end
401
+ def collect; end
402
+ def deconstruct; end
403
+ def empty?; end
404
+ def filter; end
405
+ def first; end
406
+ def fmap(*args); end
407
+ def fold_left(initial); end
408
+ def fold_right(initial); end
409
+ def foldl(initial); end
410
+ def foldr(initial); end
411
+ def head; end
412
+ def initialize(value, type = nil); end
413
+ def inspect; end
414
+ def last; end
415
+ def map(&block); end
416
+ def monad; end
417
+ def reduce(initial); end
418
+ def reverse; end
419
+ def select; end
420
+ def self.[](*values); end
421
+ def self.coerce(value, type = nil); end
422
+ def self.pure(value = nil, type = nil, &block); end
423
+ def self.unfold(state, type = nil); end
424
+ def size; end
425
+ def sort; end
426
+ def tail; end
427
+ def to_a; end
428
+ def to_ary; end
429
+ def to_monad; end
430
+ def to_s; end
431
+ def traverse(proc = nil, &block); end
432
+ def type; end
433
+ def typed(type = nil); end
434
+ def typed?; end
435
+ def value; end
436
+ extend Anonymous_Dry_Core_Deprecations_Tagged_12
437
+ extend Dry::Core::Deprecations::Interface
438
+ include Anonymous_Dry_Equalizer_13
439
+ include Dry::Equalizer::Methods
440
+ include Dry::Monads::Transformer
441
+ end
442
+ module Anonymous_Dry_Core_Deprecations_Tagged_12
443
+ end
444
+ module Anonymous_Dry_Equalizer_13
445
+ def cmp?(comparator, other); end
446
+ def hash; end
447
+ def inspect; end
448
+ end
449
+ class Dry::Monads::List::ListBuilder
450
+ def [](*args); end
451
+ def coerce(value); end
452
+ def initialize(type); end
453
+ def pure(val = nil, &block); end
454
+ def self.[](*arg0); end
455
+ def type; end
456
+ end
457
+ module Dry::Monads::List::Mixin
458
+ def List(value); end
459
+ end
460
+ module Dry::Monads::Do
461
+ def self.coerce_to_monad(monads); end
462
+ def self.for(*methods); end
463
+ def self.halt(result); end
464
+ def self.included(base); end
465
+ def self.wrap_method(target, method_name); end
466
+ extend Dry::Monads::Do::Mixin
467
+ end
468
+ module Dry::Monads::Do::Mixin
469
+ def bind(monads); end
470
+ def call; end
471
+ end
472
+ class Dry::Monads::Do::Halt < StandardError
473
+ def initialize(result); end
474
+ def result; end
475
+ end
476
+ module Dry::Monads::Do::All
477
+ def self.included(base); end
478
+ extend Dry::Monads::Do::All::InstanceMixin
479
+ end
480
+ class Dry::Monads::Do::All::MethodTracker < Module
481
+ def extend_object(target); end
482
+ def initialize(wrappers); end
483
+ def wrap_method(target, method); end
484
+ def wrappers; end
485
+ end
486
+ module Dry::Monads::Do::All::InstanceMixin
487
+ def extended(object); end
488
+ end
489
+ class Dry::Monads::Lazy < Dry::Monads::Task
490
+ def force!; end
491
+ def force; end
492
+ def inspect; end
493
+ def self.[](executor, &block); end
494
+ def self.new(promise = nil, &block); end
495
+ def to_s; end
496
+ def value!; end
497
+ end
498
+ module Dry::Monads::Lazy::Mixin
499
+ include Dry::Monads::Lazy::Mixin::Constructors
500
+ end
501
+ module Dry::Monads::Lazy::Mixin::Constructors
502
+ def Lazy(&block); end
503
+ end
504
+ class Dry::Monads::Result::Fixed < Module
505
+ def included(base); end
506
+ def initialize(error, **options); end
507
+ def self.[](error, **options); end
508
+ end