baml 0.63.0-x86_64-linux-musl → 0.65.0-x86_64-linux-musl

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: 1934a4c80e028f2b84bec92e7002d15f46171deaaa545ade967a67acf2ec00f0
4
- data.tar.gz: cb04ecb6395b2ea7625cb0a7b9e98bc1a6c749a03cef581f7a8c80d64671f083
3
+ metadata.gz: 5fcef609a194328351c2ba40a6a85c3487f7c7019a75826c0a69d2ccc1e29eb7
4
+ data.tar.gz: dbaad17548e4abfe86bde05a9a47260a0f173456a1cb59025c09996bd09b316b
5
5
  SHA512:
6
- metadata.gz: daf5b183b5ea852d5a2ce6eb5a5785a9330ddb556c767df0f91529f9561f6d35e17fd6138694fc98945e7f4a7aae557003d523da4d9fae4352e7d101ec58a7c0
7
- data.tar.gz: 25d1042a8846f62b885220e7ccfc816bbddf802c42e8db798e0aebaa5e2ec48a2447066aac19cb6adf58703757d05f67153a4229d29420ad415dcaeeaf7f7b48
6
+ metadata.gz: 9b49108e345c12fd947f603635e4392ee45f317fb24ff0627f2e2bf9304f7c360fdeadcc5c398170b5021f3231e74ecb87c06c7dd2cb2bf44b6ea085d9b00331
7
+ data.tar.gz: cf515cafb95e40f21bec2db7ebea9e3bb1a6598258942ec369ed0dce85a7876109d935344df0cb4b028d7edeb6b23e24dd58586769c765ea7c18aaa3c8be7bbc
Binary file
Binary file
Binary file
data/lib/baml.rb CHANGED
@@ -7,12 +7,17 @@ end
7
7
  # require_relative "baml/ruby_ffi"
8
8
  require_relative "stream"
9
9
  require_relative "struct"
10
+ require_relative "checked"
10
11
 
11
12
  module Baml
12
13
  ClientRegistry = Baml::Ffi::ClientRegistry
13
14
  Image = Baml::Ffi::Image
14
15
  Audio = Baml::Ffi::Audio
15
16
 
17
+ # Reexport Checked types.
18
+ Checked = Baml::Checks::Checked
19
+ Check = Baml::Checks::Check
20
+
16
21
  # Dynamically + idempotently define Baml::TypeConverter
17
22
  # NB: this does not respect raise_coercion_error = false
18
23
  def self.convert_to(type)
@@ -53,4 +58,4 @@ module Baml
53
58
 
54
59
  Baml.const_get(:TypeConverter).new(type)
55
60
  end
56
- end
61
+ end
data/lib/checked.rb ADDED
@@ -0,0 +1,36 @@
1
+ require "sorbet-runtime"
2
+
3
+ module Baml
4
+ module Checks
5
+
6
+ class Check < T::Struct
7
+ extend T::Sig
8
+
9
+ const :name, String
10
+ const :expr, String
11
+ const :status, String
12
+
13
+
14
+ def initialize(props)
15
+ super(name: props[:name], expr: props[:expr], status: props[:status])
16
+ end
17
+ end
18
+
19
+ class Checked < T::Struct
20
+ extend T::Sig
21
+
22
+ extend T::Generic
23
+
24
+ Value = type_member
25
+
26
+ const :value, Value
27
+ const :checks, T::Hash[Symbol, Check]
28
+
29
+ def initialize(props)
30
+ super(value: props[:value], checks: props[:checks])
31
+ end
32
+
33
+ end
34
+
35
+ end
36
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.63.0
4
+ version: 0.65.0
5
5
  platform: x86_64-linux-musl
6
6
  authors:
7
7
  - BoundaryML
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-23 00:00:00.000000000 Z
11
+ date: 2024-10-31 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A gem for users to interact with BoundaryML's Language Model clients
14
14
  (LLM) in Ruby.
@@ -24,6 +24,7 @@ files:
24
24
  - lib/baml/3.1/ruby_ffi.so
25
25
  - lib/baml/3.2/ruby_ffi.so
26
26
  - lib/baml/3.3/ruby_ffi.so
27
+ - lib/checked.rb
27
28
  - lib/stream.rb
28
29
  - lib/struct.rb
29
30
  homepage: https://github.com/BoundaryML/baml