sorbet-runtime 0.5.9154 → 0.5.9163
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/lib/types/_types.rb +2 -2
- data/lib/types/configuration.rb +15 -5
- data/lib/types/private/casts.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7962e7a490aee0242f5029d3997bec8330cff295b5252edfe920742a54a0d00c
|
4
|
+
data.tar.gz: 36c544c971fb04d99214f33fbc7489ad1cbe2e05e49c7dcd2d6014be1bee01a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2089be8c21f2b61ce8d5a5c844db5aab4012dbbf55891fd83492c0903de9cfdfbdc40371ddb5e463c7018d3c31f68d298c97d7e7cf2a88e8c7b6e5712beb4a63
|
7
|
+
data.tar.gz: 05f519fded0eac2099c991a8c04b14ecb364be2a7f7020ec0825755a9265e363cf554fe5a518809722be6e7c2889caaed2e848fef286fa4dba798c670b6e06ef
|
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
|
|
data/lib/types/configuration.rb
CHANGED
@@ -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
|
-
|
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
|
data/lib/types/private/casts.rb
CHANGED
@@ -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.
|
4
|
+
version: 0.5.9163
|
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-
|
11
|
+
date: 2021-09-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|