packwerk 2.1.1 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +29 -20
  3. data/.github/workflows/cla.yml +22 -0
  4. data/.rubocop.yml +48 -19
  5. data/Gemfile +7 -2
  6. data/Gemfile.lock +204 -177
  7. data/README.md +7 -2
  8. data/RESOLVING_VIOLATIONS.md +81 -0
  9. data/Rakefile +1 -1
  10. data/USAGE.md +14 -5
  11. data/bin/m +1 -1
  12. data/bin/rake +1 -1
  13. data/bin/rubocop +1 -1
  14. data/bin/srb +1 -1
  15. data/bin/tapioca +1 -1
  16. data/gemfiles/Gemfile-rails-6-0 +1 -1
  17. data/gemfiles/Gemfile-rails-6-1 +22 -0
  18. data/lib/packwerk/application_load_paths.rb +12 -18
  19. data/lib/packwerk/application_validator.rb +7 -6
  20. data/lib/packwerk/association_inspector.rb +17 -15
  21. data/lib/packwerk/cache.rb +36 -29
  22. data/lib/packwerk/cli.rb +14 -8
  23. data/lib/packwerk/const_node_inspector.rb +8 -7
  24. data/lib/packwerk/constant_name_inspector.rb +2 -2
  25. data/lib/packwerk/deprecated_references.rb +34 -19
  26. data/lib/packwerk/file_processor.rb +25 -23
  27. data/lib/packwerk/files_for_processing.rb +33 -35
  28. data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
  29. data/lib/packwerk/formatters/progress_formatter.rb +2 -2
  30. data/lib/packwerk/node.rb +1 -294
  31. data/lib/packwerk/node_helpers.rb +335 -0
  32. data/lib/packwerk/node_processor.rb +6 -5
  33. data/lib/packwerk/node_processor_factory.rb +3 -3
  34. data/lib/packwerk/node_visitor.rb +1 -1
  35. data/lib/packwerk/offense_collection.rb +6 -3
  36. data/lib/packwerk/offenses_formatter.rb +2 -2
  37. data/lib/packwerk/package.rb +3 -0
  38. data/lib/packwerk/package_set.rb +3 -1
  39. data/lib/packwerk/parse_run.rb +15 -13
  40. data/lib/packwerk/parsed_constant_definitions.rb +23 -20
  41. data/lib/packwerk/parsers/erb.rb +3 -3
  42. data/lib/packwerk/parsers/parser_interface.rb +2 -0
  43. data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
  44. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
  45. data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
  46. data/lib/packwerk/reference_checking/reference_checker.rb +4 -4
  47. data/lib/packwerk/reference_extractor.rb +51 -54
  48. data/lib/packwerk/reference_offense.rb +3 -27
  49. data/lib/packwerk/run_context.rb +9 -7
  50. data/lib/packwerk/spring_command.rb +1 -1
  51. data/lib/packwerk/version.rb +1 -1
  52. data/lib/packwerk.rb +1 -0
  53. data/packwerk.gemspec +4 -11
  54. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
  55. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
  56. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
  57. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
  58. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
  59. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
  60. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
  61. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
  62. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
  63. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
  64. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
  65. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
  66. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
  67. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  68. data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
  69. data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
  70. data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
  71. data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
  72. data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
  73. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
  74. data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
  75. data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
  76. data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
  77. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
  78. data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
  79. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
  80. data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
  81. data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
  82. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
  83. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
  84. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
  85. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
  86. data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
  87. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
  88. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
  89. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  90. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
  91. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
  92. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  93. data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
  94. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
  95. data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
  96. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
  97. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
  98. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
  99. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
  100. data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
  101. data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
  102. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
  103. data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
  104. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
  105. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
  106. data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
  107. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
  108. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
  109. data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
  110. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
  111. data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
  112. data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
  113. data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
  114. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
  115. data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
  116. data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
  117. data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
  118. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
  119. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
  120. data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
  121. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
  122. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
  123. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
  124. data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
  125. data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
  126. data/sorbet/rbi/shims/psych.rbi +5 -0
  127. data/sorbet/tapioca/require.rb +2 -3
  128. metadata +88 -143
  129. data/.github/probots.yml +0 -2
  130. data/library.yml +0 -6
  131. data/service.yml +0 -1
  132. data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
  133. data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
  134. data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
  135. data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
  136. data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
  137. data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
  138. data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
  139. data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
  140. data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
  141. data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
  142. data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
  143. data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
  144. data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
  145. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
  146. data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
  147. data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
  148. data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
  149. data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
  150. data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
  151. data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
  152. data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
  153. data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
  154. data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
  155. data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
  156. data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
  157. data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
  158. data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
  159. data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
  160. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
  161. data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
  162. data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
  163. data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
  164. data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
  165. data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
  166. data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
  167. data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
  168. data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
  169. data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
  170. data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
  171. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
  172. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
  173. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
  174. data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
  175. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
  176. data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
  177. data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
  178. data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
  179. data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
  180. data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
  181. data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
  182. data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
  183. data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
  184. data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
  185. data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
  186. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
  187. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
  188. data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
  189. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +0 -177
