sorbet-runtime 0.5.9211 → 0.5.9226
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e8cdcef662dbe5323e8c3b4cbda0fe64cfe63a8ced6b30c1ef73a5ad8c74e191
|
4
|
+
data.tar.gz: 24a99182bb9c42782deff1875122a7727bc06abd41203954558e773eb9146af4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2a6525413246d28d353f783b105e56400de765c294d4b2807c4dc0bf8d399df6a0feec27b1ef72a41916686e5e171e340d7fcb56f04de4cb7214bd7f26c5b704
|
7
|
+
data.tar.gz: c451aa1efdef95681a0e61a85b0d29fc46926ef2639cc762df16bd9db5e2d7cb28618aef7d658ddacaacb9f5d2c2d079f801ab15b153d818d9c53cb0def42b33
|
data/lib/types/_types.rb
CHANGED
@@ -53,10 +53,18 @@ module T
|
|
53
53
|
end
|
54
54
|
|
55
55
|
# Matches any of the listed values
|
56
|
+
# @deprecated Use T::Enum instead.
|
56
57
|
def self.enum(values)
|
57
58
|
T::Types::Enum.new(values)
|
58
59
|
end
|
59
60
|
|
61
|
+
# Matches any of the listed values
|
62
|
+
# Equivalent to T.enum, but the name will be changed permanently to `T.deprecated_enum`.
|
63
|
+
# @deprecated Use T::Enum instead.
|
64
|
+
def self.deprecated_enum(values)
|
65
|
+
T::Types::Enum.new(values, method_name: "deprecated_enum")
|
66
|
+
end
|
67
|
+
|
60
68
|
# Creates a proc type
|
61
69
|
def self.proc
|
62
70
|
T::Private::Methods.start_proc
|
@@ -40,6 +40,11 @@ module T::Private::Abstract::Declare
|
|
40
40
|
end
|
41
41
|
super(*args, &blk)
|
42
42
|
end
|
43
|
+
|
44
|
+
# Ruby doesn not emit "method redefined" warnings for aliased methods
|
45
|
+
# (more robust than undef_method that would create a small window in which the method doesn't exist)
|
46
|
+
mod.send(:alias_method, :initialize, :initialize)
|
47
|
+
|
43
48
|
if mod.respond_to?(:ruby2_keywords, true)
|
44
49
|
mod.send(:ruby2_keywords, :initialize)
|
45
50
|
end
|
@@ -83,6 +83,11 @@ module T::Props
|
|
83
83
|
lazily_defined_methods[name] = blk
|
84
84
|
|
85
85
|
cls = decorated_class
|
86
|
+
if cls.method_defined?(name)
|
87
|
+
# Ruby doesn not emit "method redefined" warnings for aliased methods
|
88
|
+
# (more robust than undef_method that would create a small window in which the method doesn't exist)
|
89
|
+
cls.send(:alias_method, name, name)
|
90
|
+
end
|
86
91
|
cls.send(:define_method, name) do |*args|
|
87
92
|
self.class.decorator.send(:eval_lazily_defined_method!, name)
|
88
93
|
send(name, *args)
|
data/lib/types/types/enum.rb
CHANGED
@@ -7,11 +7,13 @@ module T::Types
|
|
7
7
|
extend T::Sig
|
8
8
|
|
9
9
|
attr_reader :values
|
10
|
+
attr_reader :method_name
|
10
11
|
|
11
12
|
# TODO Ideally Hash would not be accepted but there are a lot of uses with prop enum.
|
12
|
-
sig {params(values: T.any(Array, Set, Hash, T::Range[T.untyped])).void}
|
13
|
-
def initialize(values)
|
13
|
+
sig {params(values: T.any(Array, Set, Hash, T::Range[T.untyped]), method_name: String).void}
|
14
|
+
def initialize(values, method_name: "enum")
|
14
15
|
@values = values
|
16
|
+
@method_name = method_name
|
15
17
|
end
|
16
18
|
|
17
19
|
# overrides Base
|
@@ -31,7 +33,7 @@ module T::Types
|
|
31
33
|
|
32
34
|
# overrides Base
|
33
35
|
def name
|
34
|
-
"T
|
36
|
+
"T.#{@method_name}([#{@values.map(&:inspect).join(', ')}])"
|
35
37
|
end
|
36
38
|
|
37
39
|
# overrides Base
|
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.9226
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stripe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|