packwerk 2.2.0 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +29 -20
- data/.github/workflows/cla.yml +22 -0
- data/.rubocop.yml +48 -19
- data/Gemfile +7 -2
- data/Gemfile.lock +202 -175
- data/README.md +1 -1
- data/RESOLVING_VIOLATIONS.md +81 -0
- data/Rakefile +1 -1
- data/USAGE.md +14 -5
- data/bin/m +1 -1
- data/bin/rake +1 -1
- data/bin/rubocop +1 -1
- data/bin/srb +1 -1
- data/bin/tapioca +1 -1
- data/gemfiles/Gemfile-rails-6-0 +1 -1
- data/gemfiles/Gemfile-rails-6-1 +22 -0
- data/lib/packwerk/application_load_paths.rb +1 -1
- data/lib/packwerk/application_validator.rb +7 -6
- data/lib/packwerk/association_inspector.rb +17 -15
- data/lib/packwerk/cache.rb +36 -29
- data/lib/packwerk/cli.rb +24 -20
- data/lib/packwerk/const_node_inspector.rb +8 -7
- data/lib/packwerk/constant_name_inspector.rb +2 -2
- data/lib/packwerk/deprecated_references.rb +40 -20
- data/lib/packwerk/file_processor.rb +14 -14
- data/lib/packwerk/files_for_processing.rb +27 -31
- data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
- data/lib/packwerk/formatters/progress_formatter.rb +2 -2
- data/lib/packwerk/node.rb +1 -294
- data/lib/packwerk/node_helpers.rb +335 -0
- data/lib/packwerk/node_processor.rb +6 -5
- data/lib/packwerk/node_processor_factory.rb +3 -3
- data/lib/packwerk/node_visitor.rb +1 -1
- data/lib/packwerk/offense_collection.rb +27 -8
- data/lib/packwerk/offenses_formatter.rb +2 -2
- data/lib/packwerk/package.rb +3 -0
- data/lib/packwerk/package_set.rb +2 -0
- data/lib/packwerk/parse_run.rb +29 -20
- data/lib/packwerk/parsed_constant_definitions.rb +23 -20
- data/lib/packwerk/parsers/erb.rb +3 -3
- data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
- data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
- data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
- data/lib/packwerk/reference_checking/reference_checker.rb +3 -1
- data/lib/packwerk/reference_extractor.rb +51 -48
- data/lib/packwerk/reference_offense.rb +3 -27
- data/lib/packwerk/run_context.rb +9 -8
- data/lib/packwerk/spring_command.rb +1 -1
- data/lib/packwerk/version.rb +1 -1
- data/lib/packwerk.rb +1 -0
- data/packwerk.gemspec +5 -12
- data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
- data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
- data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
- data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
- data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
- data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
- data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
- data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
- data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
- data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
- data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
- data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
- data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
- data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
- data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
- data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
- data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
- data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
- data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
- data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
- data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
- data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
- data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
- data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
- data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
- data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
- data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
- data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
- data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
- data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
- data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
- data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
- data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
- data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
- data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
- data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
- data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
- data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
- data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
- data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
- data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
- data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
- data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
- data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
- data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
- data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
- data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
- data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
- data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
- data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
- data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
- data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
- data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
- data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
- data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
- data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
- data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
- data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
- data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
- data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
- data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
- data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
- data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
- data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
- data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
- data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
- data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
- data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
- data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
- data/sorbet/rbi/shims/psych.rbi +5 -0
- data/sorbet/tapioca/require.rb +2 -3
- metadata +91 -146
- data/.github/probots.yml +0 -2
- data/library.yml +0 -6
- data/service.yml +0 -1
- data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
- data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
- data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
- data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
- data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
- data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
- data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
- data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
- data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
- data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
- data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
- data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
- data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
- data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
- data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
- data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
- data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
- data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
- data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
- data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
- data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
- data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
- data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
- data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
- data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
- data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
- data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
- data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
- data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
- data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
- data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
- data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
- data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
- data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
- data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
- data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
- data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
- data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
- data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
- data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
- data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
- data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
- data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
- data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
- data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
- data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
- data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
- data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
- data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
- data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
- data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
- data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
- data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
- data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
- data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
- data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
- data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
- data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +0 -177
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `regexp_parser` gem.
|
|
3
|
-
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `rexml` gem.
|
|
3
|
-
# Please instead update this file by running `dev typecheck update`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `rubocop-ast` gem.
|
|
3
|
-
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `rubocop-performance` gem.
|
|
3
|
-
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `rubocop-sorbet` gem.
|
|
3
|
-
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `rubocop` gem.
|
|
3
|
-
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
-
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `smart_properties` gem.
|
|
3
|
-
# Please instead update this file by running `dev typecheck update`.
|
|
4
|
-
|
|
5
|
-
# typed: true
|
|
6
|
-
|
|
7
|
-
module SmartProperties
|
|
8
|
-
mixes_in_class_methods(::SmartProperties::ClassMethods)
|
|
9
|
-
|
|
10
|
-
def initialize(*args, &block); end
|
|
11
|
-
|
|
12
|
-
def [](name); end
|
|
13
|
-
def []=(name, value); end
|
|
14
|
-
|
|
15
|
-
class << self
|
|
16
|
-
|
|
17
|
-
private
|
|
18
|
-
|
|
19
|
-
def included(base); end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
class SmartProperties::AssignmentError < ::SmartProperties::Error
|
|
24
|
-
def initialize(sender, property, message); end
|
|
25
|
-
|
|
26
|
-
def property; end
|
|
27
|
-
def property=(_); end
|
|
28
|
-
def sender; end
|
|
29
|
-
def sender=(_); end
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
module SmartProperties::ClassMethods
|
|
33
|
-
def properties; end
|
|
34
|
-
|
|
35
|
-
protected
|
|
36
|
-
|
|
37
|
-
def property(name, options = T.unsafe(nil)); end
|
|
38
|
-
def property!(name, options = T.unsafe(nil)); end
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
class SmartProperties::ConfigurationError < ::SmartProperties::Error
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
class SmartProperties::ConstructorArgumentForwardingError < ::SmartProperties::Error
|
|
45
|
-
def initialize(positional_arguments, keyword_arguments); end
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
private
|
|
49
|
-
|
|
50
|
-
def generate_description(argument_type, argument_number); end
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
class SmartProperties::Error < ::ArgumentError
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
class SmartProperties::InitializationError < ::SmartProperties::Error
|
|
57
|
-
def initialize(sender, properties); end
|
|
58
|
-
|
|
59
|
-
def properties; end
|
|
60
|
-
def properties=(_); end
|
|
61
|
-
def sender; end
|
|
62
|
-
def sender=(_); end
|
|
63
|
-
def to_hash; end
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
class SmartProperties::InvalidValueError < ::SmartProperties::AssignmentError
|
|
67
|
-
def initialize(sender, property, value); end
|
|
68
|
-
|
|
69
|
-
def to_hash; end
|
|
70
|
-
def value; end
|
|
71
|
-
def value=(_); end
|
|
72
|
-
|
|
73
|
-
private
|
|
74
|
-
|
|
75
|
-
def accepter_message(sender, property); end
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
class SmartProperties::MissingValueError < ::SmartProperties::AssignmentError
|
|
79
|
-
def initialize(sender, property); end
|
|
80
|
-
|
|
81
|
-
def to_hash; end
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
class SmartProperties::Property
|
|
85
|
-
def initialize(name, attrs = T.unsafe(nil)); end
|
|
86
|
-
|
|
87
|
-
def accepter; end
|
|
88
|
-
def accepts?(value, scope); end
|
|
89
|
-
def convert(scope, value); end
|
|
90
|
-
def converter; end
|
|
91
|
-
def default(scope); end
|
|
92
|
-
def define(klass); end
|
|
93
|
-
def get(scope); end
|
|
94
|
-
def instance_variable_name; end
|
|
95
|
-
def missing?(scope); end
|
|
96
|
-
def name; end
|
|
97
|
-
def optional?(scope); end
|
|
98
|
-
def prepare(scope, value); end
|
|
99
|
-
def present?(scope); end
|
|
100
|
-
def reader; end
|
|
101
|
-
def required?(scope); end
|
|
102
|
-
def set(scope, value); end
|
|
103
|
-
def set_default(scope); end
|
|
104
|
-
def to_h; end
|
|
105
|
-
def writable; end
|
|
106
|
-
def writable?; end
|
|
107
|
-
|
|
108
|
-
private
|
|
109
|
-
|
|
110
|
-
def null_object?(object); end
|
|
111
|
-
|
|
112
|
-
class << self
|
|
113
|
-
def define(scope, name, options = T.unsafe(nil)); end
|
|
114
|
-
end
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
SmartProperties::Property::ALLOWED_DEFAULT_CLASSES = T.let(T.unsafe(nil), Array)
|
|
118
|
-
|
|
119
|
-
SmartProperties::Property::MODULE_REFERENCE = T.let(T.unsafe(nil), Symbol)
|
|
120
|
-
|
|
121
|
-
class SmartProperties::PropertyCollection
|
|
122
|
-
include(::Enumerable)
|
|
123
|
-
|
|
124
|
-
def initialize; end
|
|
125
|
-
|
|
126
|
-
def [](name); end
|
|
127
|
-
def []=(name, value); end
|
|
128
|
-
def each(&block); end
|
|
129
|
-
def key?(name); end
|
|
130
|
-
def keys; end
|
|
131
|
-
def parent; end
|
|
132
|
-
def register(child); end
|
|
133
|
-
def to_hash; end
|
|
134
|
-
def values; end
|
|
135
|
-
|
|
136
|
-
protected
|
|
137
|
-
|
|
138
|
-
def children; end
|
|
139
|
-
def children=(_); end
|
|
140
|
-
def collection; end
|
|
141
|
-
def collection=(_); end
|
|
142
|
-
def collection_with_parent_collection; end
|
|
143
|
-
def collection_with_parent_collection=(_); end
|
|
144
|
-
def notify_children; end
|
|
145
|
-
def refresh(parent_collection); end
|
|
146
|
-
|
|
147
|
-
class << self
|
|
148
|
-
def for(scope); end
|
|
149
|
-
end
|
|
150
|
-
end
|
|
151
|
-
|
|
152
|
-
SmartProperties::VERSION = T.let(T.unsafe(nil), String)
|
|
153
|
-
|
|
154
|
-
module SmartProperties::Validations
|
|
155
|
-
end
|
|
156
|
-
|
|
157
|
-
class SmartProperties::Validations::Ancestor
|
|
158
|
-
include(::SmartProperties)
|
|
159
|
-
extend(::SmartProperties::ClassMethods)
|
|
160
|
-
|
|
161
|
-
def to_proc; end
|
|
162
|
-
def to_s; end
|
|
163
|
-
def validate(klass); end
|
|
164
|
-
|
|
165
|
-
class << self
|
|
166
|
-
def must_be(*_); end
|
|
167
|
-
end
|
|
168
|
-
end
|