sorbet-runtime 0.5.5944 → 0.5.5973

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '080a7532b091399cd88d173ec4a413d7256f9c473f7f2ef4c06ce66e2d00fc48'
4
- data.tar.gz: 872bcea95c7823ba9ea28857cd30929ee0e865c3ca86859f6f220dd324c44f05
3
+ metadata.gz: 5383e963a03c14e2d2bdc94a08bf6f6eeb5cb13e33c3fdd66946aaf23bb8d5dd
4
+ data.tar.gz: c9e33313809f5fe8398153e6e6f728c5197b8b581d918c0410b6c2b830ee5d81
5
5
  SHA512:
6
- metadata.gz: 5a0b84c94036fa34184daba05100d58de4a476a24858f0cf6b9d8c5eeb620ecb7c062ae5daf6ec81f4c57bd02f119dc19e058d59d0fd78d14674c255d8c97495
7
- data.tar.gz: 58f859ae9162ab75b0005a70b8303a0d1ebe2b0acb111cb52395604b243e6a7d6c845199fa9cbf3703de3c72351016dde23669f512a6ec853db41f2723ed8a3c
6
+ metadata.gz: 733f96c2730d8b5503428ff6411af98633f56771d66dbff28892312d5691bbf0d62b81b3d75926573270319d6ef9cc6840c5448007c20dc53512694613a022a9
7
+ data.tar.gz: e442fbc0ca39cf499eec80723ed8ee48878ed8f6d01118f05f99b31ff6f042e752b2eb6d187c0fd59bb6681c13ae0fd2451bfc767078c2df914db4ad062fd948
@@ -251,7 +251,7 @@ class T::Enum
251
251
 
252
252
 
253
253
  sig {params(serialized_val: SerializedVal).void}
254
- private def initialize(serialized_val=nil)
254
+ def initialize(serialized_val=nil)
255
255
  raise 'T::Enum is abstract' if self.class == T::Enum
256
256
  if !self.class.started_initializing?
257
257
  raise "Must instantiate all enum values of #{self.class} inside 'enums do'."
@@ -7,6 +7,11 @@ module T::Private::Sealed
7
7
  super
8
8
  this_line = Kernel.caller.find {|line| !line.match(/in `inherited'$/)}
9
9
  T::Private::Sealed.validate_inheritance(this_line, self, 'inherited')
10
+ @sorbet_sealed_module_all_subclasses << other
11
+ end
12
+
13
+ def sealed_subclasses
14
+ @sorbet_sealed_module_all_subclasses
10
15
  end
11
16
  end
12
17
 
@@ -15,12 +20,21 @@ module T::Private::Sealed
15
20
  super
16
21
  this_line = Kernel.caller.find {|line| !line.match(/in `included'$/)}
17
22
  T::Private::Sealed.validate_inheritance(this_line, self, 'included')
23
+ @sorbet_sealed_module_all_subclasses << other
18
24
  end
19
25
 
20
26
  def extended(other)
21
27
  super
22
28
  this_line = Kernel.caller.find {|line| !line.match(/in `extended'$/)}
23
29
  T::Private::Sealed.validate_inheritance(this_line, self, 'extended')
30
+ @sorbet_sealed_module_all_subclasses << other
31
+ end
32
+
33
+ def sealed_subclasses
34
+ # this will freeze the set so that you can never get into a
35
+ # state where you use the subclasses list and then something
36
+ # else will add to it
37
+ @sorbet_sealed_module_all_subclasses.freeze
24
38
  end
25
39
  end
26
40
 
@@ -39,6 +53,7 @@ module T::Private::Sealed
39
53
  raise "Couldn't determine declaration file for sealed class."
40
54
  end
41
55
  mod.instance_variable_set(:@sorbet_sealed_module_decl_file, decl_file)
56
+ mod.instance_variable_set(:@sorbet_sealed_module_all_subclasses, Set.new)
42
57
  end
43
58
 
44
59
  def self.sealed_module?(mod)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sorbet-runtime
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5944
4
+ version: 0.5.5973
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-14 00:00:00.000000000 Z
11
+ date: 2020-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest