sorbet-runtime 0.5.9155 → 0.5.9158

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: a6734abc455fc4b483498e87a075f71e3044e5a18dc3b177fd9878c69d750b56
4
- data.tar.gz: ff3ae25a0030a99153f6584e6fb69402d9f68d99a6e359ae6da04eab16b6d82d
3
+ metadata.gz: 4103b8036e0ea995f683415627b696b10732e201fd55fe1a35012765cf93fb61
4
+ data.tar.gz: ee49ed5cf79f1f82dbd09d50bf621de830bef9fdcf9d7dadcfb25bd3dcc2dcab
5
5
  SHA512:
6
- metadata.gz: 2c07e49f8906e24c4a73f54551ad47352b9923bc0d184cdfd77df4c0ee165e00e414d15675af2e093cbc19fc0e4051bc1ed630c03ccd4a2e14a04792a5669fc4
7
- data.tar.gz: acf18ebaeb816bf0099237bbe00bb567b864aae734d12a07caeb3ba747cc7304e05e657a3f9fc35614b8cdb8a2bda33dccc425d04ca0fdf6390b8cc80e3777d2
6
+ metadata.gz: 7e097789735ab1d45eeafe62d98d559ed5fa7d8651173a0e9c5c61b92fd9980a47fb2e1cc655915017d642dddeb370bc2cc9c21011e1a66195a0d9f60279e357
7
+ data.tar.gz: e0e661687a142e8ad0ae8d5b7802758b80d205c90108fee72648a44fe58b81b828201557f4f5229a3f81d8f88379710d873c7afefaa4f1473e500e3cf8862add
data/lib/types/_types.rb CHANGED
@@ -214,7 +214,7 @@ module T
214
214
  begin
215
215
  raise TypeError.new("Passed `nil` into T.must")
216
216
  rescue TypeError => e # raise into rescue to ensure e.backtrace is populated
217
- T::Configuration.inline_type_error_handler(e)
217
+ T::Configuration.inline_type_error_handler(e, {kind: 'T.must', value: arg, type: nil})
218
218
  end
219
219
  end
220
220
 
@@ -239,7 +239,7 @@ module T
239
239
  begin
240
240
  raise TypeError.new(msg)
241
241
  rescue TypeError => e # raise into rescue to ensure e.backtrace is populated
242
- T::Configuration.inline_type_error_handler(e)
242
+ T::Configuration.inline_type_error_handler(e, {kind: 'T.absurd', value: value, type: nil})
243
243
  end
244
244
  end
245
245
 
@@ -131,9 +131,14 @@ module T::Configuration
131
131
  # Parameters passed to value.call:
132
132
  #
133
133
  # @param [TypeError] error TypeError that was raised
134
+ # @param [Hash] opts A hash containing contextual information on the error:
135
+ # @option opts [String] :kind One of:
136
+ # ['T.cast', 'T.let', 'T.bind', 'T.assert_type!', 'T.must', 'T.absurd']
137
+ # @option opts [Object, nil] :type Expected param/return value type
138
+ # @option opts [Object] :value Actual param/return value
134
139
  #
135
140
  # @example
136
- # T::Configuration.inline_type_error_handler = lambda do |error|
141
+ # T::Configuration.inline_type_error_handler = lambda do |error, opts|
137
142
  # puts error.message
138
143
  # end
139
144
  def self.inline_type_error_handler=(value)
@@ -141,15 +146,20 @@ module T::Configuration
141
146
  @inline_type_error_handler = value
142
147
  end
143
148
 
144
- private_class_method def self.inline_type_error_handler_default(error)
149
+ private_class_method def self.inline_type_error_handler_default(error, opts)
145
150
  raise error
146
151
  end
147
152
 
148
- def self.inline_type_error_handler(error)
153
+ def self.inline_type_error_handler(error, opts={})
149
154
  if @inline_type_error_handler
150
- @inline_type_error_handler.call(error)
155
+ # Backwards compatibility before `inline_type_error_handler` took a second arg
156
+ if @inline_type_error_handler.arity == 1
157
+ @inline_type_error_handler.call(error)
158
+ else
159
+ @inline_type_error_handler.call(error, opts)
160
+ end
151
161
  else
152
- inline_type_error_handler_default(error)
162
+ inline_type_error_handler_default(error, opts)
153
163
  end
154
164
  nil
155
165
  end
@@ -14,7 +14,7 @@ module T::Private
14
14
 
15
15
  raise TypeError.new("#{cast_method}: #{error}\n#{suffix}")
16
16
  rescue TypeError => e # raise into rescue to ensure e.backtrace is populated
17
- T::Configuration.inline_type_error_handler(e)
17
+ T::Configuration.inline_type_error_handler(e, {kind: cast_method, value: value, type: type})
18
18
  value
19
19
  end
20
20
  end
@@ -33,7 +33,7 @@ module T::Private
33
33
 
34
34
  raise TypeError.new("#{cast_method}: #{error}\n#{suffix}")
35
35
  rescue TypeError => e # raise into rescue to ensure e.backtrace is populated
36
- T::Configuration.inline_type_error_handler(e)
36
+ T::Configuration.inline_type_error_handler(e, {kind: cast_method, value: value, type: type})
37
37
  value
38
38
  end
39
39
  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.9155
4
+ version: 0.5.9158
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-23 00:00:00.000000000 Z
11
+ date: 2021-09-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest