baml 0.62.0-x86_64-linux → 0.64.0-x86_64-linux

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: 41405a18d6d0b6d725038e8dbedef6f155e205ac03fcadee2ba106bf4624c39b
4
- data.tar.gz: 0ddc21f60fbc3f40834be7cfd35ae96d2b8a090c0acf8b72aa559af15dd7c2e3
3
+ metadata.gz: 32b34dc9d2296ff94ffdc0a250938294457123167237f6af1aeae64027c5bf0e
4
+ data.tar.gz: 0520a1568aabc541e9ee44a8043f0ac598f9bd64ffb18e8c99bf7c3e755f52f0
5
5
  SHA512:
6
- metadata.gz: 119ef8dee99b353f93d507b0bb074c809814610f3f8f10c60f4b59d49058c287a884f002e487317b72f8923696be5ea1649f1dc113aef38787873f7b454af1c4
7
- data.tar.gz: 104b06ada079029ca319277e59546ac9535ea032a9a270648ef5c8aa6e6276bb74c2ade6c0d47722bf3a6061fb432d199ce1ddd526454a0da4d5be02a1e16019
6
+ metadata.gz: 0bc14430675b102ac6efaf3d149740ef214753a1e992374e4af8e102a4aa92f61c84e10f8b6f944926124ae1e002f474def972b7d8e81b73c484f6f4e67a8376
7
+ data.tar.gz: 0c54fe22e26456db6cd81a1db37e43571ff46ea7ec73c727b26b694c5c6671e564ccc891b8cb92d67bf66d4c779e03b72ff5d78d6ee803174af18faff93a847e
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.62.0
4
+ version: 0.64.0
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - BoundaryML
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-21 00:00:00.000000000 Z
11
+ date: 2024-10-29 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