clean-architecture 5.0.2 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +15 -19
  3. data/.gitignore +4 -0
  4. data/CHANGELOG.md +4 -0
  5. data/Gemfile +1 -0
  6. data/README.md +1 -585
  7. data/bin/tapioca +29 -0
  8. data/clean-architecture.gemspec +4 -4
  9. data/lib/clean-architecture.rb +4 -1
  10. data/lib/clean_architecture/adapters/all.rb +1 -1
  11. data/lib/clean_architecture/adapters/attribute_hash_base.rb +47 -20
  12. data/lib/clean_architecture/all.rb +1 -4
  13. data/lib/clean_architecture/builders/abstract_active_record_entity_builder.rb +43 -13
  14. data/lib/clean_architecture/builders/all.rb +1 -1
  15. data/lib/clean_architecture/checks/all.rb +1 -1
  16. data/lib/clean_architecture/checks/authorization.rb +11 -9
  17. data/lib/clean_architecture/entities/all.rb +1 -3
  18. data/lib/clean_architecture/entities/failure_details.rb +27 -17
  19. data/lib/clean_architecture/matchers/all.rb +1 -1
  20. data/lib/clean_architecture/matchers/use_case_result.rb +9 -3
  21. data/lib/clean_architecture/queries/all.rb +1 -1
  22. data/lib/clean_architecture/queries/http_failure_code.rb +8 -20
  23. data/lib/clean_architecture/queries/http_success_code.rb +14 -7
  24. data/lib/clean_architecture/serializers/all.rb +1 -1
  25. data/lib/clean_architecture/serializers/html_response_from_result.rb +7 -1
  26. data/lib/clean_architecture/serializers/json_response_from_result.rb +4 -4
  27. data/lib/clean_architecture/version.rb +1 -1
  28. data/nix/sources.json +14 -0
  29. data/nix/sources.nix +174 -0
  30. data/run_ci.sh +7 -0
  31. data/shell.nix +17 -12
  32. data/sorbet/config +4 -0
  33. data/sorbet/{rbi/gems → dry-monads-sorbet}/dry-monads.rbi +176 -94
  34. data/sorbet/rbi/gems/activemodel@6.1.4.1.rbi +1292 -0
  35. data/sorbet/rbi/gems/activerecord@6.1.4.1.rbi +8092 -0
  36. data/sorbet/rbi/gems/activesupport@6.1.4.1.rbi +3531 -0
  37. data/sorbet/rbi/gems/{ast.rbi → ast@2.4.2.rbi} +28 -22
  38. data/sorbet/rbi/gems/byebug@11.1.3.rbi +1568 -0
  39. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  40. data/sorbet/rbi/gems/concurrent-ruby@1.1.9.rbi +915 -0
  41. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  42. data/sorbet/rbi/gems/docile@1.4.0.rbi +54 -0
  43. data/sorbet/rbi/gems/dry-core@0.7.1.rbi +92 -0
  44. data/sorbet/rbi/gems/dry-equalizer@0.3.0.rbi +28 -0
  45. data/sorbet/rbi/gems/dry-matcher@0.9.0.rbi +56 -0
  46. data/sorbet/rbi/gems/dry-monads-sorbet@1.1.7.rbi +41 -0
  47. data/sorbet/rbi/gems/dry-monads@1.4.0.rbi +697 -0
  48. data/sorbet/rbi/gems/em-websocket@0.5.2.rbi +8 -0
  49. data/sorbet/rbi/gems/eventmachine@1.2.7.rbi +45 -0
  50. data/sorbet/rbi/gems/ffi@1.15.4.rbi +8 -0
  51. data/sorbet/rbi/gems/formatador@0.3.0.rbi +8 -0
  52. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +31 -0
  53. data/sorbet/rbi/gems/guard-livereload@2.5.2.rbi +8 -0
  54. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +211 -0
  55. data/sorbet/rbi/gems/guard@2.18.0.rbi +8 -0
  56. data/sorbet/rbi/gems/http_parser.rb@0.6.0.rbi +8 -0
  57. data/sorbet/rbi/gems/i18n@1.8.10.rbi +8 -0
  58. data/sorbet/rbi/gems/listen@3.7.0.rbi +8 -0
  59. data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +8 -0
  60. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  61. data/sorbet/rbi/gems/minitest@5.14.4.rbi +344 -0
  62. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +8 -0
  63. data/sorbet/rbi/gems/nenv@0.3.0.rbi +8 -0
  64. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +8 -0
  65. data/sorbet/rbi/gems/parallel@1.21.0.rbi +113 -0
  66. data/sorbet/rbi/gems/{parser.rbi → parser@3.0.2.0.rbi} +966 -699
  67. data/sorbet/rbi/gems/pry-byebug@3.9.0.rbi +461 -0
  68. data/sorbet/rbi/gems/{pry.rbi → pry@0.13.1.rbi} +2191 -1605
  69. data/sorbet/rbi/gems/{rainbow.rbi → rainbow@3.0.0.rbi} +90 -55
  70. data/sorbet/rbi/gems/{rake.rbi → rake@13.0.6.rbi} +578 -427
  71. data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
  72. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  73. data/sorbet/rbi/gems/rb-readline@0.5.5.rbi +884 -0
  74. data/sorbet/rbi/gems/rbi@0.0.6.rbi +1405 -0
  75. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +1120 -0
  76. data/sorbet/rbi/gems/{rexml.rbi → rexml@3.2.5.rbi} +562 -479
  77. data/sorbet/rbi/gems/{rspec-core.rbi → rspec-core@3.10.1.rbi} +2317 -1533
  78. data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1574 -0
  79. data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
  80. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
  81. data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
  82. data/sorbet/rbi/gems/rubocop-ast@1.12.0.rbi +1938 -0
  83. data/sorbet/rbi/gems/rubocop-rspec@2.5.0.rbi +1786 -0
  84. data/sorbet/rbi/gems/rubocop@1.22.1.rbi +13252 -0
  85. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  86. data/sorbet/rbi/gems/shellany@0.0.1.rbi +8 -0
  87. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  88. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  89. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.3.rbi +8 -0
  90. data/sorbet/rbi/gems/sorbet-struct-comparable@1.1.0.rbi +17 -0
  91. data/sorbet/rbi/gems/spoom@1.1.5.rbi +1241 -0
  92. data/sorbet/rbi/gems/stackprof@0.2.17.rbi +98 -0
  93. data/sorbet/rbi/gems/tapioca@0.5.2.rbi +949 -0
  94. data/sorbet/rbi/gems/thor@1.1.0.rbi +839 -0
  95. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +8 -0
  96. data/sorbet/rbi/gems/unicode-display_width@2.1.0.rbi +26 -0
  97. data/sorbet/rbi/gems/unparser@0.6.0.rbi +8 -0
  98. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +8 -0
  99. data/sorbet/tapioca/require.rb +9 -0
  100. metadata +88 -91
  101. data/.ruby-version +0 -1
  102. data/lib/clean_architecture/entities/targeted_parameters.rb +0 -24
  103. data/lib/clean_architecture/entities/untargeted_parameters.rb +0 -21
  104. data/lib/clean_architecture/interfaces/all.rb +0 -12
  105. data/lib/clean_architecture/interfaces/authorization_parameters.rb +0 -19
  106. data/lib/clean_architecture/interfaces/base_parameters.rb +0 -24
  107. data/lib/clean_architecture/interfaces/jsonable.rb +0 -16
  108. data/lib/clean_architecture/interfaces/targeted_parameters.rb +0 -19
  109. data/lib/clean_architecture/interfaces/use_case.rb +0 -20
  110. data/lib/clean_architecture/interfaces/use_case_actor.rb +0 -20
  111. data/lib/clean_architecture/interfaces/use_case_target.rb +0 -24
  112. data/lib/clean_architecture/types.rb +0 -8
  113. data/lib/clean_architecture/use_cases/abstract_use_case.rb +0 -63
  114. data/lib/clean_architecture/use_cases/all.rb +0 -10
  115. data/lib/clean_architecture/use_cases/contract.rb +0 -9
  116. data/lib/clean_architecture/use_cases/errors.rb +0 -58
  117. data/lib/clean_architecture/use_cases/form.rb +0 -116
  118. data/lib/clean_architecture/use_cases/parameters.rb +0 -43
  119. data/sorbet/rbi/gems/activemodel.rbi +0 -75
  120. data/sorbet/rbi/gems/activesupport.rbi +0 -440
  121. data/sorbet/rbi/gems/byebug.rbi +0 -1040
  122. data/sorbet/rbi/gems/coderay.rbi +0 -92
  123. data/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1586
  124. data/sorbet/rbi/gems/docile.rbi +0 -32
  125. data/sorbet/rbi/gems/dry-configurable.rbi +0 -139
  126. data/sorbet/rbi/gems/dry-container.rbi +0 -89
  127. data/sorbet/rbi/gems/dry-core.rbi +0 -80
  128. data/sorbet/rbi/gems/dry-equalizer.rbi +0 -26
  129. data/sorbet/rbi/gems/dry-inflector.rbi +0 -73
  130. data/sorbet/rbi/gems/dry-initializer.rbi +0 -209
  131. data/sorbet/rbi/gems/dry-logic.rbi +0 -305
  132. data/sorbet/rbi/gems/dry-matcher.rbi +0 -34
  133. data/sorbet/rbi/gems/dry-schema.rbi +0 -786
  134. data/sorbet/rbi/gems/dry-struct.rbi +0 -137
  135. data/sorbet/rbi/gems/dry-types.rbi +0 -709
  136. data/sorbet/rbi/gems/dry-validation.rbi +0 -288
  137. data/sorbet/rbi/gems/duckface-interfaces.rbi +0 -94
  138. data/sorbet/rbi/gems/i18n.rbi +0 -133
  139. data/sorbet/rbi/gems/jaro_winkler.rbi +0 -15
  140. data/sorbet/rbi/gems/method_source.rbi +0 -64
  141. data/sorbet/rbi/gems/parallel.rbi +0 -82
  142. data/sorbet/rbi/gems/pry-byebug.rbi +0 -155
  143. data/sorbet/rbi/gems/rb-readline.rbi +0 -767
  144. data/sorbet/rbi/gems/rspec-expectations.rbi +0 -398
  145. data/sorbet/rbi/gems/rspec-mocks.rbi +0 -816
  146. data/sorbet/rbi/gems/rspec-support.rbi +0 -271
  147. data/sorbet/rbi/gems/rspec.rbi +0 -15
  148. data/sorbet/rbi/gems/rubocop-rspec.rbi +0 -922
  149. data/sorbet/rbi/gems/rubocop.rbi +0 -7319
  150. data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -305
  151. data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
  152. data/sorbet/rbi/gems/simplecov.rbi +0 -361
  153. data/sorbet/rbi/gems/stackprof.rbi +0 -52
  154. data/sorbet/rbi/gems/unicode-display_width.rbi +0 -17
  155. data/sorbet/rbi/hidden-definitions/errors.txt +0 -8580
  156. data/sorbet/rbi/hidden-definitions/hidden.rbi +0 -17036
  157. data/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -452
  158. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +0 -23
  159. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -979
  160. data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8684
  161. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -108
  162. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +0 -276
  163. data/sorbet/rbi/sorbet-typed/lib/ruby/all/gem.rbi +0 -4222
  164. data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  165. data/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  166. data/sorbet/rbi/todo.rbi +0 -10
