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 `opentelemetry-api` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-api`.
|
|
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 `opentelemetry-common` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-common`.
|
|
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 `opentelemetry-exporter-otlp` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-exporter-otlp`.
|
|
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 `opentelemetry-registry` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-registry`.
|
|
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 `opentelemetry-sdk` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-sdk`.
|
|
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 `opentelemetry-semantic_conventions` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem opentelemetry-semantic_conventions`.
|
|
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 `polars-df` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem polars-df`.
|
|
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,242 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
|
|
3
|
+
# DO NOT EDIT MANUALLY
|
|
4
|
+
# This is an autogenerated file for types exported from the `sorbet-result` gem.
|
|
5
|
+
# Please instead update this file by running `bin/tapioca gem sorbet-result`.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# source://sorbet-result//lib/typed/no_error_on_success_error.rb#4
|
|
9
|
+
module Typed
|
|
10
|
+
class << self
|
|
11
|
+
# source://sorbet-result//lib/typed/result.rb#159
|
|
12
|
+
sig { type_parameters(:T).params(error: T.type_parameter(:T)).returns(Typed::Failure[T.type_parameter(:T)]) }
|
|
13
|
+
def Failure(error); end
|
|
14
|
+
|
|
15
|
+
# source://sorbet-result//lib/typed/result.rb#150
|
|
16
|
+
sig { type_parameters(:T).params(payload: T.type_parameter(:T)).returns(Typed::Success[T.type_parameter(:T)]) }
|
|
17
|
+
def Success(payload); end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# source://sorbet-result//lib/typed/result.rb#163
|
|
22
|
+
class Typed::Failure < ::Typed::Result
|
|
23
|
+
extend T::Generic
|
|
24
|
+
|
|
25
|
+
Payload = type_member { { fixed: T.noreturn } }
|
|
26
|
+
Error = type_member
|
|
27
|
+
|
|
28
|
+
# source://sorbet-result//lib/typed/result.rb#188
|
|
29
|
+
sig { params(error: Error).void }
|
|
30
|
+
def initialize(error); end
|
|
31
|
+
|
|
32
|
+
# source://sorbet-result//lib/typed/result.rb#239
|
|
33
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
34
|
+
def ==(other); end
|
|
35
|
+
|
|
36
|
+
# source://sorbet-result//lib/typed/result.rb#214
|
|
37
|
+
sig do
|
|
38
|
+
override
|
|
39
|
+
.type_parameters(:U, :T)
|
|
40
|
+
.params(
|
|
41
|
+
_block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
|
|
42
|
+
).returns(Typed::Result[T.type_parameter(:U), Error])
|
|
43
|
+
end
|
|
44
|
+
def and_then(&_block); end
|
|
45
|
+
|
|
46
|
+
# source://sorbet-result//lib/typed/result.rb#171
|
|
47
|
+
sig { override.returns(Error) }
|
|
48
|
+
def error; end
|
|
49
|
+
|
|
50
|
+
# source://sorbet-result//lib/typed/result.rb#199
|
|
51
|
+
sig { override.returns(T::Boolean) }
|
|
52
|
+
def failure?; end
|
|
53
|
+
|
|
54
|
+
# source://sorbet-result//lib/typed/result.rb#223
|
|
55
|
+
sig { override.params(block: T.proc.params(arg0: Error).void).returns(T.self_type) }
|
|
56
|
+
def on_error(&block); end
|
|
57
|
+
|
|
58
|
+
# @raise [NoPayloadOnFailureError]
|
|
59
|
+
#
|
|
60
|
+
# source://sorbet-result//lib/typed/result.rb#204
|
|
61
|
+
sig { override.returns(T.noreturn) }
|
|
62
|
+
def payload; end
|
|
63
|
+
|
|
64
|
+
# source://sorbet-result//lib/typed/result.rb#234
|
|
65
|
+
sig do
|
|
66
|
+
override
|
|
67
|
+
.type_parameters(:Fallback)
|
|
68
|
+
.params(
|
|
69
|
+
value: T.type_parameter(:Fallback)
|
|
70
|
+
).returns(T.any(Payload, T.type_parameter(:Fallback)))
|
|
71
|
+
end
|
|
72
|
+
def payload_or(value); end
|
|
73
|
+
|
|
74
|
+
# source://sorbet-result//lib/typed/result.rb#194
|
|
75
|
+
sig { override.returns(T::Boolean) }
|
|
76
|
+
def success?; end
|
|
77
|
+
|
|
78
|
+
class << self
|
|
79
|
+
# source://sorbet-result//lib/typed/result.rb#183
|
|
80
|
+
sig { returns(Typed::Failure[::NilClass]) }
|
|
81
|
+
def blank; end
|
|
82
|
+
|
|
83
|
+
# source://sorbet-result//lib/typed/result.rb#178
|
|
84
|
+
sig { type_parameters(:T).params(error: T.type_parameter(:T)).returns(Typed::Failure[T.type_parameter(:T)]) }
|
|
85
|
+
def new(error); end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# Error when user attempts to access payload from a Failure Result.
|
|
90
|
+
#
|
|
91
|
+
# source://sorbet-result//lib/typed/no_error_on_success_error.rb#6
|
|
92
|
+
class Typed::NoErrorOnSuccessError < ::StandardError
|
|
93
|
+
# source://sorbet-result//lib/typed/no_error_on_success_error.rb#10
|
|
94
|
+
sig { void }
|
|
95
|
+
def initialize; end
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# Error when user attempts to access payload from a Failure Result.
|
|
99
|
+
#
|
|
100
|
+
# source://sorbet-result//lib/typed/no_payload_on_failure_error.rb#6
|
|
101
|
+
class Typed::NoPayloadOnFailureError < ::StandardError
|
|
102
|
+
# source://sorbet-result//lib/typed/no_payload_on_failure_error.rb#10
|
|
103
|
+
sig { params(failure: Typed::Failure[T.untyped]).void }
|
|
104
|
+
def initialize(failure); end
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# A monad representing either a success or a failure. Contains payload and error information as well.
|
|
108
|
+
#
|
|
109
|
+
# @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
|
|
110
|
+
#
|
|
111
|
+
# source://sorbet-result//lib/typed/result.rb#11
|
|
112
|
+
class Typed::Result
|
|
113
|
+
extend T::Generic
|
|
114
|
+
|
|
115
|
+
abstract!
|
|
116
|
+
sealed!
|
|
117
|
+
|
|
118
|
+
Payload = type_member(:out)
|
|
119
|
+
Error = type_member(:out)
|
|
120
|
+
|
|
121
|
+
# @abstract
|
|
122
|
+
#
|
|
123
|
+
# source://sorbet-result//lib/typed/result.rb#44
|
|
124
|
+
sig do
|
|
125
|
+
abstract
|
|
126
|
+
.type_parameters(:U, :T)
|
|
127
|
+
.params(
|
|
128
|
+
_block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
|
|
129
|
+
).returns(T.any(Typed::Result[T.type_parameter(:U), Error], Typed::Result[T.type_parameter(:U), T.type_parameter(:T)]))
|
|
130
|
+
end
|
|
131
|
+
def and_then(&_block); end
|
|
132
|
+
|
|
133
|
+
# @abstract
|
|
134
|
+
#
|
|
135
|
+
# source://sorbet-result//lib/typed/result.rb#35
|
|
136
|
+
sig { abstract.returns(Error) }
|
|
137
|
+
def error; end
|
|
138
|
+
|
|
139
|
+
# @abstract
|
|
140
|
+
#
|
|
141
|
+
# source://sorbet-result//lib/typed/result.rb#27
|
|
142
|
+
sig { abstract.returns(T::Boolean) }
|
|
143
|
+
def failure?; end
|
|
144
|
+
|
|
145
|
+
# @abstract
|
|
146
|
+
#
|
|
147
|
+
# source://sorbet-result//lib/typed/result.rb#52
|
|
148
|
+
sig { abstract.params(block: T.proc.params(arg0: Error).void).returns(T.self_type) }
|
|
149
|
+
def on_error(&block); end
|
|
150
|
+
|
|
151
|
+
# @abstract
|
|
152
|
+
#
|
|
153
|
+
# source://sorbet-result//lib/typed/result.rb#31
|
|
154
|
+
sig { abstract.returns(Payload) }
|
|
155
|
+
def payload; end
|
|
156
|
+
|
|
157
|
+
# @abstract
|
|
158
|
+
#
|
|
159
|
+
# source://sorbet-result//lib/typed/result.rb#61
|
|
160
|
+
sig do
|
|
161
|
+
abstract
|
|
162
|
+
.type_parameters(:Fallback)
|
|
163
|
+
.params(
|
|
164
|
+
value: T.type_parameter(:Fallback)
|
|
165
|
+
).returns(T.any(Payload, T.type_parameter(:Fallback)))
|
|
166
|
+
end
|
|
167
|
+
def payload_or(value); end
|
|
168
|
+
|
|
169
|
+
# @abstract
|
|
170
|
+
#
|
|
171
|
+
# source://sorbet-result//lib/typed/result.rb#23
|
|
172
|
+
sig { abstract.returns(T::Boolean) }
|
|
173
|
+
def success?; end
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
# source://sorbet-result//lib/typed/result.rb#65
|
|
177
|
+
class Typed::Success < ::Typed::Result
|
|
178
|
+
extend T::Generic
|
|
179
|
+
|
|
180
|
+
Payload = type_member
|
|
181
|
+
Error = type_member { { fixed: T.noreturn } }
|
|
182
|
+
|
|
183
|
+
# source://sorbet-result//lib/typed/result.rb#90
|
|
184
|
+
sig { params(payload: Payload).void }
|
|
185
|
+
def initialize(payload); end
|
|
186
|
+
|
|
187
|
+
# source://sorbet-result//lib/typed/result.rb#140
|
|
188
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
189
|
+
def ==(other); end
|
|
190
|
+
|
|
191
|
+
# source://sorbet-result//lib/typed/result.rb#116
|
|
192
|
+
sig do
|
|
193
|
+
override
|
|
194
|
+
.type_parameters(:U, :T)
|
|
195
|
+
.params(
|
|
196
|
+
block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
|
|
197
|
+
).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
|
|
198
|
+
end
|
|
199
|
+
def and_then(&block); end
|
|
200
|
+
|
|
201
|
+
# @raise [NoErrorOnSuccessError]
|
|
202
|
+
#
|
|
203
|
+
# source://sorbet-result//lib/typed/result.rb#106
|
|
204
|
+
sig { override.returns(T.noreturn) }
|
|
205
|
+
def error; end
|
|
206
|
+
|
|
207
|
+
# source://sorbet-result//lib/typed/result.rb#101
|
|
208
|
+
sig { override.returns(T::Boolean) }
|
|
209
|
+
def failure?; end
|
|
210
|
+
|
|
211
|
+
# source://sorbet-result//lib/typed/result.rb#125
|
|
212
|
+
sig { override.params(_block: T.proc.params(arg0: Error).void).returns(T.self_type) }
|
|
213
|
+
def on_error(&_block); end
|
|
214
|
+
|
|
215
|
+
# source://sorbet-result//lib/typed/result.rb#73
|
|
216
|
+
sig { override.returns(Payload) }
|
|
217
|
+
def payload; end
|
|
218
|
+
|
|
219
|
+
# source://sorbet-result//lib/typed/result.rb#135
|
|
220
|
+
sig do
|
|
221
|
+
override
|
|
222
|
+
.type_parameters(:Fallback)
|
|
223
|
+
.params(
|
|
224
|
+
_value: T.type_parameter(:Fallback)
|
|
225
|
+
).returns(T.any(Payload, T.type_parameter(:Fallback)))
|
|
226
|
+
end
|
|
227
|
+
def payload_or(_value); end
|
|
228
|
+
|
|
229
|
+
# source://sorbet-result//lib/typed/result.rb#96
|
|
230
|
+
sig { override.returns(T::Boolean) }
|
|
231
|
+
def success?; end
|
|
232
|
+
|
|
233
|
+
class << self
|
|
234
|
+
# source://sorbet-result//lib/typed/result.rb#85
|
|
235
|
+
sig { returns(Typed::Success[::NilClass]) }
|
|
236
|
+
def blank; end
|
|
237
|
+
|
|
238
|
+
# source://sorbet-result//lib/typed/result.rb#80
|
|
239
|
+
sig { type_parameters(:T).params(payload: T.type_parameter(:T)).returns(Typed::Success[T.type_parameter(:T)]) }
|
|
240
|
+
def new(payload); end
|
|
241
|
+
end
|
|
242
|
+
end
|