sorbet-runtime 0.5.10601 → 0.5.10610

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: 7ef73639479af730e2041307064fca1aaa4ec6fbb2aa7dea3d1076d9ff56a66b
4
- data.tar.gz: 242703d8789436ff48a94e53ed887a826797c933422db9a16d0e86904cf465ee
3
+ metadata.gz: '09f0dcaac930ca77bf94edc96a31661f624a60a55215bbd31afb88bfe5ac8670'
4
+ data.tar.gz: ce66f1acac948108674e5d0265475d2ec2a4ee44141ba171eb56c0ef41abd341
5
5
  SHA512:
6
- metadata.gz: d975e1c1482e914374f24e4b3aae253e20d076874ae52ee67a5ea4495061e79e1f81760c361f231ae66d55ae876fa107386a708c09ceb3dbe913bd0b17fabd1c
7
- data.tar.gz: b4a7db8c9fa9c0aa52a8df8c1babc0f49127d630b9bcd5385fec590abc3351adc417a7b14bae496871763679360915a9c12e493c7e57ea9547fac63272d28b27
6
+ metadata.gz: dd587726bfabac805fa6685e594a1fbdf4e5319e55ceb4d64c7c433adc2c3a98d948782aa522afcad7b69603be7f0d200ff7e6f71f26b3ba7dcb7b57b0bc644c
7
+ data.tar.gz: 60b7b4dcbcd4727731688093a4d74e84a18c5d070039f7b7b3e2eda61fa128dba16176577d1d7fb591743759c95041aecffde7baf946b562c8986cbe972160b9
@@ -45,6 +45,7 @@ require_relative 'types/types/t_enum'
45
45
  require_relative 'types/types/type_parameter'
46
46
  require_relative 'types/types/typed_array'
47
47
  require_relative 'types/types/typed_enumerator'
48
+ require_relative 'types/types/typed_enumerator_chain'
48
49
  require_relative 'types/types/typed_enumerator_lazy'
49
50
  require_relative 'types/types/typed_hash'
50
51
  require_relative 'types/types/typed_range'
data/lib/types/_types.rb CHANGED
@@ -324,6 +324,16 @@ module T
324
324
  end
325
325
  end
326
326
  end
327
+
328
+ module Chain
329
+ def self.[](type)
330
+ if type.is_a?(T::Types::Untyped)
331
+ T::Types::TypedEnumeratorChain::Untyped.new
332
+ else
333
+ T::Types::TypedEnumeratorChain.new(type)
334
+ end
335
+ end
336
+ end
327
337
  end
328
338
 
329
339
  module Range
@@ -54,6 +54,9 @@ module T::Types
54
54
  when Enumerator::Lazy
55
55
  # Enumerators can be unbounded: see `[:foo, :bar].cycle`
56
56
  true
57
+ when Enumerator::Chain
58
+ # Enumerators can be unbounded: see `[:foo, :bar].cycle`
59
+ true
57
60
  when Enumerator
58
61
  # Enumerators can be unbounded: see `[:foo, :bar].cycle`
59
62
  true
@@ -145,6 +148,8 @@ module T::Types
145
148
  end
146
149
  when Enumerator::Lazy
147
150
  T::Enumerator::Lazy[type_from_instances(obj)]
151
+ when Enumerator::Chain
152
+ T::Enumerator::Chain[type_from_instances(obj)]
148
153
  when Enumerator
149
154
  T::Enumerator[type_from_instances(obj)]
150
155
  when Set
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+ # typed: true
3
+
4
+ module T::Types
5
+ class TypedEnumeratorChain < TypedEnumerable
6
+ attr_reader :type
7
+
8
+ def underlying_class
9
+ Enumerator::Chain
10
+ end
11
+
12
+ # overrides Base
13
+ def name
14
+ "T::Enumerator::Chain[#{@type.name}]"
15
+ end
16
+
17
+ # overrides Base
18
+ def recursively_valid?(obj)
19
+ obj.is_a?(Enumerator::Chain) && super
20
+ end
21
+
22
+ # overrides Base
23
+ def valid?(obj)
24
+ obj.is_a?(Enumerator::Chain)
25
+ end
26
+
27
+ def new(*args, &blk)
28
+ T.unsafe(Enumerator::Chain).new(*args, &blk)
29
+ end
30
+
31
+ class Untyped < TypedEnumeratorChain
32
+ def initialize
33
+ super(T.untyped)
34
+ end
35
+
36
+ def valid?(obj)
37
+ obj.is_a?(Enumerator::Chain)
38
+ end
39
+ end
40
+ end
41
+ end
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.10601
4
+ version: 0.5.10610
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-04 00:00:00.000000000 Z
11
+ date: 2023-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -234,6 +234,7 @@ files:
234
234
  - lib/types/types/typed_array.rb
235
235
  - lib/types/types/typed_enumerable.rb
236
236
  - lib/types/types/typed_enumerator.rb
237
+ - lib/types/types/typed_enumerator_chain.rb
237
238
  - lib/types/types/typed_enumerator_lazy.rb
238
239
  - lib/types/types/typed_hash.rb
239
240
  - lib/types/types/typed_range.rb