@@ -1,111 +0,0 @@
1
- # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
- # srb rbi sorbet-typed
3
- #
4
- # If you would like to make changes to this file, great! Please upstream any changes you make here:
5
- #
6
- # https://github.com/sorbet/sorbet-typed/edit/master/lib/ruby/all/open3.rbi
7
- #
8
- # typed: strong
9
-
10
- module Open3
11
- sig do
12
- params(
13
- cmd: T.any(String, T::Array[String]),
14
- opts: T.untyped,
15
- block: T.nilable(T.proc.params(stdin: IO, stdout: IO, stderr: IO, wait_thr: Process::Waiter).void)
16
- ).returns([IO, IO, IO, Process::Waiter])
17
- end
18
- def self.popen3(*cmd, **opts, &block); end
19
-
20
- sig do
21
- params(
22
- cmd: T.any(String, T::Array[String]),
23
- opts: T.untyped,
24
- block: T.nilable(T.proc.params(stdin: IO, stdout: IO, wait_thr: Process::Waiter).void)
25
- ).returns([IO, IO, Process::Waiter])
26
- end
27
- def self.popen2(*cmd, **opts, &block); end
28
-
29
- sig do
30
- params(
31
- cmd: T.any(String, T::Array[String]),
32
- opts: T.untyped,
33
- block: T.nilable(T.proc.params(stdin: IO, stdout_and_stderr: IO, wait_thr: Process::Waiter).void)
34
- ).returns([IO, IO, Process::Waiter])
35
- end
36
- def self.popen2e(*cmd, **opts, &block); end
37
-
38
- sig do
39
- params(
40
- cmd: T.any(String, T::Array[String]),
41
- stdin_data: T.nilable(String),
42
- binmode: T.any(FalseClass, TrueClass),
43
- opts: T::Hash[Symbol, T.untyped]
44
- ).returns([String, String, Process::Status])
45
- end
46
- def self.capture3(*cmd, stdin_data: '', binmode: false, **opts); end
47
-
48
- sig do
49
- params(
50
- cmd: T.any(String, T::Array[String]),
51
- stdin_data: T.nilable(String),
52
- binmode: T.any(FalseClass, TrueClass),
53
- opts: T::Hash[Symbol, T.untyped]
54
- ).returns([String, Process::Status])
55
- end
56
- def self.capture2(*cmd, stdin_data: nil, binmode: false, **opts); end
57
-
58
- sig do
59
- params(
60
- cmd: T.any(String, T::Array[String]),
61
- stdin_data: T.nilable(String),
62
- binmode: T.any(FalseClass, TrueClass),
63
- opts: T::Hash[Symbol, T.untyped]
64
- ).returns([String, Process::Status])
65
- end
66
- def self.capture2e(*cmd, stdin_data: nil, binmode: false, **opts); end
67
-
68
- sig do
69
- params(
70
- cmds: T.any(String, T::Array[String]),
71
- opts: T.untyped,
72
- block: T.nilable(T.proc.params(first_stdin: IO, last_stdout: IO, wait_threads: T::Array[Process::Waiter]).void)
73
- ).returns([IO, IO, T::Array[Process::Waiter]])
74
- end
75
- def self.pipeline_rw(*cmds, **opts, &block); end
76
-
77
- sig do
78
- params(
79
- cmds: T.any(String, T::Array[String]),
80
- opts: T.untyped,
81
- block: T.nilable(T.proc.params(last_stdout: IO, wait_threads: T::Array[Process::Waiter]).void)
82
- ).returns([IO, T::Array[Process::Waiter]])
83
- end
84
- def self.pipeline_r(*cmds, **opts, &block); end
85
-
86
- sig do
87
- params(
88
- cmds: T.any(String, T::Array[String]),
89
- opts: T.untyped,
90
- block: T.nilable(T.proc.params(first_stdin: IO, wait_threads: T::Array[Process::Waiter]).void)
91
- ).returns([IO, T::Array[Process::Waiter]])
92
- end
93
- def self.pipeline_w(*cmds, **opts, &block); end
94
-
95
- sig do
96
- params(
97
- cmds: T.any(String, T::Array[String]),
98
- opts: T.untyped,
99
- block: T.nilable(T.proc.params(wait_threads: T::Array[Process::Waiter]).void)
100
- ).returns(T::Array[Process::Waiter])
101
- end
102
- def self.pipeline_start(*cmds, **opts, &block); end
103
-
104
- sig do
105
- params(
106
- cmds: T.any(String, T::Array[String]),
107
- opts: T.untyped
108
- ).returns(T::Array[Process::Status])
109
- end
110
- def self.pipeline(*cmds, **opts); end
111
- end
@@ -1,543 +0,0 @@
1
- # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
- # srb rbi sorbet-typed
3
- #
4
- # If you would like to make changes to this file, great! Please upstream any changes you make here:
5
- #
6
- # https://github.com/sorbet/sorbet-typed/edit/master/lib/ruby/all/resolv.rbi
7
- #
8
- # typed: strong
9
-
10
- class Resolv
11
- sig { params(name: String).returns(String) }
12
- def self.getaddress(name); end
13
-
14
- sig { params(name: String).returns(T::Array[String]) }
15
- def self.getaddresses(name); end
16
-
17
- sig { params(name: String, block: T.proc.params(address: String).void).void }
18
- def self.each_address(name, &block); end
19
-
20
- sig { params(address: String).returns(String) }
21
- def self.getname(address); end
22
-
23
- sig { params(address: String).returns(T::Array[String]) }
24
- def self.getnames(address); end
25
-
26
- sig { params(address: String, proc: T.proc.params(name: String).void).void }
27
- def self.each_name(address, &proc); end
28
-
29
- sig { params(resolvers: [Hosts, DNS]).void }
30
- def initialize(resolvers=[Hosts.new, DNS.new]); end
31
-
32
- sig { params(name: String).returns(String) }
33
- def getaddress(name); end
34
-
35
- sig { params(name: String).returns(T::Array[String]) }
36
- def getaddresses(name); end
37
-
38
- sig { params(name: String, block: T.proc.params(address: String).void).void }
39
- def each_address(name, &block); end
40
-
41
- sig { params(address: String).returns(String) }
42
- def getname(address); end
43
-
44
- sig { params(address: String).returns(T::Array[String]) }
45
- def getnames(address); end
46
-
47
- sig { params(address: String, proc: T.proc.params(name: String).void).void }
48
- def each_name(address, &proc); end
49
-
50
- class ResolvError < StandardError; end
51
- class ResolvTimeout < Timeout::Error; end
52
-
53
- class Hosts
54
- DefaultFileName = T.let(T.unsafe(nil), String)
55
-
56
- sig { params(filename: String).void }
57
- def initialize(filename = DefaultFileName); end
58
-
59
- sig { params(name: String).returns(String) }
60
- def getaddress(name); end
61
-
62
- sig { params(name: String).returns(T::Array[String]) }
63
- def getaddresses(name); end
64
-
65
- sig { params(name: String, block: T.proc.params(address: String).void).void }
66
- def each_address(name, &block); end
67
-
68
- sig { params(address: String).returns(String) }
69
- def getname(address); end
70
-
71
- sig { params(address: String).returns(T::Array[String]) }
72
- def getnames(address); end
73
-
74
- sig { params(address: String, proc: T.proc.params(name: String).void).void }
75
- def each_name(address, &proc); end
76
- end
77
-
78
- class DNS
79
- Port = T.let(T.unsafe(nil), Integer)
80
-
81
- UDPSize = T.let(T.unsafe(nil), Integer)
82
-
83
- sig do
84
- params(
85
- config_info: T.any(
86
- NilClass,
87
- String,
88
- { nameserver: T.any(String, T::Array[String]), search: T::Array[String], ndots: Integer },
89
- { nameserver_port: T::Array[[String, Integer]], search: T::Array[String], ndots: Integer }
90
- )
91
- ).returns(Resolv::DNS)
92
- end
93
- def self.open(config_info = nil); end
94
-
95
- sig do
96
- params(
97
- config_info: T.any(
98
- NilClass,
99
- String,
100
- { nameserver: T.any(String, T::Array[String]), search: T::Array[String], ndots: Integer },
101
- { nameserver_port: T::Array[[String, Integer]], search: T::Array[String], ndots: Integer }
102
- )
103
- ).void
104
- end
105
- def initialize(config_info = nil); end
106
-
107
- sig { params(values: T.any(NilClass, Integer, T::Array[Integer])).void }
108
- def timeouts=(values); end
109
-
110
- sig { void }
111
- def close; end
112
-
113
- sig { params(name: String).returns(String) }
114
- def getaddress(name); end
115
-
116
- sig { params(name: String).returns(T::Array[String]) }
117
- def getaddresses(name); end
118
-
119
- sig { params(name: String, block: T.proc.params(address: String).void).void }
120
- def each_address(name, &block); end
121
-
122
- sig { params(address: String).returns(String) }
123
- def getname(address); end
124
-
125
- sig { params(address: String).returns(T::Array[String]) }
126
- def getnames(address); end
127
-
128
- sig { params(address: String, proc: T.proc.params(name: String).void).void }
129
- def each_name(address, &proc); end
130
-
131
- sig do
132
- params(
133
- name: T.any(String, Resolv::DNS::Name),
134
- typeclass: T.class_of(Resolv::DNS::Resource)
135
- ).returns(Resolv::DNS::Resource)
136
- end
137
- def getresource(name, typeclass); end
138
-
139
- sig do
140
- params(
141
- name: T.any(String, Resolv::DNS::Name),
142
- typeclass: T.class_of(Resolv::DNS::Resource)
143
- ).returns(T::Array[Resolv::DNS::Resource])
144
- end
145
- def getresources(name, typeclass); end
146
-
147
- sig do
148
- params(
149
- name: T.any(String, Resolv::DNS::Name),
150
- typeclass: T.class_of(Resolv::DNS::Resource),
151
- proc: T.proc.params(resource: Resolv::DNS::Resource).void
152
- ).void
153
- end
154
- def each_resource(name, typeclass, &proc); end
155
-
156
- class DecodeError < StandardError; end
157
- class EncodeError < StandardError; end
158
-
159
- class Name
160
- sig { params(arg: T.any(String, Resolv::DNS::Name)).returns(Resolv::DNS::Name) }
161
- def self.create(arg); end
162
-
163
- sig { params(labels: T::Array[String], absolute: T.any(FalseClass, TrueClass)).void }
164
- def initialize(labels, absolute=true); end
165
-
166
- sig { returns(T.any(FalseClass, TrueClass)) }
167
- def absolute?; end
168
-
169
- sig { params(other: Resolv::DNS::Name).returns(T.any(FalseClass, TrueClass)) }
170
- def subdomain_of?(other); end
171
- end
172
-
173
- class Query; end
174
-
175
- class Resource < Query
176
- sig { returns(T.nilable(Integer)) }
177
- attr_reader :ttl
178
-
179
- sig { void }
180
- def initialize
181
- @ttl = T.let(T.unsafe(nil), T.nilable(Integer))
182
- end
183
-
184
- class Generic < Resource
185
- sig { params(data: T.untyped).void }
186
- def initialize(data)
187
- @data = T.let(T.unsafe(nil), T.untyped)
188
- end
189
-
190
- sig { returns(T.untyped) }
191
- attr_reader :data
192
- end
193
-
194
- class DomainName < Resource
195
- sig { params(name: String).void }
196
- def initialize(name)
197
- @name = T.let(T.unsafe(nil), String)
198
- end
199
-
200
- sig { returns(String) }
201
- attr_reader :name
202
- end
203
-
204
- class NS < DomainName; end
205
-
206
- class CNAME < DomainName; end
207
-
208
- class SOA < Resource
209
- sig do
210
- params(
211
- mname: String,
212
- rname: String,
213
- serial: Integer,
214
- refresh: Integer,
215
- retry_: Integer,
216
- expire: Integer,
217
- minimum: Integer
218
- ).void
219
- end
220
- def initialize(mname, rname, serial, refresh, retry_, expire, minimum)
221
- @mname = T.let(T.unsafe(nil), String)
222
- @rname = T.let(T.unsafe(nil), String)
223
- @serial = T.let(T.unsafe(nil), Integer)
224
- @refresh = T.let(T.unsafe(nil), Integer)
225
- @retry = T.let(T.unsafe(nil), Integer)
226
- @expire = T.let(T.unsafe(nil), Integer)
227
- @minimum = T.let(T.unsafe(nil), Integer)
228
- end
229
-
230
- sig { returns(String) }
231
- attr_reader :mname
232
-
233
- sig { returns(String) }
234
- attr_reader :rname
235
-
236
- sig { returns(Integer) }
237
- attr_reader :serial
238
-
239
- sig { returns(Integer) }
240
- attr_reader :refresh
241
-
242
- sig { returns(Integer) }
243
- attr_reader :retry
244
-
245
- sig { returns(Integer) }
246
- attr_reader :expire
247
-
248
- sig { returns(Integer) }
249
- attr_reader :minimum
250
- end
251
-
252
- class PTR < DomainName; end
253
-
254
- class HINFO < Resource
255
- sig { params(cpu: String, os: String).void }
256
- def initialize(cpu, os)
257
- @cpu = T.let(T.unsafe(nil), String)
258
- @os = T.let(T.unsafe(nil), String)
259
- end
260
-
261
- sig { returns(String) }
262
- attr_reader :cpu
263
-
264
- sig { returns(String) }
265
- attr_reader :os
266
- end
267
-
268
- class MINFO < Resource
269
- sig { params(rmailbx: String, emailbx: String).void }
270
- def initialize(rmailbx, emailbx)
271
- @rmailbx = T.let(T.unsafe(nil), String)
272
- @emailbx = T.let(T.unsafe(nil), String)
273
- end
274
-
275
- sig { returns(String) }
276
- attr_reader :rmailbx
277
-
278
- sig { returns(String) }
279
- attr_reader :emailbx
280
- end
281
-
282
- class MX < Resource
283
- sig { params(preference: Integer, exchange: String).void }
284
- def initialize(preference, exchange)
285
- @preference = T.let(T.unsafe(nil), Integer)
286
- @exchange = T.let(T.unsafe(nil), String)
287
- end
288
-
289
- sig { returns(Integer) }
290
- attr_reader :preference
291
-
292
- sig { returns(String) }
293
- attr_reader :exchange
294
- end
295
-
296
- class TXT < Resource
297
- sig { params(first_string: String, rest_strings: String).void }
298
- def initialize(first_string, *rest_strings)
299
- @strings = T.let(T.unsafe(nil), T::Array[String])
300
- end
301
-
302
- sig { returns(T::Array[String]) }
303
- attr_reader :strings
304
-
305
- sig { returns(String) }
306
- def data; end
307
- end
308
-
309
- class LOC < Resource
310
- sig do
311
- params(
312
- version: String,
313
- ssize: T.any(String, Resolv::LOC::Size),
314
- hprecision: T.any(String, Resolv::LOC::Size),
315
- vprecision: T.any(String, Resolv::LOC::Size),
316
- latitude: T.any(String, Resolv::LOC::Coord),
317
- longitude: T.any(String, Resolv::LOC::Coord),
318
- altitude: T.any(String, Resolv::LOC::Alt)
319
- ).void
320
- end
321
- def initialize(version, ssize, hprecision, vprecision, latitude, longitude, altitude)
322
- @version = T.let(T.unsafe(nil), String)
323
- @ssize = T.let(T.unsafe(nil), Resolv::LOC::Size)
324
- @hprecision = T.let(T.unsafe(nil), Resolv::LOC::Size)
325
- @vprecision = T.let(T.unsafe(nil), Resolv::LOC::Size)
326
- @latitude = T.let(T.unsafe(nil), Resolv::LOC::Coord)
327
- @longitude = T.let(T.unsafe(nil), Resolv::LOC::Coord)
328
- @altitude = T.let(T.unsafe(nil), Resolv::LOC::Alt)
329
- end
330
-
331
- sig { returns(String) }
332
- attr_reader :version
333
-
334
- sig { returns(Resolv::LOC::Size) }
335
- attr_reader :ssize
336
-
337
- sig { returns(Resolv::LOC::Size) }
338
- attr_reader :hprecision
339
-
340
- sig { returns(Resolv::LOC::Size) }
341
- attr_reader :vprecision
342
-
343
- sig { returns(Resolv::LOC::Coord) }
344
- attr_reader :latitude
345
-
346
- sig { returns(Resolv::LOC::Coord) }
347
- attr_reader :longitude
348
-
349
- sig { returns(Resolv::LOC::Alt) }
350
- attr_reader :altitude
351
- end
352
-
353
- class ANY < Query; end
354
-
355
- module IN
356
- class A < Resource
357
- sig { params(address: String).void }
358
- def initialize(address)
359
- @address = T.let(T.unsafe(nil), Resolv::IPv4)
360
- end
361
-
362
- sig { returns(Resolv::IPv4) }
363
- attr_reader :address
364
- end
365
-
366
- class WKS < Resource
367
- sig { params(address: String, protocol: Integer, bitmap: String).void }
368
- def initialize(address, protocol, bitmap)
369
- @address = T.let(T.unsafe(nil), Resolv::IPv4)
370
- @protocol = T.let(T.unsafe(nil), Integer)
371
- @bitmap = T.let(T.unsafe(nil), String)
372
- end
373
-
374
- sig { returns(Resolv::IPv4) }
375
- attr_reader :address
376
-
377
- sig { returns(Integer) }
378
- attr_reader :protocol
379
-
380
- sig { returns(String) }
381
- attr_reader :bitmap
382
- end
383
-
384
- class AAAA < Resource
385
- sig { params(address: String).void }
386
- def initialize(address)
387
- @address = T.let(T.unsafe(nil), Resolv::IPv6)
388
- end
389
-
390
- sig { returns(Resolv::IPv6) }
391
- attr_reader :address
392
- end
393
-
394
- class SRV < Resource
395
- # Create a SRV resource record.
396
- #
397
- # See the documentation for #priority, #weight, #port and #target
398
- # for +priority+, +weight+, +port and +target+ respectively.
399
-
400
- sig do
401
- params(
402
- priority: T.any(Integer, String),
403
- weight: T.any(Integer, String),
404
- port: T.any(Integer, String),
405
- target: T.any(String, Resolv::DNS::Name)
406
- ).void
407
- end
408
- def initialize(priority, weight, port, target)
409
- @priority = T.let(T.unsafe(nil), Integer)
410
- @weight = T.let(T.unsafe(nil), Integer)
411
- @port = T.let(T.unsafe(nil), Integer)
412
- @target = T.let(T.unsafe(nil), Resolv::DNS::Name)
413
- end
414
-
415
- sig { returns(Integer) }
416
- attr_reader :priority
417
-
418
- sig { returns(Integer) }
419
- attr_reader :weight
420
-
421
- sig { returns(Integer) }
422
- attr_reader :port
423
-
424
- sig { returns(Resolv::DNS::Name) }
425
- attr_reader :target
426
- end
427
- end
428
- end
429
- end
430
-
431
- class IPv4
432
- Regex256 = T.let(T.unsafe(nil), Regexp)
433
- Regex = T.let(T.unsafe(nil), Regexp)
434
-
435
- sig { params(arg: T.any(String, Resolv::IPv4)).returns(Resolv::IPv4) }
436
- def self.create(arg); end
437
-
438
- sig { params(address: String).void }
439
- def initialize(address)
440
- @address = T.let(T.unsafe(nil), String)
441
- end
442
-
443
- sig { returns(String) }
444
- attr_reader :address
445
-
446
- sig { returns(DNS::Name) }
447
- def to_name; end
448
- end
449
-
450
- class IPv6
451
- Regex_8Hex = T.let(T.unsafe(nil), Regexp)
452
- Regex_CompressedHex = T.let(T.unsafe(nil), Regexp)
453
- Regex_6Hex4Dec = T.let(T.unsafe(nil), Regexp)
454
- Regex_CompressedHex4Dec = T.let(T.unsafe(nil), Regexp)
455
- Regex = T.let(T.unsafe(nil), Regexp)
456
-
457
- sig { params(arg: T.any(String, Resolv::IPv6)).returns(Resolv::IPv6) }
458
- def self.create(arg); end
459
-
460
- sig { params(address: String).void }
461
- def initialize(address)
462
- @address = T.let(T.unsafe(nil), String)
463
- end
464
-
465
- sig { returns(String) }
466
- attr_reader :address
467
-
468
- sig { returns(DNS::Name) }
469
- def to_name; end
470
- end
471
-
472
- class MDNS < DNS
473
- Port = T.let(T.unsafe(nil), Integer)
474
- AddressV4 = T.let(T.unsafe(nil), String)
475
- AddressV6 = T.let(T.unsafe(nil), String)
476
- Addresses = T.let(T.unsafe(nil), [[String, Integer], [String, Integer]])
477
-
478
- sig do
479
- params(
480
- config_info: T.any(
481
- NilClass,
482
- { nameserver: T.any(String, T::Array[String]), search: T::Array[String], ndots: Integer },
483
- { nameserver_port: T::Array[[String, Integer]], search: T::Array[String], ndots: Integer }
484
- )
485
- ).void
486
- end
487
- def initialize(config_info = nil); end
488
- end
489
-
490
- module LOC
491
- class Size
492
- Regex = T.let(T.unsafe(nil), Regexp)
493
-
494
- sig { params(arg: T.any(String, Resolv::LOC::Size)).returns(Resolv::LOC::Size) }
495
- def self.create(arg); end
496
-
497
- sig { params(scalar: String).void }
498
- def initialize(scalar)
499
- @scalar = T.let(T.unsafe(nil), String)
500
- end
501
-
502
- sig { returns(String) }
503
- attr_reader :scalar
504
- end
505
-
506
- class Coord
507
- Regex = T.let(T.unsafe(nil), Regexp)
508
-
509
- sig { params(arg: T.any(String, Resolv::LOC::Coord)).returns(Resolv::LOC::Coord) }
510
- def self.create(arg); end
511
-
512
- sig { params(coordinates: String, orientation: T.enum(%w[lat lon])).void }
513
- def initialize(coordinates, orientation)
514
- @coordinates = T.let(T.unsafe(nil), String)
515
- @orientation = T.let(T.unsafe(nil), T.enum(%w[lat lon]))
516
- end
517
-
518
- sig { returns(String) }
519
- attr_reader :coordinates
520
-
521
- sig { returns(T.enum(%w[lat lon])) }
522
- attr_reader :orientation
523
- end
524
-
525
- class Alt
526
- Regex = T.let(T.unsafe(nil), Regexp)
527
-
528
- sig { params(arg: T.any(String, Resolv::LOC::Alt)).returns(Resolv::LOC::Alt) }
529
- def self.create(arg); end
530
-
531
- sig { params(altitude: String).void }
532
- def initialize(altitude)
533
- @altitude = T.let(T.unsafe(nil), String)
534
- end
535
-
536
- sig { returns(String) }
537
- attr_reader :altitude
538
- end
539
- end
540
-
541
- DefaultResolver = T.let(T.unsafe(nil), Resolv)
542
- AddressRegex = T.let(T.unsafe(nil), Regexp)
543
- end
data/sorbet/rbi/todo.rbi DELETED
@@ -1,10 +0,0 @@
1
- # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
- # srb rbi todo
3
-
4
- # typed: strong
5
- module ActiveSupport::ActionController::Base; end
6
- module T::Private::Methods::MethodHooks; end
7
- module T::Private::Methods::SingletonMethodHooks; end
8
- module Types::Strict::Hash; end
9
- module Types::Strict::Integer; end
10
- module Types::Strict::String; end