sorbet-baml 0.1.0 → 0.3.0
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/CLAUDE.md +94 -0
- data/README.md +315 -122
- data/Rakefile +2 -2
- data/docs-site/.gitignore +48 -0
- data/docs-site/Gemfile +5 -0
- data/docs-site/Gemfile.lock +140 -0
- data/docs-site/Rakefile +3 -0
- data/docs-site/bridgetown.config.yml +15 -0
- data/docs-site/config/initializers.rb +9 -0
- data/docs-site/config/puma.rb +9 -0
- data/docs-site/config.ru +5 -0
- data/docs-site/esbuild.config.js +11 -0
- data/docs-site/frontend/javascript/index.js +22 -0
- data/docs-site/frontend/styles/index.css +61 -0
- data/docs-site/package.json +18 -0
- data/docs-site/postcss.config.js +6 -0
- data/docs-site/server/roda_app.rb +9 -0
- data/docs-site/src/_components/head.liquid +26 -0
- data/docs-site/src/_components/nav.liquid +68 -0
- data/docs-site/src/_layouts/default.liquid +27 -0
- data/docs-site/src/_layouts/doc.liquid +39 -0
- data/docs-site/src/advanced-usage.md +598 -0
- data/docs-site/src/getting-started.md +170 -0
- data/docs-site/src/index.md +183 -0
- data/docs-site/src/troubleshooting.md +317 -0
- data/docs-site/src/type-mapping.md +236 -0
- data/docs-site/tailwind.config.js +85 -0
- data/examples/description_parameters.rb +49 -0
- data/lib/sorbet_baml/comment_extractor.rb +51 -54
- data/lib/sorbet_baml/converter.rb +69 -35
- data/lib/sorbet_baml/dependency_resolver.rb +11 -11
- data/lib/sorbet_baml/description_extension.rb +34 -0
- data/lib/sorbet_baml/description_extractor.rb +34 -0
- data/lib/sorbet_baml/dspy_tool_converter.rb +97 -0
- data/lib/sorbet_baml/dspy_tool_extensions.rb +23 -0
- data/lib/sorbet_baml/enum_extensions.rb +2 -2
- data/lib/sorbet_baml/struct_extensions.rb +2 -2
- data/lib/sorbet_baml/tool_extensions.rb +23 -0
- data/lib/sorbet_baml/type_mapper.rb +35 -37
- data/lib/sorbet_baml/version.rb +1 -1
- data/lib/sorbet_baml.rb +41 -10
- data/sorbet/config +2 -0
- data/sorbet/rbi/gems/anthropic@1.5.0.rbi +21252 -0
- data/sorbet/rbi/gems/async@2.27.3.rbi +9 -0
- data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +9 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +424 -0
- data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +9 -0
- data/sorbet/rbi/gems/console@1.33.0.rbi +9 -0
- data/sorbet/rbi/gems/dry-configurable@1.3.0.rbi +672 -0
- data/sorbet/rbi/gems/dry-core@1.1.0.rbi +1729 -0
- data/sorbet/rbi/gems/dry-logger@1.1.0.rbi +1317 -0
- data/sorbet/rbi/gems/dspy@0.19.1.rbi +6677 -0
- data/sorbet/rbi/gems/ffi@1.17.2.rbi +2174 -0
- data/sorbet/rbi/gems/fiber-annotation@0.2.0.rbi +9 -0
- data/sorbet/rbi/gems/fiber-local@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/fiber-storage@1.0.1.rbi +9 -0
- data/sorbet/rbi/gems/google-protobuf@4.32.0.rbi +9 -0
- data/sorbet/rbi/gems/googleapis-common-protos-types@1.20.0.rbi +9 -0
- data/sorbet/rbi/gems/informers@1.2.1.rbi +1875 -0
- data/sorbet/rbi/gems/io-event@1.12.1.rbi +9 -0
- data/sorbet/rbi/gems/metrics@0.13.0.rbi +9 -0
- data/sorbet/rbi/gems/onnxruntime@0.10.0.rbi +304 -0
- data/sorbet/rbi/gems/openai@0.16.0.rbi +68055 -0
- data/sorbet/rbi/gems/opentelemetry-api@1.6.0.rbi +9 -0
- data/sorbet/rbi/gems/opentelemetry-common@0.22.0.rbi +9 -0
- data/sorbet/rbi/gems/opentelemetry-exporter-otlp@0.30.0.rbi +9 -0
- data/sorbet/rbi/gems/opentelemetry-registry@0.4.0.rbi +9 -0
- data/sorbet/rbi/gems/opentelemetry-sdk@1.8.1.rbi +9 -0
- data/sorbet/rbi/gems/opentelemetry-semantic_conventions@1.11.0.rbi +9 -0
- data/sorbet/rbi/gems/polars-df@0.20.0.rbi +9 -0
- data/sorbet/rbi/gems/sorbet-result@1.4.0.rbi +242 -0
- data/sorbet/rbi/gems/sorbet-schema@0.9.2.rbi +743 -0
- data/sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi +48 -0
- data/sorbet/rbi/gems/tokenizers@0.5.5.rbi +754 -0
- data/sorbet/rbi/gems/traces@0.17.0.rbi +9 -0
- data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +1429 -0
- metadata +67 -7
- data/docs/README.md +0 -117
- data/docs/advanced-usage.md +0 -427
- data/docs/getting-started.md +0 -91
- data/docs/troubleshooting.md +0 -291
- data/docs/type-mapping.md +0 -192
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `async` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem async`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# THIS IS AN EMPTY RBI FILE.
|
|
9
|
+
# see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `bigdecimal` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem bigdecimal`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# THIS IS AN EMPTY RBI FILE.
|
|
9
|
+
# see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
|
|
@@ -0,0 +1,424 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `concurrent-ruby` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem concurrent-ruby`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# {include:file:README.md}
|
|
9
|
+
#
|
|
10
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/constants.rb#1
|
|
11
|
+
module Concurrent
|
|
12
|
+
extend ::Concurrent::Utility::EngineDetector
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# A thread-safe subclass of Array. This version locks against the object
|
|
16
|
+
# itself for every method call, ensuring only one thread can be reading
|
|
17
|
+
# or writing at a time. This includes iteration methods like `#each`.
|
|
18
|
+
#
|
|
19
|
+
# @note `a += b` is **not** a **thread-safe** operation on
|
|
20
|
+
# `Concurrent::Array`. It reads array `a`, then it creates new `Concurrent::Array`
|
|
21
|
+
# which is concatenation of `a` and `b`, then it writes the concatenation to `a`.
|
|
22
|
+
# The read and write are independent operations they do not form a single atomic
|
|
23
|
+
# operation therefore when two `+=` operations are executed concurrently updates
|
|
24
|
+
# may be lost. Use `#concat` instead.
|
|
25
|
+
# @see http://ruby-doc.org/core/Array.html Ruby standard library `Array`
|
|
26
|
+
#
|
|
27
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/array.rb#53
|
|
28
|
+
class Concurrent::Array < ::Array; end
|
|
29
|
+
|
|
30
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/array.rb#22
|
|
31
|
+
Concurrent::ArrayImplementation = Array
|
|
32
|
+
|
|
33
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#7
|
|
34
|
+
module Concurrent::Collection; end
|
|
35
|
+
|
|
36
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#10
|
|
37
|
+
Concurrent::Collection::MapImplementation = Concurrent::Collection::MriMapBackend
|
|
38
|
+
|
|
39
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#10
|
|
40
|
+
class Concurrent::Collection::MriMapBackend < ::Concurrent::Collection::NonConcurrentMapBackend
|
|
41
|
+
# @return [MriMapBackend] a new instance of MriMapBackend
|
|
42
|
+
#
|
|
43
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#12
|
|
44
|
+
def initialize(options = T.unsafe(nil), &default_proc); end
|
|
45
|
+
|
|
46
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#17
|
|
47
|
+
def []=(key, value); end
|
|
48
|
+
|
|
49
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#61
|
|
50
|
+
def clear; end
|
|
51
|
+
|
|
52
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#33
|
|
53
|
+
def compute(key); end
|
|
54
|
+
|
|
55
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#21
|
|
56
|
+
def compute_if_absent(key); end
|
|
57
|
+
|
|
58
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#29
|
|
59
|
+
def compute_if_present(key); end
|
|
60
|
+
|
|
61
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#53
|
|
62
|
+
def delete(key); end
|
|
63
|
+
|
|
64
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#57
|
|
65
|
+
def delete_pair(key, value); end
|
|
66
|
+
|
|
67
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#49
|
|
68
|
+
def get_and_set(key, value); end
|
|
69
|
+
|
|
70
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#37
|
|
71
|
+
def merge_pair(key, value); end
|
|
72
|
+
|
|
73
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#45
|
|
74
|
+
def replace_if_exists(key, new_value); end
|
|
75
|
+
|
|
76
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#41
|
|
77
|
+
def replace_pair(key, old_value, new_value); end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#9
|
|
81
|
+
class Concurrent::Collection::NonConcurrentMapBackend
|
|
82
|
+
# WARNING: all public methods of the class must operate on the @backend
|
|
83
|
+
# directly without calling each other. This is important because of the
|
|
84
|
+
# SynchronizedMapBackend which uses a non-reentrant mutex for performance
|
|
85
|
+
# reasons.
|
|
86
|
+
#
|
|
87
|
+
# @return [NonConcurrentMapBackend] a new instance of NonConcurrentMapBackend
|
|
88
|
+
#
|
|
89
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#15
|
|
90
|
+
def initialize(options = T.unsafe(nil), &default_proc); end
|
|
91
|
+
|
|
92
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#21
|
|
93
|
+
def [](key); end
|
|
94
|
+
|
|
95
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#25
|
|
96
|
+
def []=(key, value); end
|
|
97
|
+
|
|
98
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#94
|
|
99
|
+
def clear; end
|
|
100
|
+
|
|
101
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#59
|
|
102
|
+
def compute(key); end
|
|
103
|
+
|
|
104
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#29
|
|
105
|
+
def compute_if_absent(key); end
|
|
106
|
+
|
|
107
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#53
|
|
108
|
+
def compute_if_present(key); end
|
|
109
|
+
|
|
110
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#81
|
|
111
|
+
def delete(key); end
|
|
112
|
+
|
|
113
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#85
|
|
114
|
+
def delete_pair(key, value); end
|
|
115
|
+
|
|
116
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#99
|
|
117
|
+
def each_pair; end
|
|
118
|
+
|
|
119
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#71
|
|
120
|
+
def get_and_set(key, value); end
|
|
121
|
+
|
|
122
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#110
|
|
123
|
+
def get_or_default(key, default_value); end
|
|
124
|
+
|
|
125
|
+
# @return [Boolean]
|
|
126
|
+
#
|
|
127
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#77
|
|
128
|
+
def key?(key); end
|
|
129
|
+
|
|
130
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#63
|
|
131
|
+
def merge_pair(key, value); end
|
|
132
|
+
|
|
133
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#46
|
|
134
|
+
def replace_if_exists(key, new_value); end
|
|
135
|
+
|
|
136
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#37
|
|
137
|
+
def replace_pair(key, old_value, new_value); end
|
|
138
|
+
|
|
139
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#106
|
|
140
|
+
def size; end
|
|
141
|
+
|
|
142
|
+
private
|
|
143
|
+
|
|
144
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#130
|
|
145
|
+
def dupped_backend; end
|
|
146
|
+
|
|
147
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#124
|
|
148
|
+
def initialize_copy(other); end
|
|
149
|
+
|
|
150
|
+
# @return [Boolean]
|
|
151
|
+
#
|
|
152
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#134
|
|
153
|
+
def pair?(key, expected_value); end
|
|
154
|
+
|
|
155
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#116
|
|
156
|
+
def set_backend(default_proc); end
|
|
157
|
+
|
|
158
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#138
|
|
159
|
+
def store_computed_value(key, new_value); end
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# A thread-safe subclass of Hash. This version locks against the object
|
|
163
|
+
# itself for every method call, ensuring only one thread can be reading
|
|
164
|
+
# or writing at a time. This includes iteration methods like `#each`,
|
|
165
|
+
# which takes the lock repeatedly when reading an item.
|
|
166
|
+
#
|
|
167
|
+
# @see http://ruby-doc.org/core/Hash.html Ruby standard library `Hash`
|
|
168
|
+
#
|
|
169
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/hash.rb#49
|
|
170
|
+
class Concurrent::Hash < ::Hash; end
|
|
171
|
+
|
|
172
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/hash.rb#16
|
|
173
|
+
Concurrent::HashImplementation = Hash
|
|
174
|
+
|
|
175
|
+
# `Concurrent::Map` is a hash-like object and should have much better performance
|
|
176
|
+
# characteristics, especially under high concurrency, than `Concurrent::Hash`.
|
|
177
|
+
# However, `Concurrent::Map `is not strictly semantically equivalent to a ruby `Hash`
|
|
178
|
+
# -- for instance, it does not necessarily retain ordering by insertion time as `Hash`
|
|
179
|
+
# does. For most uses it should do fine though, and we recommend you consider
|
|
180
|
+
# `Concurrent::Map` instead of `Concurrent::Hash` for your concurrency-safe hash needs.
|
|
181
|
+
#
|
|
182
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#39
|
|
183
|
+
class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
184
|
+
# Iterates over each key value pair.
|
|
185
|
+
# This method is atomic.
|
|
186
|
+
#
|
|
187
|
+
# @note Atomic methods taking a block do not allow the `self` instance
|
|
188
|
+
# to be used within the block. Doing so will cause a deadlock.
|
|
189
|
+
# @return [self]
|
|
190
|
+
# @yield for each key value pair in the map
|
|
191
|
+
# @yieldparam key [Object]
|
|
192
|
+
# @yieldparam value [Object]
|
|
193
|
+
#
|
|
194
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#274
|
|
195
|
+
def each; end
|
|
196
|
+
|
|
197
|
+
# Iterates over each key.
|
|
198
|
+
# This method is atomic.
|
|
199
|
+
#
|
|
200
|
+
# @note Atomic methods taking a block do not allow the `self` instance
|
|
201
|
+
# to be used within the block. Doing so will cause a deadlock.
|
|
202
|
+
# @return [self]
|
|
203
|
+
# @yield for each key in the map
|
|
204
|
+
# @yieldparam key [Object]
|
|
205
|
+
#
|
|
206
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#255
|
|
207
|
+
def each_key; end
|
|
208
|
+
|
|
209
|
+
# Iterates over each key value pair.
|
|
210
|
+
# This method is atomic.
|
|
211
|
+
#
|
|
212
|
+
# @note Atomic methods taking a block do not allow the `self` instance
|
|
213
|
+
# to be used within the block. Doing so will cause a deadlock.
|
|
214
|
+
# @return [self]
|
|
215
|
+
# @yield for each key value pair in the map
|
|
216
|
+
# @yieldparam key [Object]
|
|
217
|
+
# @yieldparam value [Object]
|
|
218
|
+
#
|
|
219
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#274
|
|
220
|
+
def each_pair; end
|
|
221
|
+
|
|
222
|
+
# Iterates over each value.
|
|
223
|
+
# This method is atomic.
|
|
224
|
+
#
|
|
225
|
+
# @note Atomic methods taking a block do not allow the `self` instance
|
|
226
|
+
# to be used within the block. Doing so will cause a deadlock.
|
|
227
|
+
# @return [self]
|
|
228
|
+
# @yield for each value in the map
|
|
229
|
+
# @yieldparam value [Object]
|
|
230
|
+
#
|
|
231
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#264
|
|
232
|
+
def each_value; end
|
|
233
|
+
|
|
234
|
+
# Is map empty?
|
|
235
|
+
#
|
|
236
|
+
# @return [true, false]
|
|
237
|
+
#
|
|
238
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#291
|
|
239
|
+
def empty?; end
|
|
240
|
+
|
|
241
|
+
# Get a value with key, or default_value when key is absent,
|
|
242
|
+
# or fail when no default_value is given.
|
|
243
|
+
#
|
|
244
|
+
# @note The "fetch-then-act" methods of `Map` are not atomic. `Map` is intended
|
|
245
|
+
# to be use as a concurrency primitive with strong happens-before
|
|
246
|
+
# guarantees. It is not intended to be used as a high-level abstraction
|
|
247
|
+
# supporting complex operations. All read and write operations are
|
|
248
|
+
# thread safe, but no guarantees are made regarding race conditions
|
|
249
|
+
# between the fetch operation and yielding to the block. Additionally,
|
|
250
|
+
# this method does not support recursion. This is due to internal
|
|
251
|
+
# constraints that are very unlikely to change in the near future.
|
|
252
|
+
# @param key [Object]
|
|
253
|
+
# @param default_value [Object]
|
|
254
|
+
# @raise [KeyError] when key is missing and no default_value is provided
|
|
255
|
+
# @return [Object] the value or default value
|
|
256
|
+
# @yield default value for a key
|
|
257
|
+
# @yieldparam key [Object]
|
|
258
|
+
# @yieldreturn [Object] default value
|
|
259
|
+
#
|
|
260
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#183
|
|
261
|
+
def fetch(key, default_value = T.unsafe(nil)); end
|
|
262
|
+
|
|
263
|
+
# Fetch value with key, or store default value when key is absent,
|
|
264
|
+
# or fail when no default_value is given. This is a two step operation,
|
|
265
|
+
# therefore not atomic. The store can overwrite other concurrently
|
|
266
|
+
# stored value.
|
|
267
|
+
#
|
|
268
|
+
# @param key [Object]
|
|
269
|
+
# @param default_value [Object]
|
|
270
|
+
# @return [Object] the value or default value
|
|
271
|
+
# @yield default value for a key
|
|
272
|
+
# @yieldparam key [Object]
|
|
273
|
+
# @yieldreturn [Object] default value
|
|
274
|
+
#
|
|
275
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#205
|
|
276
|
+
def fetch_or_store(key, default_value = T.unsafe(nil)); end
|
|
277
|
+
|
|
278
|
+
# Get a value with key
|
|
279
|
+
#
|
|
280
|
+
# @param key [Object]
|
|
281
|
+
# @return [Object] the value
|
|
282
|
+
#
|
|
283
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#21
|
|
284
|
+
def get(key); end
|
|
285
|
+
|
|
286
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#321
|
|
287
|
+
def inspect; end
|
|
288
|
+
|
|
289
|
+
# Find key of a value.
|
|
290
|
+
#
|
|
291
|
+
# @param value [Object]
|
|
292
|
+
# @return [Object, nil] key or nil when not found
|
|
293
|
+
#
|
|
294
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#284
|
|
295
|
+
def key(value); end
|
|
296
|
+
|
|
297
|
+
# All keys
|
|
298
|
+
#
|
|
299
|
+
# @return [::Array<Object>] keys
|
|
300
|
+
#
|
|
301
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#236
|
|
302
|
+
def keys; end
|
|
303
|
+
|
|
304
|
+
# @raise [TypeError]
|
|
305
|
+
#
|
|
306
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#305
|
|
307
|
+
def marshal_dump; end
|
|
308
|
+
|
|
309
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#313
|
|
310
|
+
def marshal_load(hash); end
|
|
311
|
+
|
|
312
|
+
# Set a value with key
|
|
313
|
+
#
|
|
314
|
+
# @param key [Object]
|
|
315
|
+
# @param value [Object]
|
|
316
|
+
# @return [Object] the new value
|
|
317
|
+
#
|
|
318
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#17
|
|
319
|
+
def put(key, value); end
|
|
320
|
+
|
|
321
|
+
# Insert value into map with key if key is absent in one atomic step.
|
|
322
|
+
#
|
|
323
|
+
# @param key [Object]
|
|
324
|
+
# @param value [Object]
|
|
325
|
+
# @return [Object, nil] the previous value when key was present or nil when there was no key
|
|
326
|
+
#
|
|
327
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#215
|
|
328
|
+
def put_if_absent(key, value); end
|
|
329
|
+
|
|
330
|
+
# Is the value stored in the map. Iterates over all values.
|
|
331
|
+
#
|
|
332
|
+
# @param value [Object]
|
|
333
|
+
# @return [true, false]
|
|
334
|
+
#
|
|
335
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#227
|
|
336
|
+
def value?(value); end
|
|
337
|
+
|
|
338
|
+
# All values
|
|
339
|
+
#
|
|
340
|
+
# @return [::Array<Object>] values
|
|
341
|
+
#
|
|
342
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#244
|
|
343
|
+
def values; end
|
|
344
|
+
|
|
345
|
+
private
|
|
346
|
+
|
|
347
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#331
|
|
348
|
+
def initialize_copy(other); end
|
|
349
|
+
|
|
350
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#336
|
|
351
|
+
def populate_from(hash); end
|
|
352
|
+
|
|
353
|
+
# @raise [KeyError]
|
|
354
|
+
#
|
|
355
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#327
|
|
356
|
+
def raise_fetch_no_key; end
|
|
357
|
+
|
|
358
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#341
|
|
359
|
+
def validate_options_hash!(options); end
|
|
360
|
+
end
|
|
361
|
+
|
|
362
|
+
# Various classes within allows for +nil+ values to be stored,
|
|
363
|
+
# so a special +NULL+ token is required to indicate the "nil-ness".
|
|
364
|
+
#
|
|
365
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/constants.rb#6
|
|
366
|
+
Concurrent::NULL = T.let(T.unsafe(nil), Object)
|
|
367
|
+
|
|
368
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#4
|
|
369
|
+
module Concurrent::ThreadSafe; end
|
|
370
|
+
|
|
371
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#7
|
|
372
|
+
module Concurrent::ThreadSafe::Util; end
|
|
373
|
+
|
|
374
|
+
# TODO (pitr-ch 15-Oct-2016): migrate to Utility::ProcessorCounter
|
|
375
|
+
#
|
|
376
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#13
|
|
377
|
+
Concurrent::ThreadSafe::Util::CPU_COUNT = T.let(T.unsafe(nil), Integer)
|
|
378
|
+
|
|
379
|
+
# TODO (pitr-ch 15-Oct-2016): migrate to Utility::NativeInteger
|
|
380
|
+
#
|
|
381
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#10
|
|
382
|
+
Concurrent::ThreadSafe::Util::FIXNUM_BIT_SIZE = T.let(T.unsafe(nil), Integer)
|
|
383
|
+
|
|
384
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#11
|
|
385
|
+
Concurrent::ThreadSafe::Util::MAX_INT = T.let(T.unsafe(nil), Integer)
|
|
386
|
+
|
|
387
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#3
|
|
388
|
+
module Concurrent::Utility; end
|
|
389
|
+
|
|
390
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#6
|
|
391
|
+
module Concurrent::Utility::EngineDetector
|
|
392
|
+
# @return [Boolean]
|
|
393
|
+
#
|
|
394
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#7
|
|
395
|
+
def on_cruby?; end
|
|
396
|
+
|
|
397
|
+
# @return [Boolean]
|
|
398
|
+
#
|
|
399
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#11
|
|
400
|
+
def on_jruby?; end
|
|
401
|
+
|
|
402
|
+
# @return [Boolean]
|
|
403
|
+
#
|
|
404
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#27
|
|
405
|
+
def on_linux?; end
|
|
406
|
+
|
|
407
|
+
# @return [Boolean]
|
|
408
|
+
#
|
|
409
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#23
|
|
410
|
+
def on_osx?; end
|
|
411
|
+
|
|
412
|
+
# @return [Boolean]
|
|
413
|
+
#
|
|
414
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#15
|
|
415
|
+
def on_truffleruby?; end
|
|
416
|
+
|
|
417
|
+
# @return [Boolean]
|
|
418
|
+
#
|
|
419
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#19
|
|
420
|
+
def on_windows?; end
|
|
421
|
+
|
|
422
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#31
|
|
423
|
+
def ruby_version(version = T.unsafe(nil), comparison, major, minor, patch); end
|
|
424
|
+
end
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `connection_pool` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem connection_pool`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# THIS IS AN EMPTY RBI FILE.
|
|
9
|
+
# see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `console` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem console`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# THIS IS AN EMPTY RBI FILE.
|
|
9
|
+
# see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
|