@@ -1,1248 +0,0 @@
1
- # DO NOT EDIT MANUALLY
2
- # This is an autogenerated file for types exported from the `activemodel` gem.
3
- # Please instead update this file by running `bin/tapioca sync`.
4
-
5
- # typed: true
6
-
7
- module ActiveModel
8
- extend(::ActiveSupport::Autoload)
9
-
10
- class << self
11
- def eager_load!; end
12
- def gem_version; end
13
- def version; end
14
- end
15
- end
16
-
17
- class ActiveModel::Attribute
18
- def initialize(name, value_before_type_cast, type, original_attribute = T.unsafe(nil), value = T.unsafe(nil)); end
19
-
20
- def ==(other); end
21
- def came_from_user?; end
22
- def changed?; end
23
- def changed_in_place?; end
24
- def encode_with(coder); end
25
- def eql?(other); end
26
- def forgetting_assignment; end
27
- def has_been_read?; end
28
- def hash; end
29
- def init_with(coder); end
30
- def initialized?; end
31
- def name; end
32
- def original_value; end
33
- def original_value_for_database; end
34
- def serializable?(&block); end
35
- def type; end
36
- def type_cast(*_arg0); end
37
- def value; end
38
- def value_before_type_cast; end
39
- def value_for_database; end
40
- def with_cast_value(value); end
41
- def with_type(type); end
42
- def with_value_from_database(value); end
43
- def with_value_from_user(value); end
44
-
45
- private
46
-
47
- def _original_value_for_database; end
48
- def assigned?; end
49
- def changed_from_assignment?; end
50
- def initialize_dup(other); end
51
- def original_attribute; end
52
-
53
- class << self
54
- def from_database(name, value_before_type_cast, type, value = T.unsafe(nil)); end
55
- def from_user(name, value_before_type_cast, type, original_attribute = T.unsafe(nil)); end
56
- def null(name); end
57
- def uninitialized(name, type); end
58
- def with_cast_value(name, value_before_type_cast, type); end
59
- end
60
- end
61
-
62
- class ActiveModel::Attribute::UserProvidedDefault < ::ActiveModel::Attribute
63
- def initialize(name, value, type, database_default); end
64
-
65
- def marshal_dump; end
66
- def marshal_load(values); end
67
- def value_before_type_cast; end
68
- def with_type(type); end
69
-
70
- private
71
-
72
- def user_provided_value; end
73
- end
74
-
75
- module ActiveModel::AttributeAssignment
76
- include(::ActiveModel::ForbiddenAttributesProtection)
77
-
78
- def assign_attributes(new_attributes); end
79
- def attributes=(new_attributes); end
80
-
81
- private
82
-
83
- def _assign_attribute(k, v); end
84
- def _assign_attributes(attributes); end
85
- end
86
-
87
- module ActiveModel::AttributeMethods
88
- extend(::ActiveSupport::Concern)
89
-
90
- mixes_in_class_methods(::ActiveModel::AttributeMethods::ClassMethods)
91
-
92
- def attribute_missing(match, *args, &block); end
93
- def method_missing(method, *args, &block); end
94
- def respond_to?(method, include_private_methods = T.unsafe(nil)); end
95
- def respond_to_without_attributes?(*_arg0); end
96
-
97
- private
98
-
99
- def _read_attribute(attr); end
100
- def attribute_method?(attr_name); end
101
- def matched_attribute_method(method_name); end
102
- def missing_attribute(attr_name, stack); end
103
- end
104
-
105
- module ActiveModel::AttributeMethods::AttrNames
106
- class << self
107
- def define_attribute_accessor_method(owner, attr_name, writer: T.unsafe(nil)); end
108
- end
109
- end
110
-
111
- ActiveModel::AttributeMethods::AttrNames::DEF_SAFE_NAME = T.let(T.unsafe(nil), Regexp)
112
-
113
- ActiveModel::AttributeMethods::CALL_COMPILABLE_REGEXP = T.let(T.unsafe(nil), Regexp)
114
-
115
- module ActiveModel::AttributeMethods::ClassMethods
116
- def alias_attribute(new_name, old_name); end
117
- def attribute_alias(name); end
118
- def attribute_alias?(new_name); end
119
- def attribute_method_affix(*affixes); end
120
- def attribute_method_prefix(*prefixes); end
121
- def attribute_method_suffix(*suffixes); end
122
- def define_attribute_method(attr_name, _owner: T.unsafe(nil)); end
123
- def define_attribute_methods(*attr_names); end
124
- def undefine_attribute_methods; end
125
-
126
- private
127
-
128
- def attribute_method_matchers_cache; end
129
- def attribute_method_matchers_matching(method_name); end
130
- def define_proxy_call(code_generator, name, target, *extra); end
131
- def generated_attribute_methods; end
132
- def instance_method_already_implemented?(method_name); end
133
- end
134
-
135
- class ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher
136
- def initialize(options = T.unsafe(nil)); end
137
-
138
- def match(method_name); end
139
- def method_name(attr_name); end
140
- def prefix; end
141
- def suffix; end
142
- def target; end
143
- end
144
-
145
- class ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher::AttributeMethodMatch < ::Struct
146
- def attr_name; end
147
- def attr_name=(_); end
148
- def target; end
149
- def target=(_); end
150
-
151
- class << self
152
- def [](*_arg0); end
153
- def inspect; end
154
- def members; end
155
- def new(*_arg0); end
156
- end
157
- end
158
-
159
- ActiveModel::AttributeMethods::NAME_COMPILABLE_REGEXP = T.let(T.unsafe(nil), Regexp)
160
-
161
- class ActiveModel::AttributeMutationTracker
162
- def initialize(attributes); end
163
-
164
- def any_changes?; end
165
- def change_to_attribute(attr_name); end
166
- def changed?(attr_name, from: T.unsafe(nil), to: T.unsafe(nil)); end
167
- def changed_attribute_names; end
168
- def changed_in_place?(attr_name); end
169
- def changed_values; end
170
- def changes; end
171
- def force_change(attr_name); end
172
- def forget_change(attr_name); end
173
- def original_value(attr_name); end
174
-
175
- private
176
-
177
- def attr_names; end
178
- def attribute_changed?(attr_name); end
179
- def attributes; end
180
- def fetch_value(attr_name); end
181
- def forced_changes; end
182
- end
183
-
184
- ActiveModel::AttributeMutationTracker::OPTION_NOT_GIVEN = T.let(T.unsafe(nil), Object)
185
-
186
- class ActiveModel::AttributeSet
187
- def initialize(attributes); end
188
-
189
- def ==(other); end
190
- def [](name); end
191
- def []=(name, value); end
192
- def accessed; end
193
- def deep_dup; end
194
- def each_value(*_arg0, &_arg1); end
195
- def except(*_arg0, &_arg1); end
196
- def fetch(*_arg0, &_arg1); end
197
- def fetch_value(name, &block); end
198
- def freeze; end
199
- def key?(name); end
200
- def keys; end
201
- def map(&block); end
202
- def reset(key); end
203
- def to_h; end
204
- def to_hash; end
205
- def values_before_type_cast; end
206
- def write_cast_value(name, value); end
207
- def write_from_database(name, value); end
208
- def write_from_user(name, value); end
209
-
210
- protected
211
-
212
- def attributes; end
213
-
214
- private
215
-
216
- def default_attribute(name); end
217
- def initialize_clone(_); end
218
- def initialize_dup(_); end
219
- end
220
-
221
- class ActiveModel::AttributeSet::Builder
222
- def initialize(types, default_attributes = T.unsafe(nil)); end
223
-
224
- def build_from_database(values = T.unsafe(nil), additional_types = T.unsafe(nil)); end
225
- def default_attributes; end
226
- def types; end
227
- end
228
-
229
- class ActiveModel::AttributeSet::YAMLEncoder
230
- def initialize(default_types); end
231
-
232
- def decode(coder); end
233
- def encode(attribute_set, coder); end
234
-
235
- private
236
-
237
- def default_types; end
238
- end
239
-
240
- module ActiveModel::Attributes
241
- extend(::ActiveSupport::Concern)
242
-
243
- include(::ActiveModel::AttributeMethods)
244
-
245
- mixes_in_class_methods(::ActiveModel::Attributes::ClassMethods)
246
-
247
- def initialize(*_arg0); end
248
-
249
- def attribute_names; end
250
- def attributes; end
251
- def freeze; end
252
-
253
- private
254
-
255
- def _write_attribute(attr_name, value); end
256
- def attribute(attr_name); end
257
- def attribute=(attr_name, value); end
258
- def initialize_dup(other); end
259
- end
260
-
261
- module ActiveModel::Attributes::ClassMethods
262
- def attribute(name, cast_type = T.unsafe(nil), default: T.unsafe(nil), **options); end
263
- def attribute_names; end
264
-
265
- private
266
-
267
- def define_default_attribute(name, value, type); end
268
- def define_method_attribute=(name, owner:); end
269
- end
270
-
271
- class ActiveModel::BlockValidator < ::ActiveModel::EachValidator
272
- def initialize(options, &block); end
273
-
274
-
275
- private
276
-
277
- def validate_each(record, attribute, value); end
278
- end
279
-
280
- module ActiveModel::Callbacks
281
- def define_model_callbacks(*callbacks); end
282
-
283
- private
284
-
285
- def _define_after_model_callback(klass, callback); end
286
- def _define_around_model_callback(klass, callback); end
287
- def _define_before_model_callback(klass, callback); end
288
-
289
- class << self
290
- def extended(base); end
291
- end
292
- end
293
-
294
- module ActiveModel::Conversion
295
- extend(::ActiveSupport::Concern)
296
-
297
- mixes_in_class_methods(::ActiveModel::Conversion::ClassMethods)
298
-
299
- def to_key; end
300
- def to_model; end
301
- def to_param; end
302
- def to_partial_path; end
303
- end
304
-
305
- module ActiveModel::Conversion::ClassMethods
306
- def _to_partial_path; end
307
- end
308
-
309
- class ActiveModel::DeprecationHandlingDetailsHash < ::SimpleDelegator
310
- def initialize(details); end
311
- end
312
-
313
- class ActiveModel::DeprecationHandlingMessageArray < ::SimpleDelegator
314
- def initialize(content, errors, attribute); end
315
-
316
- def <<(message); end
317
- def clear; end
318
- end
319
-
320
- class ActiveModel::DeprecationHandlingMessageHash < ::SimpleDelegator
321
- def initialize(errors); end
322
-
323
- def []=(attribute, value); end
324
- def delete(attribute); end
325
-
326
- private
327
-
328
- def prepare_content; end
329
- end
330
-
331
- module ActiveModel::Dirty
332
- extend(::ActiveSupport::Concern)
333
-
334
- include(::ActiveModel::AttributeMethods)
335
-
336
- def attribute_changed?(attr_name, **options); end
337
- def attribute_changed_in_place?(attr_name); end
338
- def attribute_previously_changed?(attr_name, **options); end
339
- def attribute_previously_was(attr_name); end
340
- def attribute_was(attr_name); end
341
- def changed; end
342
- def changed?; end
343
- def changed_attributes; end
344
- def changes; end
345
- def changes_applied; end
346
- def clear_attribute_changes(attr_names); end
347
- def clear_changes_information; end
348
- def previous_changes; end
349
- def restore_attributes(attr_names = T.unsafe(nil)); end
350
-
351
- private
352
-
353
- def attribute_change(attr_name); end
354
- def attribute_previous_change(attr_name); end
355
- def attribute_will_change!(attr_name); end
356
- def clear_attribute_change(attr_name); end
357
- def forget_attribute_assignments; end
358
- def initialize_dup(other); end
359
- def mutations_before_last_save; end
360
- def mutations_from_database; end
361
- def restore_attribute!(attr_name); end
362
- end
363
-
364
- class ActiveModel::EachValidator < ::ActiveModel::Validator
365
- def initialize(options); end
366
-
367
- def attributes; end
368
- def check_validity!; end
369
- def validate(record); end
370
- def validate_each(record, attribute, value); end
371
-
372
- private
373
-
374
- def prepare_value_for_validation(value, record, attr_name); end
375
- end
376
-
377
- class ActiveModel::Error
378
- def initialize(base, attribute, type = T.unsafe(nil), **options); end
379
-
380
- def ==(other); end
381
- def attribute; end
382
- def base; end
383
- def detail; end
384
- def details; end
385
- def eql?(other); end
386
- def full_message; end
387
- def hash; end
388
- def i18n_customize_full_message; end
389
- def i18n_customize_full_message=(_arg0); end
390
- def i18n_customize_full_message?; end
391
- def inspect; end
392
- def match?(attribute, type = T.unsafe(nil), **options); end
393
- def message; end
394
- def options; end
395
- def raw_type; end
396
- def strict_match?(attribute, type, **options); end
397
- def type; end
398
-
399
- protected
400
-
401
- def attributes_for_hash; end
402
-
403
- private
404
-
405
- def initialize_dup(other); end
406
-
407
- class << self
408
- def full_message(attribute, message, base); end
409
- def generate_message(attribute, type, base, options); end
410
- def i18n_customize_full_message; end
411
- def i18n_customize_full_message=(value); end
412
- def i18n_customize_full_message?; end
413
- end
414
- end
415
-
416
- ActiveModel::Error::CALLBACKS_OPTIONS = T.let(T.unsafe(nil), Array)
417
-
418
- ActiveModel::Error::MESSAGE_OPTIONS = T.let(T.unsafe(nil), Array)
419
-
420
- class ActiveModel::Errors
421
- include(::Enumerable)
422
- extend(::Forwardable)
423
-
424
- def initialize(base); end
425
-
426
- def [](attribute); end
427
- def add(attribute, type = T.unsafe(nil), **options); end
428
- def added?(attribute, type = T.unsafe(nil), options = T.unsafe(nil)); end
429
- def any?(*args, &block); end
430
- def as_json(options = T.unsafe(nil)); end
431
- def attribute_names; end
432
- def blank?(*args, &block); end
433
- def clear(*args, &block); end
434
- def copy!(other); end
435
- def count(*args, &block); end
436
- def delete(attribute, type = T.unsafe(nil), **options); end
437
- def details; end
438
- def each(&block); end
439
- def empty?(*args, &block); end
440
- def errors; end
441
- def full_message(attribute, message); end
442
- def full_messages; end
443
- def full_messages_for(attribute); end
444
- def generate_message(attribute, type = T.unsafe(nil), options = T.unsafe(nil)); end
445
- def group_by_attribute; end
446
- def has_key?(attribute); end
447
- def import(error, override_options = T.unsafe(nil)); end
448
- def include?(attribute); end
449
- def init_with(coder); end
450
- def key?(attribute); end
451
- def keys; end
452
- def marshal_load(array); end
453
- def merge!(other); end
454
- def messages; end
455
- def messages_for(attribute); end
456
- def objects; end
457
- def of_kind?(attribute, type = T.unsafe(nil)); end
458
- def size(*args, &block); end
459
- def slice!(*keys); end
460
- def to_a; end
461
- def to_h; end
462
- def to_hash(full_messages = T.unsafe(nil)); end
463
- def to_xml(options = T.unsafe(nil)); end
464
- def uniq!(*args, &block); end
465
- def values; end
466
- def where(attribute, type = T.unsafe(nil), **options); end
467
-
468
- private
469
-
470
- def add_from_legacy_details_hash(details); end
471
- def deprecation_removal_warning(method_name, alternative_message = T.unsafe(nil)); end
472
- def deprecation_rename_warning(old_method_name, new_method_name); end
473
- def initialize_dup(other); end
474
- def normalize_arguments(attribute, type, **options); end
475
- end
476
-
477
- class ActiveModel::ForbiddenAttributesError < ::StandardError
478
- end
479
-
480
- module ActiveModel::ForbiddenAttributesProtection
481
-
482
- private
483
-
484
- def sanitize_for_mass_assignment(attributes); end
485
- def sanitize_forbidden_attributes(attributes); end
486
- end
487
-
488
- class ActiveModel::ForcedMutationTracker < ::ActiveModel::AttributeMutationTracker
489
- def initialize(attributes); end
490
-
491
- def change_to_attribute(attr_name); end
492
- def changed_in_place?(attr_name); end
493
- def finalize_changes; end
494
- def force_change(attr_name); end
495
- def forget_change(attr_name); end
496
- def original_value(attr_name); end
497
-
498
- private
499
-
500
- def attr_names; end
501
- def attribute_changed?(attr_name); end
502
- def clone_value(attr_name); end
503
- def fetch_value(attr_name); end
504
- def finalized_changes; end
505
- end
506
-
507
- class ActiveModel::LazyAttributeHash
508
- def initialize(types, values, additional_types, default_attributes, delegate_hash = T.unsafe(nil)); end
509
-
510
- def ==(other); end
511
- def [](key); end
512
- def []=(key, value); end
513
- def deep_dup; end
514
- def each_key(&block); end
515
- def each_value(*_arg0, &_arg1); end
516
- def except(*_arg0, &_arg1); end
517
- def fetch(*_arg0, &_arg1); end
518
- def key?(key); end
519
- def marshal_dump; end
520
- def marshal_load(values); end
521
- def transform_values(*_arg0, &_arg1); end
522
-
523
- protected
524
-
525
- def materialize; end
526
-
527
- private
528
-
529
- def additional_types; end
530
- def assign_default_value(name); end
531
- def default_attributes; end
532
- def delegate_hash; end
533
- def initialize_dup(_); end
534
- def types; end
535
- def values; end
536
- end
537
-
538
- class ActiveModel::LazyAttributeSet < ::ActiveModel::AttributeSet
539
- def initialize(values, types, additional_types, default_attributes, attributes = T.unsafe(nil)); end
540
-
541
- def fetch_value(name, &block); end
542
- def key?(name); end
543
- def keys; end
544
-
545
- protected
546
-
547
- def attributes; end
548
-
549
- private
550
-
551
- def additional_types; end
552
- def default_attribute(name, value_present = T.unsafe(nil), value = T.unsafe(nil)); end
553
- def default_attributes; end
554
- def types; end
555
- def values; end
556
- end
557
-
558
- module ActiveModel::Lint
559
- end
560
-
561
- module ActiveModel::Lint::Tests
562
- def test_errors_aref; end
563
- def test_model_naming; end
564
- def test_persisted?; end
565
- def test_to_key; end
566
- def test_to_param; end
567
- def test_to_partial_path; end
568
-
569
- private
570
-
571
- def assert_boolean(result, name); end
572
- def model; end
573
- end
574
-
575
- class ActiveModel::MissingAttributeError < ::NoMethodError
576
- end
577
-
578
- module ActiveModel::Model
579
- include(::ActiveModel::ForbiddenAttributesProtection)
580
- include(::ActiveModel::AttributeAssignment)
581
- extend(::ActiveSupport::Concern)
582
-
583
- include(::ActiveSupport::Callbacks)
584
- include(::ActiveModel::Validations::HelperMethods)
585
- include(::ActiveModel::Validations)
586
- include(::ActiveModel::Conversion)
587
-
588
- def initialize(attributes = T.unsafe(nil)); end
589
-
590
- def persisted?; end
591
- end
592
-
593
- class ActiveModel::Name
594
- include(::Comparable)
595
-
596
- def initialize(klass, namespace = T.unsafe(nil), name = T.unsafe(nil), locale = T.unsafe(nil)); end
597
-
598
- def !~(*_arg0, &_arg1); end
599
- def <=>(*_arg0, &_arg1); end
600
- def ==(arg); end
601
- def ===(arg); end
602
- def =~(*_arg0, &_arg1); end
603
- def as_json(*_arg0, &_arg1); end
604
- def cache_key; end
605
- def collection; end
606
- def collection=(_arg0); end
607
- def element; end
608
- def element=(_arg0); end
609
- def eql?(*_arg0, &_arg1); end
610
- def human(options = T.unsafe(nil)); end
611
- def i18n_key; end
612
- def i18n_key=(_arg0); end
613
- def match?(*_arg0, &_arg1); end
614
- def name; end
615
- def name=(_arg0); end
616
- def param_key; end
617
- def param_key=(_arg0); end
618
- def plural; end
619
- def plural=(_arg0); end
620
- def route_key; end
621
- def route_key=(_arg0); end
622
- def singular; end
623
- def singular=(_arg0); end
624
- def singular_route_key; end
625
- def singular_route_key=(_arg0); end
626
- def to_s(*_arg0, &_arg1); end
627
- def to_str(*_arg0, &_arg1); end
628
- def uncountable?; end
629
-
630
- private
631
-
632
- def _singularize(string); end
633
- end
634
-
635
- module ActiveModel::Naming
636
- def model_name; end
637
-
638
- class << self
639
- def extended(base); end
640
- def param_key(record_or_class); end
641
- def plural(record_or_class); end
642
- def route_key(record_or_class); end
643
- def singular(record_or_class); end
644
- def singular_route_key(record_or_class); end
645
- def uncountable?(record_or_class); end
646
-
647
- private
648
-
649
- def model_name_from_record_or_class(record_or_class); end
650
- end
651
- end
652
-
653
- class ActiveModel::NestedError < ::ActiveModel::Error
654
- extend(::Forwardable)
655
-
656
- def initialize(base, inner_error, override_options = T.unsafe(nil)); end
657
-
658
- def inner_error; end
659
- def message(*args, &block); end
660
- end
661
-
662
- class ActiveModel::NullMutationTracker
663
- include(::Singleton)
664
- extend(::Singleton::SingletonClassMethods)
665
-
666
- def any_changes?; end
667
- def change_to_attribute(attr_name); end
668
- def changed?(attr_name, **_arg1); end
669
- def changed_attribute_names; end
670
- def changed_in_place?(attr_name); end
671
- def changed_values; end
672
- def changes; end
673
- def original_value(attr_name); end
674
- end
675
-
676
- class ActiveModel::Railtie < ::Rails::Railtie
677
- end
678
-
679
- class ActiveModel::RangeError < ::RangeError
680
- end
681
-
682
- module ActiveModel::SecurePassword
683
- extend(::ActiveSupport::Concern)
684
-
685
- mixes_in_class_methods(::ActiveModel::SecurePassword::ClassMethods)
686
-
687
- class << self
688
- def min_cost; end
689
- def min_cost=(_arg0); end
690
- end
691
- end
692
-
693
- module ActiveModel::SecurePassword::ClassMethods
694
- def has_secure_password(attribute = T.unsafe(nil), validations: T.unsafe(nil)); end
695
- end
696
-
697
- class ActiveModel::SecurePassword::InstanceMethodsOnActivation < ::Module
698
- def initialize(attribute); end
699
- end
700
-
701
- ActiveModel::SecurePassword::MAX_PASSWORD_LENGTH_ALLOWED = T.let(T.unsafe(nil), Integer)
702
-
703
- module ActiveModel::Serialization
704
- def read_attribute_for_serialization(*_arg0); end
705
- def serializable_hash(options = T.unsafe(nil)); end
706
-
707
- private
708
-
709
- def serializable_add_includes(options = T.unsafe(nil)); end
710
- def serializable_attributes(attribute_names); end
711
- end
712
-
713
- module ActiveModel::Serializers
714
- extend(::ActiveSupport::Autoload)
715
- end
716
-
717
- module ActiveModel::Serializers::JSON
718
- include(::ActiveModel::Serialization)
719
- extend(::ActiveSupport::Concern)
720
-
721
- mixes_in_class_methods(::ActiveModel::Naming)
722
-
723
- def as_json(options = T.unsafe(nil)); end
724
- def from_json(json, include_root = T.unsafe(nil)); end
725
- end
726
-
727
- class ActiveModel::StrictValidationFailed < ::StandardError
728
- end
729
-
730
- module ActiveModel::Translation
731
- include(::ActiveModel::Naming)
732
-
733
- def human_attribute_name(attribute, options = T.unsafe(nil)); end
734
- def i18n_scope; end
735
- def lookup_ancestors; end
736
- end
737
-
738
- module ActiveModel::Type
739
- class << self
740
- def default_value; end
741
- def lookup(*args, **kwargs); end
742
- def register(type_name, klass = T.unsafe(nil), **options, &block); end
743
- def registry; end
744
- def registry=(_arg0); end
745
- end
746
- end
747
-
748
- class ActiveModel::Type::BigInteger < ::ActiveModel::Type::Integer
749
-
750
- private
751
-
752
- def max_value; end
753
- end
754
-
755
- class ActiveModel::Type::Binary < ::ActiveModel::Type::Value
756
- def binary?; end
757
- def cast(value); end
758
- def changed_in_place?(raw_old_value, value); end
759
- def serialize(value); end
760
- def type; end
761
- end
762
-
763
- class ActiveModel::Type::Binary::Data
764
- def initialize(value); end
765
-
766
- def ==(other); end
767
- def hex; end
768
- def to_s; end
769
- def to_str; end
770
- end
771
-
772
- class ActiveModel::Type::Boolean < ::ActiveModel::Type::Value
773
- def serialize(value); end
774
- def type; end
775
-
776
- private
777
-
778
- def cast_value(value); end
779
- end
780
-
781
- ActiveModel::Type::Boolean::FALSE_VALUES = T.let(T.unsafe(nil), Set)
782
-
783
- class ActiveModel::Type::Date < ::ActiveModel::Type::Value
784
- include(::ActiveModel::Type::Helpers::Timezone)
785
- include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
786
-
787
- def type; end
788
- def type_cast_for_schema(value); end
789
-
790
- private
791
-
792
- def cast_value(value); end
793
- def fallback_string_to_date(string); end
794
- def fast_string_to_date(string); end
795
- def new_date(year, mon, mday); end
796
- def value_from_multiparameter_assignment(*_arg0); end
797
- end
798
-
799
- ActiveModel::Type::Date::ISO_DATE = T.let(T.unsafe(nil), Regexp)
800
-
801
- class ActiveModel::Type::DateTime < ::ActiveModel::Type::Value
802
- include(::ActiveModel::Type::Helpers::Timezone)
803
- include(::ActiveModel::Type::Helpers::TimeValue)
804
- include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
805
-
806
- def type; end
807
-
808
- private
809
-
810
- def cast_value(value); end
811
- def fallback_string_to_time(string); end
812
- def microseconds(time); end
813
- def value_from_multiparameter_assignment(values_hash); end
814
- end
815
-
816
- class ActiveModel::Type::Decimal < ::ActiveModel::Type::Value
817
- include(::ActiveModel::Type::Helpers::Numeric)
818
-
819
- def type; end
820
- def type_cast_for_schema(value); end
821
-
822
- private
823
-
824
- def apply_scale(value); end
825
- def cast_value(value); end
826
- def convert_float_to_big_decimal(value); end
827
- def float_precision; end
828
- end
829
-
830
- ActiveModel::Type::Decimal::BIGDECIMAL_PRECISION = T.let(T.unsafe(nil), Integer)
831
-
832
- class ActiveModel::Type::Float < ::ActiveModel::Type::Value
833
- include(::ActiveModel::Type::Helpers::Numeric)
834
-
835
- def type; end
836
- def type_cast_for_schema(value); end
837
-
838
- private
839
-
840
- def cast_value(value); end
841
- end
842
-
843
- module ActiveModel::Type::Helpers
844
- end
845
-
846
- class ActiveModel::Type::Helpers::AcceptsMultiparameterTime < ::Module
847
- def initialize(defaults: T.unsafe(nil)); end
848
- end
849
-
850
- module ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods
851
- def assert_valid_value(value); end
852
- def cast(value); end
853
- def serialize(value); end
854
- def value_constructed_by_mass_assignment?(value); end
855
- end
856
-
857
- module ActiveModel::Type::Helpers::Mutable
858
- def cast(value); end
859
- def changed_in_place?(raw_old_value, new_value); end
860
- end
861
-
862
- module ActiveModel::Type::Helpers::Numeric
863
- def cast(value); end
864
- def changed?(old_value, _new_value, new_value_before_type_cast); end
865
- def serialize(value); end
866
-
867
- private
868
-
869
- def non_numeric_string?(value); end
870
- def number_to_non_number?(old_value, new_value_before_type_cast); end
871
- end
872
-
873
- module ActiveModel::Type::Helpers::TimeValue
874
- def apply_seconds_precision(value); end
875
- def serialize(value); end
876
- def type_cast_for_schema(value); end
877
- def user_input_in_time_zone(value); end
878
-
879
- private
880
-
881
- def fast_string_to_time(string); end
882
- def new_time(year, mon, mday, hour, min, sec, microsec, offset = T.unsafe(nil)); end
883
- end
884
-
885
- ActiveModel::Type::Helpers::TimeValue::ISO_DATETIME = T.let(T.unsafe(nil), Regexp)
886
-
887
- module ActiveModel::Type::Helpers::Timezone
888
- def default_timezone; end
889
- def is_utc?; end
890
- end
891
-
892
- class ActiveModel::Type::ImmutableString < ::ActiveModel::Type::Value
893
- def initialize(**args); end
894
-
895
- def serialize(value); end
896
- def type; end
897
-
898
- private
899
-
900
- def cast_value(value); end
901
- end
902
-
903
- class ActiveModel::Type::Integer < ::ActiveModel::Type::Value
904
- include(::ActiveModel::Type::Helpers::Numeric)
905
-
906
- def initialize(**_arg0); end
907
-
908
- def deserialize(value); end
909
- def serializable?(value); end
910
- def serialize(value); end
911
- def type; end
912
-
913
- private
914
-
915
- def _limit; end
916
- def cast_value(value); end
917
- def ensure_in_range(value); end
918
- def in_range?(value); end
919
- def max_value; end
920
- def min_value; end
921
- def range; end
922
- end
923
-
924
- ActiveModel::Type::Integer::DEFAULT_LIMIT = T.let(T.unsafe(nil), Integer)
925
-
926
- class ActiveModel::Type::Registration
927
- def initialize(name, block, **_arg2); end
928
-
929
- def call(_registry, *args, **kwargs); end
930
- def matches?(type_name, *args, **kwargs); end
931
-
932
- private
933
-
934
- def block; end
935
- def name; end
936
- end
937
-
938
- class ActiveModel::Type::Registry
939
- def initialize; end
940
-
941
- def lookup(symbol, *args, **kwargs); end
942
- def register(type_name, klass = T.unsafe(nil), **options, &block); end
943
-
944
- private
945
-
946
- def find_registration(symbol, *args, **kwargs); end
947
- def initialize_dup(other); end
948
- def registration_klass; end
949
- def registrations; end
950
- end
951
-
952
- class ActiveModel::Type::String < ::ActiveModel::Type::ImmutableString
953
- def changed_in_place?(raw_old_value, new_value); end
954
- def to_immutable_string; end
955
-
956
- private
957
-
958
- def cast_value(value); end
959
- end
960
-
961
- class ActiveModel::Type::Time < ::ActiveModel::Type::Value
962
- include(::ActiveModel::Type::Helpers::Timezone)
963
- include(::ActiveModel::Type::Helpers::TimeValue)
964
- include(::ActiveModel::Type::Helpers::AcceptsMultiparameterTime::InstanceMethods)
965
-
966
- def type; end
967
- def user_input_in_time_zone(value); end
968
-
969
- private
970
-
971
- def cast_value(value); end
972
- end
973
-
974
- class ActiveModel::Type::Value
975
- def initialize(precision: T.unsafe(nil), limit: T.unsafe(nil), scale: T.unsafe(nil)); end
976
-
977
- def ==(other); end
978
- def assert_valid_value(_); end
979
- def binary?; end
980
- def cast(value); end
981
- def changed?(old_value, new_value, _new_value_before_type_cast); end
982
- def changed_in_place?(raw_old_value, new_value); end
983
- def deserialize(value); end
984
- def eql?(other); end
985
- def force_equality?(_value); end
986
- def hash; end
987
- def limit; end
988
- def map(value); end
989
- def precision; end
990
- def scale; end
991
- def serializable?(value); end
992
- def serialize(value); end
993
- def type; end
994
- def type_cast_for_schema(value); end
995
- def value_constructed_by_mass_assignment?(_value); end
996
-
997
- private
998
-
999
- def cast_value(value); end
1000
- end
1001
-
1002
- class ActiveModel::UnknownAttributeError < ::NoMethodError
1003
- def initialize(record, attribute); end
1004
-
1005
- def attribute; end
1006
- def record; end
1007
- end
1008
-
1009
- module ActiveModel::VERSION
1010
- end
1011
-
1012
- ActiveModel::VERSION::MAJOR = T.let(T.unsafe(nil), Integer)
1013
-
1014
- ActiveModel::VERSION::MINOR = T.let(T.unsafe(nil), Integer)
1015
-
1016
- ActiveModel::VERSION::PRE = T.let(T.unsafe(nil), String)
1017
-
1018
- ActiveModel::VERSION::STRING = T.let(T.unsafe(nil), String)
1019
-
1020
- ActiveModel::VERSION::TINY = T.let(T.unsafe(nil), Integer)
1021
-
1022
- class ActiveModel::ValidationError < ::StandardError
1023
- def initialize(model); end
1024
-
1025
- def model; end
1026
- end
1027
-
1028
- module ActiveModel::Validations
1029
- extend(::ActiveSupport::Concern)
1030
-
1031
- include(::ActiveSupport::Callbacks)
1032
- include(::ActiveModel::Validations::HelperMethods)
1033
-
1034
- mixes_in_class_methods(::ActiveModel::Validations::ClassMethods)
1035
-
1036
- def errors; end
1037
- def invalid?(context = T.unsafe(nil)); end
1038
- def read_attribute_for_validation(*_arg0); end
1039
- def valid?(context = T.unsafe(nil)); end
1040
- def validate(context = T.unsafe(nil)); end
1041
- def validate!(context = T.unsafe(nil)); end
1042
- def validates_with(*args, &block); end
1043
-
1044
- private
1045
-
1046
- def initialize_dup(other); end
1047
- def raise_validation_error; end
1048
- def run_validations!; end
1049
- end
1050
-
1051
- class ActiveModel::Validations::AbsenceValidator < ::ActiveModel::EachValidator
1052
- def validate_each(record, attr_name, value); end
1053
- end
1054
-
1055
- class ActiveModel::Validations::AcceptanceValidator < ::ActiveModel::EachValidator
1056
- def initialize(options); end
1057
-
1058
- def validate_each(record, attribute, value); end
1059
-
1060
- private
1061
-
1062
- def acceptable_option?(value); end
1063
- def setup!(klass); end
1064
- end
1065
-
1066
- class ActiveModel::Validations::AcceptanceValidator::LazilyDefineAttributes < ::Module
1067
- def initialize(attributes); end
1068
-
1069
- def ==(other); end
1070
- def define_on(klass); end
1071
- def included(klass); end
1072
- def matches?(method_name); end
1073
-
1074
- protected
1075
-
1076
- def attributes; end
1077
- end
1078
-
1079
- module ActiveModel::Validations::Callbacks
1080
- extend(::ActiveSupport::Concern)
1081
-
1082
- include(::ActiveSupport::Callbacks)
1083
-
1084
- mixes_in_class_methods(::ActiveModel::Validations::Callbacks::ClassMethods)
1085
-
1086
-
1087
- private
1088
-
1089
- def run_validations!; end
1090
- end
1091
-
1092
- module ActiveModel::Validations::Callbacks::ClassMethods
1093
- def after_validation(*args, &block); end
1094
- def before_validation(*args, &block); end
1095
-
1096
- private
1097
-
1098
- def set_options_for_callback(options); end
1099
- end
1100
-
1101
- module ActiveModel::Validations::ClassMethods
1102
- def attribute_method?(attribute); end
1103
- def clear_validators!; end
1104
- def inherited(base); end
1105
- def validate(*args, &block); end
1106
- def validates(*attributes); end
1107
- def validates!(*attributes); end
1108
- def validates_each(*attr_names, &block); end
1109
- def validates_with(*args, &block); end
1110
- def validators; end
1111
- def validators_on(*attributes); end
1112
-
1113
- private
1114
-
1115
- def _parse_validates_options(options); end
1116
- def _validates_default_keys; end
1117
- end
1118
-
1119
- ActiveModel::Validations::ClassMethods::VALID_OPTIONS_FOR_VALIDATE = T.let(T.unsafe(nil), Array)
1120
-
1121
- module ActiveModel::Validations::Clusivity
1122
- def check_validity!; end
1123
-
1124
- private
1125
-
1126
- def delimiter; end
1127
- def include?(record, value); end
1128
- def inclusion_method(enumerable); end
1129
- end
1130
-
1131
- ActiveModel::Validations::Clusivity::ERROR_MESSAGE = T.let(T.unsafe(nil), String)
1132
-
1133
- class ActiveModel::Validations::ConfirmationValidator < ::ActiveModel::EachValidator
1134
- def initialize(options); end
1135
-
1136
- def validate_each(record, attribute, value); end
1137
-
1138
- private
1139
-
1140
- def confirmation_value_equal?(record, attribute, value, confirmed); end
1141
- def setup!(klass); end
1142
- end
1143
-
1144
- class ActiveModel::Validations::ExclusionValidator < ::ActiveModel::EachValidator
1145
- include(::ActiveModel::Validations::Clusivity)
1146
-
1147
- def validate_each(record, attribute, value); end
1148
- end
1149
-
1150
- class ActiveModel::Validations::FormatValidator < ::ActiveModel::EachValidator
1151
- def check_validity!; end
1152
- def validate_each(record, attribute, value); end
1153
-
1154
- private
1155
-
1156
- def check_options_validity(name); end
1157
- def option_call(record, name); end
1158
- def record_error(record, attribute, name, value); end
1159
- def regexp_using_multiline_anchors?(regexp); end
1160
- end
1161
-
1162
- module ActiveModel::Validations::HelperMethods
1163
- def validates_absence_of(*attr_names); end
1164
- def validates_acceptance_of(*attr_names); end
1165
- def validates_confirmation_of(*attr_names); end
1166
- def validates_exclusion_of(*attr_names); end
1167
- def validates_format_of(*attr_names); end
1168
- def validates_inclusion_of(*attr_names); end
1169
- def validates_length_of(*attr_names); end
1170
- def validates_numericality_of(*attr_names); end
1171
- def validates_presence_of(*attr_names); end
1172
- def validates_size_of(*attr_names); end
1173
-
1174
- private
1175
-
1176
- def _merge_attributes(attr_names); end
1177
- end
1178
-
1179
- class ActiveModel::Validations::InclusionValidator < ::ActiveModel::EachValidator
1180
- include(::ActiveModel::Validations::Clusivity)
1181
-
1182
- def validate_each(record, attribute, value); end
1183
- end
1184
-
1185
- class ActiveModel::Validations::LengthValidator < ::ActiveModel::EachValidator
1186
- def initialize(options); end
1187
-
1188
- def check_validity!; end
1189
- def validate_each(record, attribute, value); end
1190
-
1191
- private
1192
-
1193
- def skip_nil_check?(key); end
1194
- end
1195
-
1196
- ActiveModel::Validations::LengthValidator::CHECKS = T.let(T.unsafe(nil), Hash)
1197
-
1198
- ActiveModel::Validations::LengthValidator::MESSAGES = T.let(T.unsafe(nil), Hash)
1199
-
1200
- ActiveModel::Validations::LengthValidator::RESERVED_OPTIONS = T.let(T.unsafe(nil), Array)
1201
-
1202
- class ActiveModel::Validations::NumericalityValidator < ::ActiveModel::EachValidator
1203
- def check_validity!; end
1204
- def validate_each(record, attr_name, value, precision: T.unsafe(nil), scale: T.unsafe(nil)); end
1205
-
1206
- private
1207
-
1208
- def allow_only_integer?(record); end
1209
- def filtered_options(value); end
1210
- def is_hexadecimal_literal?(raw_value); end
1211
- def is_integer?(raw_value); end
1212
- def is_number?(raw_value, precision, scale); end
1213
- def parse_as_number(raw_value, precision, scale, option = T.unsafe(nil)); end
1214
- def parse_float(raw_value, precision, scale); end
1215
- def prepare_value_for_validation(value, record, attr_name); end
1216
- def record_attribute_changed_in_place?(record, attr_name); end
1217
- def round(raw_value, scale); end
1218
- end
1219
-
1220
- ActiveModel::Validations::NumericalityValidator::CHECKS = T.let(T.unsafe(nil), Hash)
1221
-
1222
- ActiveModel::Validations::NumericalityValidator::HEXADECIMAL_REGEX = T.let(T.unsafe(nil), Regexp)
1223
-
1224
- ActiveModel::Validations::NumericalityValidator::INTEGER_REGEX = T.let(T.unsafe(nil), Regexp)
1225
-
1226
- ActiveModel::Validations::NumericalityValidator::RESERVED_OPTIONS = T.let(T.unsafe(nil), Array)
1227
-
1228
- class ActiveModel::Validations::PresenceValidator < ::ActiveModel::EachValidator
1229
- def validate_each(record, attr_name, value); end
1230
- end
1231
-
1232
- class ActiveModel::Validations::WithValidator < ::ActiveModel::EachValidator
1233
- def validate_each(record, attr, val); end
1234
- end
1235
-
1236
- class ActiveModel::Validator
1237
- def initialize(options = T.unsafe(nil)); end
1238
-
1239
- def kind; end
1240
- def options; end
1241
- def validate(record); end
1242
-
1243
- class << self
1244
- def kind; end
1245
- end
1246
- end
1247
-
1248
- ActiveModel::Attribute::Uninitialized::UNINITIALIZED_ORIGINAL_VALUE = T.let(T.unsafe(nil), Object)