sorbet-runtime 0.5.5947 → 0.5.5981

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: 79d9e2b12595ff5d144f7f07113c45abc79ea24209e513fd1da66ca37797c681
4
- data.tar.gz: 70483aa080d2f7bd0b137cf202cc9991db8d29230b6ecef2422caf87689210a5
3
+ metadata.gz: 6ef024ba1f18a831127692d0a593c97ab174b5565ea24d3ea71f92f039b7e4c5
4
+ data.tar.gz: 3acb33f46d6f6bffee8a16066b1930d01be3f1c1da8290924a8d2042e6802726
5
5
  SHA512:
6
- metadata.gz: b73c7d090d6f14aecea326821550f5082402009e794836758d6263f36068a4f8593ada7dd57b00474a078d1c03fdd56337b913ef56a2cf4294cca7377cc1366c
7
- data.tar.gz: 703295945449b6d30184a9f4192ba6768cb74486c071dcd4a839ab5fdd9cfe0279b72f12b59971f4d4214690710f94d450f6e7a483e785dd5ecfc4568fe36517
6
+ metadata.gz: 2ac2dc5dcab95f11d5fcd7aca8bfc34d731fa017b638cedda2995521f1526085122b552d3f2bb3312496170898e3284215237b37d88a14c91e6b143a27a8d5b8
7
+ data.tar.gz: 3ed25f0734e82849ae495c1b0511bb806ab6c7fe45e3ae186a6e4c25000f1448fb2bfaa5042e5eebbc2c706c5af031db158057b683fe6d2006827474f274ddcd
@@ -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.5947
4
+ version: 0.5.5981
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-15 00:00:00.000000000 Z
11
+ date: 2020-10-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest