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,165 @@
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-struct/all/dry-struct.rbi
9
+ #
10
+ # dry-struct-1.1.1
11
+ module Dry
12
+ def self.Struct(attributes = nil, &block); end
13
+ end
14
+ class Dry::Struct
15
+ def [](name); end
16
+ def __attributes__; end
17
+ def __new__(changeset); end
18
+ def attributes; end
19
+ def initialize(attributes); end
20
+ def inspect; end
21
+ def new(changeset); end
22
+ def to_h; end
23
+ def to_hash; end
24
+ extend Anonymous_Module_42
25
+ extend Dry::Core::Extensions
26
+ extend Dry::Struct::ClassInterface
27
+ include Anonymous_Dry_Equalizer_41
28
+ include Dry::Core::Constants
29
+ include Dry::Equalizer::Methods
30
+ end
31
+ class Dry::Struct::Error < TypeError
32
+ end
33
+ class Dry::Struct::RepeatedAttributeError < ArgumentError
34
+ def initialize(key); end
35
+ end
36
+ class Dry::Struct::MissingAttributeError < KeyError
37
+ def initialize(key); end
38
+ end
39
+ class Dry::Struct::Constructor
40
+ def [](input); end
41
+ def call(input); end
42
+ def fn; end
43
+ def initialize(type, options = nil, &block); end
44
+ def type; end
45
+ include Anonymous_Dry_Equalizer_43
46
+ include Dry::Equalizer::Methods
47
+ include Dry::Types::Type
48
+ end
49
+ module Anonymous_Dry_Equalizer_43
50
+ def cmp?(comparator, other); end
51
+ def hash; end
52
+ def inspect; end
53
+ end
54
+ class Dry::Struct::Sum < Dry::Types::Sum::Constrained
55
+ def ===(value); end
56
+ def call(input); end
57
+ def try(input); end
58
+ def try_struct(input); end
59
+ def |(type); end
60
+ end
61
+ module Dry::Struct::ClassInterface
62
+ def ===(other); end
63
+ def attribute(name, type = nil, &block); end
64
+ def attribute?(*args, &block); end
65
+ def attribute_names; end
66
+ def attributes(new_schema); end
67
+ def build_type(name, type, &block); end
68
+ def call_safe(input, &block); end
69
+ def call_unsafe(input); end
70
+ def check_schema_duplication(new_keys); end
71
+ def constrained?; end
72
+ def constructor(constructor = nil, **_options, &block); end
73
+ def default?; end
74
+ def default_attributes(default_schema = nil); end
75
+ def failure(*args); end
76
+ def has_attribute?(key); end
77
+ def inherited(klass); end
78
+ def load(attributes); end
79
+ def meta(meta = nil); end
80
+ def new(attributes = nil, safe = nil); end
81
+ def optional?; end
82
+ def primitive; end
83
+ def primitive?(other); end
84
+ def result(klass, *args); end
85
+ def struct?(type); end
86
+ def struct_builder; end
87
+ def success(*args); end
88
+ def to_proc; end
89
+ def transform_keys(proc = nil, &block); end
90
+ def transform_types(proc = nil, &block); end
91
+ def try(input); end
92
+ def try_struct(input); end
93
+ def |(type); end
94
+ include Dry::Core::ClassAttributes
95
+ include Dry::Types::Builder
96
+ include Dry::Types::Type
97
+ end
98
+ module Dry::Struct::Hashify
99
+ def self.[](value); end
100
+ end
101
+ class Dry::Struct::StructBuilder < Dry::Types::Compiler
102
+ def array?(type); end
103
+ def call(attr_name, type, &block); end
104
+ def check_name(name); end
105
+ def const_name(type, attr_name); end
106
+ def default_superclass; end
107
+ def initialize(struct); end
108
+ def parent(type); end
109
+ def struct; end
110
+ def visit_array(node); end
111
+ def visit_constrained(node); end
112
+ def visit_constructor(node); end
113
+ def visit_nominal(*arg0); end
114
+ end
115
+ class Dry::Struct::Value < Dry::Struct
116
+ def self.new(*arg0); end
117
+ end
118
+ module Dry::Types
119
+ end
120
+ class Dry::Types::Printer
121
+ def visit_struct_sum(sum); end
122
+ end
123
+ module Anonymous_Dry_Equalizer_41
124
+ def cmp?(comparator, other); end
125
+ def hash; end
126
+ def inspect; end
127
+ end
128
+ module Anonymous_Module_42
129
+ def inherited(klass); end
130
+ def schema(value = nil); end
131
+ end
132
+ module CleanArchitecture
133
+ end
134
+ module CleanArchitecture::Builders
135
+ end
136
+ class RSpec::ExampleGroups::CleanArchitectureBuildersAbstractActiveRecordEntityBuilder < RSpec::Core::ExampleGroup
137
+ extend RSpec::Matchers::DSL
138
+ end
139
+ class CleanArchitecture::Builders::ExampleModel
140
+ def age; end
141
+ def attributes; end
142
+ def main_interest; end
143
+ def not_interested_in; end
144
+ def other_interests; end
145
+ end
146
+ class CleanArchitecture::Builders::ExampleInterestModel
147
+ def attributes; end
148
+ def initialize(label); end
149
+ def label; end
150
+ end
151
+ class CleanArchitecture::Builders::ExampleInterest < Dry::Struct
152
+ def initialize(attributes); end
153
+ def label; end
154
+ extend Dry::Core::DescendantsTracker
155
+ end
156
+ class CleanArchitecture::Builders::ExampleEntity < Dry::Struct
157
+ def forename; end
158
+ def initialize(attributes); end
159
+ def main_interest; end
160
+ def not_interested_in; end
161
+ def other_interests; end
162
+ def surname; end
163
+ def years_on_planet_earth; end
164
+ extend Dry::Core::DescendantsTracker
165
+ end
@@ -0,0 +1,688 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: true
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-types/all/dry-types.rbi
9
+ #
10
+ # dry-types-1.2.0
11
+ module Dry
12
+ def self.Types(*namespaces, default: nil, **aliases); end
13
+ end
14
+ module Dry::Types
15
+ def self.Rule(options); end
16
+ def self.[](name); end
17
+ def self.const_missing(const); end
18
+ def self.container; end
19
+ def self.identifier(klass); end
20
+ def self.included(*arg0); end
21
+ def self.module(*args, &block); end
22
+ def self.register(name, type = nil, &block); end
23
+ def self.registered?(class_or_identifier); end
24
+ def self.rule_compiler; end
25
+ def self.type_keys; end
26
+ def self.type_map; end
27
+ extend Anonymous_Dry_Core_Deprecations_Tagged_14
28
+ extend Anonymous_Dry_Core_Deprecations_Tagged_16
29
+ extend Anonymous_Dry_Core_Deprecations_Tagged_19
30
+ extend Anonymous_Module_15
31
+ extend Anonymous_Module_17
32
+ extend Anonymous_Module_18
33
+ extend Dry::Core::ClassAttributes
34
+ extend Dry::Core::ClassAttributes
35
+ extend Dry::Core::Deprecations::Interface
36
+ extend Dry::Core::Deprecations::Interface
37
+ extend Dry::Core::Deprecations::Interface
38
+ extend Dry::Core::Extensions
39
+ include Dry::Core::Constants
40
+ end
41
+ class Dry::Types::Container
42
+ def config; end
43
+ extend Dry::Configurable
44
+ extend Dry::Configurable::ClassMethods
45
+ include Dry::Container::Mixin
46
+ end
47
+ module Dry::Types::Type
48
+ def ===(input = nil); end
49
+ def [](input = nil, &block); end
50
+ def call(input = nil, &block); end
51
+ def safe(*args, &block); end
52
+ def valid?(input = nil); end
53
+ extend Anonymous_Dry_Core_Deprecations_Tagged_20
54
+ extend Dry::Core::Deprecations::Interface
55
+ end
56
+ module Anonymous_Dry_Core_Deprecations_Tagged_20
57
+ end
58
+ module Dry::Types::Printable
59
+ def inspect; end
60
+ def to_s; end
61
+ end
62
+ module Dry::Types::Options
63
+ def initialize(*args, **options); end
64
+ def options; end
65
+ def with(**new_options); end
66
+ end
67
+ module Dry::Types::Decorator
68
+ def __new__(type); end
69
+ def constrained?; end
70
+ def decorate?(response); end
71
+ def default?; end
72
+ def initialize(type, *arg1); end
73
+ def method_missing(meth, *args, &block); end
74
+ def optional; end
75
+ def respond_to_missing?(meth, include_private = nil); end
76
+ def to_proc; end
77
+ def try(input, &block); end
78
+ def type; end
79
+ include Dry::Types::Options
80
+ end
81
+ class Dry::Types::Default
82
+ def call_safe(input = nil, &block); end
83
+ def call_unsafe(input = nil); end
84
+ def constrained(*args); end
85
+ def default?; end
86
+ def evaluate; end
87
+ def initialize(type, value, **options); end
88
+ def self.[](value); end
89
+ def try(input); end
90
+ def valid?(value = nil); end
91
+ def value; end
92
+ include Anonymous_Dry_Equalizer_21
93
+ include Dry::Equalizer::Methods
94
+ include Dry::Types::Builder
95
+ include Dry::Types::Decorator
96
+ include Dry::Types::Printable
97
+ include Dry::Types::Type
98
+ end
99
+ class Dry::Types::Default::Callable < Dry::Types::Default
100
+ def evaluate; end
101
+ include Anonymous_Dry_Equalizer_22
102
+ include Dry::Equalizer::Methods
103
+ end
104
+ module Anonymous_Dry_Equalizer_22
105
+ def cmp?(comparator, other); end
106
+ def hash; end
107
+ end
108
+ module Anonymous_Dry_Equalizer_21
109
+ def cmp?(comparator, other); end
110
+ def hash; end
111
+ end
112
+ class Dry::Types::Constrained
113
+ def ===(value); end
114
+ def call_safe(input, &block); end
115
+ def call_unsafe(input); end
116
+ def constrained(options); end
117
+ def constrained?; end
118
+ def constructor_type; end
119
+ def decorate?(response); end
120
+ def initialize(type, options); end
121
+ def lax; end
122
+ def rule; end
123
+ def to_ast(meta: nil); end
124
+ def try(input, &block); end
125
+ include Anonymous_Dry_Equalizer_23
126
+ include Dry::Equalizer::Methods
127
+ include Dry::Types::Builder
128
+ include Dry::Types::Decorator
129
+ include Dry::Types::Printable
130
+ include Dry::Types::Type
131
+ end
132
+ class Dry::Types::Constrained::Coercible < Dry::Types::Constrained
133
+ def call_safe(input); end
134
+ def call_unsafe(input); end
135
+ def try(input, &block); end
136
+ end
137
+ module Anonymous_Dry_Equalizer_23
138
+ def cmp?(comparator, other); end
139
+ def hash; end
140
+ end
141
+ class Dry::Types::Enum
142
+ def call_safe(input, &block); end
143
+ def call_unsafe(input); end
144
+ def default(*arg0); end
145
+ def include?(input = nil); end
146
+ def initialize(type, options); end
147
+ def inspect; end
148
+ def inverted_mapping; end
149
+ def map_value(input); end
150
+ def mapping; end
151
+ def to_ast(meta: nil); end
152
+ def to_s; end
153
+ def try(input); end
154
+ def values; end
155
+ include Anonymous_Dry_Equalizer_24
156
+ include Dry::Equalizer::Methods
157
+ include Dry::Types::Builder
158
+ include Dry::Types::Decorator
159
+ include Dry::Types::Type
160
+ end
161
+ module Anonymous_Dry_Equalizer_24
162
+ def cmp?(comparator, other); end
163
+ def hash; end
164
+ end
165
+ class Dry::Types::Lax
166
+ def [](input); end
167
+ def call(input); end
168
+ def call_safe(input); end
169
+ def call_unsafe(input); end
170
+ def decorate?(response); end
171
+ def lax; end
172
+ def to_ast(meta: nil); end
173
+ def try(input, &block); end
174
+ include Anonymous_Dry_Equalizer_25
175
+ include Dry::Equalizer::Methods
176
+ include Dry::Types::Builder
177
+ include Dry::Types::Decorator
178
+ include Dry::Types::Printable
179
+ include Dry::Types::Type
180
+ end
181
+ module Anonymous_Dry_Equalizer_25
182
+ def cmp?(comparator, other); end
183
+ def hash; end
184
+ end
185
+ module Anonymous_Dry_Core_Deprecations_Tagged_14
186
+ end
187
+ module Anonymous_Module_15
188
+ def const_missing(missing); end
189
+ end
190
+ module Dry::Types::Meta
191
+ def initialize(*args, meta: nil, **options); end
192
+ def meta(data = nil); end
193
+ def pristine; end
194
+ def with(options); end
195
+ end
196
+ class Dry::Types::Sum
197
+ def call_safe(input, &block); end
198
+ def call_unsafe(input); end
199
+ def constrained(options); end
200
+ def constrained?; end
201
+ def default?; end
202
+ def failure(input, _error = nil); end
203
+ def initialize(left, right, options = nil); end
204
+ def left; end
205
+ def meta(data = nil); end
206
+ def name; end
207
+ def optional?; end
208
+ def primitive?(value); end
209
+ def right; end
210
+ def success(input); end
211
+ def to_ast(meta: nil); end
212
+ def to_proc; end
213
+ def try(input); end
214
+ include Anonymous_Dry_Equalizer_26
215
+ include Dry::Equalizer::Methods
216
+ include Dry::Types::Builder
217
+ include Dry::Types::Meta
218
+ include Dry::Types::Options
219
+ include Dry::Types::Printable
220
+ include Dry::Types::Type
221
+ end
222
+ module Anonymous_Dry_Equalizer_26
223
+ def cmp?(comparator, other); end
224
+ def hash; end
225
+ end
226
+ class Dry::Types::Sum::Constrained < Dry::Types::Sum
227
+ def constrained?; end
228
+ def rule; end
229
+ end
230
+ module Dry::Types::Builder
231
+ def constrained(options); end
232
+ def constrained_type; end
233
+ def constructor(constructor = nil, **options, &block); end
234
+ def constructor_type; end
235
+ def default(input = nil, options = nil, &block); end
236
+ def enum(*values); end
237
+ def lax; end
238
+ def optional; end
239
+ def |(other); end
240
+ include Dry::Core::Constants
241
+ end
242
+ class Dry::Types::Result
243
+ def initialize(input); end
244
+ def input; end
245
+ include Anonymous_Dry_Equalizer_27
246
+ include Dry::Equalizer::Methods
247
+ end
248
+ module Anonymous_Dry_Equalizer_27
249
+ def cmp?(comparator, other); end
250
+ def hash; end
251
+ end
252
+ class Dry::Types::Result::Success < Dry::Types::Result
253
+ def failure?; end
254
+ def success?; end
255
+ end
256
+ class Dry::Types::Result::Failure < Dry::Types::Result
257
+ def error; end
258
+ def failure?; end
259
+ def initialize(input, error); end
260
+ def success?; end
261
+ def to_s; end
262
+ include Anonymous_Dry_Equalizer_28
263
+ include Dry::Equalizer::Methods
264
+ end
265
+ module Anonymous_Dry_Equalizer_28
266
+ def cmp?(comparator, other); end
267
+ def hash; end
268
+ end
269
+ class Dry::Types::FnContainer
270
+ def self.[](fn_name); end
271
+ def self.container; end
272
+ def self.register(function = nil, &block); end
273
+ def self.register_name(function); end
274
+ end
275
+ class Dry::Types::Constructor < Dry::Types::Nominal
276
+ def <<(new_fn = nil, **options, &block); end
277
+ def >>(new_fn = nil, **options, &block); end
278
+ def append(new_fn = nil, **options, &block); end
279
+ def call_safe(input); end
280
+ def call_unsafe(input); end
281
+ def constrained_type; end
282
+ def constructor(new_fn = nil, **options, &block); end
283
+ def fn; end
284
+ def initialize(type, fn: nil, **options); end
285
+ def lax; end
286
+ def method_missing(method, *args, &block); end
287
+ def prepend(new_fn = nil, **options, &block); end
288
+ def respond_to_missing?(meth, include_private = nil); end
289
+ def self.new(input, **options, &block); end
290
+ def to_ast(meta: nil); end
291
+ def to_proc; end
292
+ def try(input, &block); end
293
+ def type; end
294
+ include Anonymous_Dry_Equalizer_29
295
+ include Dry::Equalizer::Methods
296
+ end
297
+ class Dry::Types::Constructor::Function
298
+ def <<(other); end
299
+ def >>(other); end
300
+ def [](input, &block); end
301
+ def call(input, &block); end
302
+ def fn; end
303
+ def initialize(fn); end
304
+ def self.[](fn); end
305
+ def self.yields_block?(fn); end
306
+ def to_ast; end
307
+ include Anonymous_Dry_Equalizer_30
308
+ include Dry::Equalizer::Methods
309
+ end
310
+ class Dry::Types::Constructor::Function::Safe < Dry::Types::Constructor::Function
311
+ def call(input, &block); end
312
+ end
313
+ class Dry::Types::Constructor::Function::MethodCall < Dry::Types::Constructor::Function
314
+ def initialize(fn); end
315
+ def name; end
316
+ def self.[](fn, safe); end
317
+ def self.call_class(method, public, safe); end
318
+ def target; end
319
+ def to_ast; end
320
+ end
321
+ class Dry::Types::Constructor::Function::MethodCall::PublicCall < Dry::Types::Constructor::Function::MethodCall
322
+ def self.call_interface(method, safe); end
323
+ end
324
+ class Dry::Types::Constructor::Function::MethodCall::PrivateCall < Dry::Types::Constructor::Function::MethodCall
325
+ def call(input, &block); end
326
+ end
327
+ class Dry::Types::Constructor::Function::MethodCall::PrivateSafeCall < Dry::Types::Constructor::Function::MethodCall::PrivateCall
328
+ def call(input, &block); end
329
+ end
330
+ module Anonymous_Dry_Equalizer_30
331
+ def cmp?(comparator, other); end
332
+ def hash; end
333
+ def inspect; end
334
+ end
335
+ module Anonymous_Dry_Equalizer_29
336
+ def cmp?(comparator, other); end
337
+ def hash; end
338
+ end
339
+ class Dry::Types::Array < Dry::Types::Nominal
340
+ def constructor_type; end
341
+ def of(type); end
342
+ end
343
+ class Dry::Types::Array::Constructor < Dry::Types::Constructor
344
+ def constructor_type; end
345
+ def lax; end
346
+ def of(member); end
347
+ end
348
+ class Dry::Types::Array::Member < Dry::Types::Array
349
+ def call_safe(input); end
350
+ def call_unsafe(input); end
351
+ def constructor_type; end
352
+ def initialize(primitive, options = nil); end
353
+ def lax; end
354
+ def member; end
355
+ def to_ast(meta: nil); end
356
+ def try(input, &block); end
357
+ end
358
+ class Dry::Types::Hash < Dry::Types::Nominal
359
+ def build_keys(type_map); end
360
+ def constructor_type; end
361
+ def key_name(key); end
362
+ def map(key_type, value_type); end
363
+ def permissive(*arg0); end
364
+ def resolve_type(type); end
365
+ def schema(keys_or_map, meta = nil); end
366
+ def strict(*arg0); end
367
+ def strict_with_defaults(*arg0); end
368
+ def symbolized(*arg0); end
369
+ def to_ast(meta: nil); end
370
+ def transform_types?; end
371
+ def weak(*arg0); end
372
+ def with_type_transform(proc = nil, &block); end
373
+ end
374
+ class Dry::Types::Hash::Constructor < Dry::Types::Constructor
375
+ def constructor_type; end
376
+ def lax; end
377
+ def schema(*args); end
378
+ end
379
+ class Dry::Types::Schema < Dry::Types::Hash
380
+ def apply(hash, options = nil); end
381
+ def call_safe(hash, options = nil); end
382
+ def call_unsafe(hash, options = nil); end
383
+ def constrained?; end
384
+ def each(&block); end
385
+ def initialize(_primitive, **options); end
386
+ def key(name, fallback = nil, &block); end
387
+ def key?(name); end
388
+ def keys; end
389
+ def lax; end
390
+ def merge_keys(*keys); end
391
+ def missing_key(key); end
392
+ def name_key_map; end
393
+ def resolve_missing_keys(hash, options); end
394
+ def resolve_safe(hash, options = nil, &block); end
395
+ def resolve_unsafe(hash, options = nil); end
396
+ def schema(keys_or_map); end
397
+ def strict(strict = nil); end
398
+ def strict?; end
399
+ def to_ast(meta: nil); end
400
+ def transform_key; end
401
+ def transform_keys?; end
402
+ def try(input); end
403
+ def unexpected_keys(hash_keys); end
404
+ def with_key_transform(proc = nil, &block); end
405
+ include Enumerable
406
+ end
407
+ class Dry::Types::Schema::Key
408
+ def call_safe(input, &block); end
409
+ def call_unsafe(input); end
410
+ def decorate?(response); end
411
+ def initialize(type, name, required: nil, **options); end
412
+ def lax; end
413
+ def meta(data = nil); end
414
+ def name; end
415
+ def omittable; end
416
+ def required(required = nil); end
417
+ def required?; end
418
+ def to_ast(meta: nil); end
419
+ def try(input, &block); end
420
+ extend Anonymous_Dry_Core_Deprecations_Tagged_31
421
+ extend Dry::Core::Deprecations::Interface
422
+ include Anonymous_Dry_Equalizer_32
423
+ include Dry::Equalizer::Methods
424
+ include Dry::Types::Builder
425
+ include Dry::Types::Decorator
426
+ include Dry::Types::Printable
427
+ include Dry::Types::Type
428
+ end
429
+ module Anonymous_Dry_Core_Deprecations_Tagged_31
430
+ end
431
+ module Anonymous_Dry_Equalizer_32
432
+ def cmp?(comparator, other); end
433
+ def hash; end
434
+ end
435
+ class Dry::Types::Map < Dry::Types::Nominal
436
+ def call_safe(hash); end
437
+ def call_unsafe(hash); end
438
+ def coerce(input); end
439
+ def constrained?; end
440
+ def initialize(_primitive, key_type: nil, value_type: nil, meta: nil); end
441
+ def key_type; end
442
+ def name; end
443
+ def to_ast(meta: nil); end
444
+ def try(hash); end
445
+ def value_type; end
446
+ end
447
+ class Dry::Types::Nominal
448
+ def call_safe(input); end
449
+ def call_unsafe(input); end
450
+ def coerce(input, &_block); end
451
+ def constrained?; end
452
+ def default?; end
453
+ def failure(input, error); end
454
+ def initialize(primitive, **options); end
455
+ def lax; end
456
+ def name; end
457
+ def optional?; end
458
+ def primitive; end
459
+ def primitive?(value); end
460
+ def self.[](primitive); end
461
+ def success(input); end
462
+ def to_ast(meta: nil); end
463
+ def to_proc; end
464
+ def try(input); end
465
+ def try_coerce(input); end
466
+ include Anonymous_Dry_Equalizer_33
467
+ include Dry::Equalizer::Methods
468
+ include Dry::Types::Builder
469
+ include Dry::Types::Meta
470
+ include Dry::Types::Options
471
+ include Dry::Types::Printable
472
+ include Dry::Types::Type
473
+ end
474
+ module Anonymous_Dry_Equalizer_33
475
+ def cmp?(comparator, other); end
476
+ def hash; end
477
+ end
478
+ module Anonymous_Dry_Core_Deprecations_Tagged_16
479
+ end
480
+ module Anonymous_Module_17
481
+ def const_missing(missing); end
482
+ end
483
+ module Dry::Types::BuilderMethods
484
+ def Array(type); end
485
+ def Constant(object); end
486
+ def Constructor(klass, cons = nil, &block); end
487
+ def Hash(type_map); end
488
+ def Instance(klass); end
489
+ def Interface(*methods); end
490
+ def Map(key_type, value_type); end
491
+ def Nominal(klass); end
492
+ def Strict(klass); end
493
+ def Value(value); end
494
+ def included(base); end
495
+ end
496
+ class Dry::Types::Module < Module
497
+ def check_parameters(*namespaces, default: nil, **aliases); end
498
+ def define_constants(constants, mod = nil); end
499
+ def initialize(registry, *args); end
500
+ def registry_tree; end
501
+ def type_constants(*namespaces, default: nil, **aliases); end
502
+ end
503
+ module Anonymous_Module_18
504
+ def inherited(klass); end
505
+ def namespace(value = nil); end
506
+ end
507
+ class Dry::Types::CoercionError < StandardError
508
+ def initialize(message, meta: nil, backtrace: nil); end
509
+ def meta; end
510
+ def self.handle(exception, meta: nil); end
511
+ end
512
+ class Dry::Types::MultipleError < Dry::Types::CoercionError
513
+ def errors; end
514
+ def initialize(errors); end
515
+ def message; end
516
+ def meta; end
517
+ end
518
+ class Dry::Types::SchemaError < Dry::Types::CoercionError
519
+ def initialize(key, value, result); end
520
+ end
521
+ class Dry::Types::MapError < Dry::Types::CoercionError
522
+ end
523
+ class Dry::Types::SchemaKeyError < Dry::Types::CoercionError
524
+ end
525
+ class Dry::Types::MissingKeyError < Dry::Types::SchemaKeyError
526
+ def initialize(key); end
527
+ def key; end
528
+ end
529
+ class Dry::Types::UnknownKeysError < Dry::Types::SchemaKeyError
530
+ def initialize(keys); end
531
+ def keys; end
532
+ end
533
+ class Dry::Types::ConstraintError < Dry::Types::CoercionError
534
+ def initialize(result, input); end
535
+ def input; end
536
+ def message; end
537
+ def result; end
538
+ def to_s; end
539
+ end
540
+ class Dry::Types::AnyClass < Dry::Types::Nominal
541
+ def initialize(**options); end
542
+ def name; end
543
+ def self.name; end
544
+ def to_ast(meta: nil); end
545
+ def with(new_options); end
546
+ end
547
+ module Dry::Types::Coercions
548
+ def empty_str?(value); end
549
+ def to_date(input, &block); end
550
+ def to_date_time(input, &block); end
551
+ def to_nil(input, &_block); end
552
+ def to_symbol(input, &block); end
553
+ def to_time(input, &block); end
554
+ include Dry::Core::Constants
555
+ end
556
+ module Dry::Types::Coercions::Params
557
+ def self.to_ary(input, &_block); end
558
+ def self.to_decimal(input, &block); end
559
+ def self.to_false(input, &_block); end
560
+ def self.to_float(input, &block); end
561
+ def self.to_hash(input, &_block); end
562
+ def self.to_int(input, &block); end
563
+ def self.to_true(input, &_block); end
564
+ extend Dry::Types::Coercions
565
+ end
566
+ module Dry::Types::Coercions::JSON
567
+ def self.to_decimal(input, &block); end
568
+ extend Dry::Types::Coercions
569
+ end
570
+ module Anonymous_Dry_Logic_Rule_Interface_34
571
+ def [](input0, input1); end
572
+ def call(input0, input1); end
573
+ end
574
+ class Dry::Logic::Rule::Predicate::Predicate2Arity < Dry::Logic::Rule::Predicate
575
+ include Anonymous_Dry_Logic_Rule_Interface_34
576
+ end
577
+ module Anonymous_Dry_Logic_Rule_Interface_35
578
+ def [](input0); end
579
+ def call(input0); end
580
+ def initialize(*arg0); end
581
+ end
582
+ class Dry::Logic::Rule::Predicate::Predicate2Arity1Curried < Dry::Logic::Rule::Predicate
583
+ include Anonymous_Dry_Logic_Rule_Interface_35
584
+ end
585
+ class Dry::Types::Printer
586
+ def call(type); end
587
+ def visit(type, &block); end
588
+ def visit_any(_); end
589
+ def visit_array(type); end
590
+ def visit_array_member(array); end
591
+ def visit_callable(callable); end
592
+ def visit_constrained(constrained); end
593
+ def visit_constructor(constructor); end
594
+ def visit_default(default); end
595
+ def visit_enum(enum); end
596
+ def visit_hash(hash); end
597
+ def visit_key(key); end
598
+ def visit_lax(lax); end
599
+ def visit_map(map); end
600
+ def visit_nominal(type); end
601
+ def visit_options(options, meta = nil); end
602
+ def visit_schema(schema); end
603
+ def visit_sum(sum); end
604
+ def visit_sum_constructors(sum); end
605
+ end
606
+ module Anonymous_Dry_Core_Deprecations_Tagged_19
607
+ end
608
+ class Dry::Types::Compiler
609
+ def call(ast); end
610
+ def compile_fn(fn); end
611
+ def initialize(registry); end
612
+ def registry; end
613
+ def visit(node); end
614
+ def visit_any(meta); end
615
+ def visit_array(node); end
616
+ def visit_constrained(node); end
617
+ def visit_constructor(node); end
618
+ def visit_enum(node); end
619
+ def visit_hash(node); end
620
+ def visit_json_array(node); end
621
+ def visit_json_hash(node); end
622
+ def visit_key(node); end
623
+ def visit_lax(node); end
624
+ def visit_map(node); end
625
+ def visit_nominal(node); end
626
+ def visit_params_array(node); end
627
+ def visit_params_hash(node); end
628
+ def visit_rule(node); end
629
+ def visit_safe(*args, &block); end
630
+ def visit_schema(node); end
631
+ def visit_sum(node); end
632
+ extend Anonymous_Dry_Core_Deprecations_Tagged_36
633
+ extend Dry::Core::Deprecations::Interface
634
+ end
635
+ module Anonymous_Dry_Core_Deprecations_Tagged_36
636
+ end
637
+ class Dry::Types::PredicateRegistry
638
+ def [](name); end
639
+ def has_predicate; end
640
+ def initialize(predicates = nil); end
641
+ def key?(name); end
642
+ def predicates; end
643
+ end
644
+ class Dry::Types::PredicateInferrer
645
+ def [](type); end
646
+ def compiler; end
647
+ def initialize(registry = nil); end
648
+ extend Dry::Core::Cache
649
+ include Dry::Core::Cache::Methods
650
+ end
651
+ class Dry::Types::PredicateInferrer::Compiler
652
+ def infer_predicate(type); end
653
+ def initialize(registry); end
654
+ def merge_predicates(nodes); end
655
+ def registry; end
656
+ def visit(node); end
657
+ def visit_and(node); end
658
+ def visit_any(_); end
659
+ def visit_array(_); end
660
+ def visit_constrained(node); end
661
+ def visit_constructor(node); end
662
+ def visit_enum(node); end
663
+ def visit_hash(_); end
664
+ def visit_lax(node); end
665
+ def visit_nominal(node); end
666
+ def visit_predicate(node); end
667
+ def visit_sum(node); end
668
+ end
669
+ class Dry::Types::PrimitiveInferrer
670
+ def [](type); end
671
+ def compiler; end
672
+ def initialize; end
673
+ extend Dry::Core::Cache
674
+ include Dry::Core::Cache::Methods
675
+ end
676
+ class Dry::Types::PrimitiveInferrer::Compiler
677
+ def visit(node); end
678
+ def visit_any(_); end
679
+ def visit_array(_); end
680
+ def visit_constrained(node); end
681
+ def visit_constructor(node); end
682
+ def visit_enum(node); end
683
+ def visit_hash(_); end
684
+ def visit_lax(node); end
685
+ def visit_nominal(node); end
686
+ def visit_schema(_); end
687
+ def visit_sum(node); end
688
+ end