baml 0.63.0-x86_64-linux → 0.65.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: 11a18891256caa101b7b25b455908c825047df8589461843f77644f63be1c100
4
- data.tar.gz: 3d2a75ec00239d25a8902551badad8d2d2ae4eb9c0df693ad039134f3789a105
3
+ metadata.gz: b625deade5200d7151b629cf8da3a2afb89258fbdf97027f4027154cfa1dd4c0
4
+ data.tar.gz: 80e01e51492877f658f42faa70c6a8e8b7f678c028dc7a8bcfe9a5f1be81a6aa
5
5
  SHA512:
6
- metadata.gz: 8801115a5a486b09948704026268e15231912485bf735892a18446ee9f2bbea2fb2b9b6679027ccaeaf56b73c1ae199d5b1671524d312b50e287786460302419
7
- data.tar.gz: c837e77b5f3e8eca804d12c6a8f744825080431ce9a96c4850d098a88f4f5b8f72f85daf54ca4dd1e677fa2c0bab1ef4e854fca656e6f7411c4b564b06d71ac1
6
+ metadata.gz: 342f241dc2d09d18bc4124725a9d330c90f560f7f26421f609d458d664abc40a2e61f2f302dc9e5289066dce844b643d8201fe2fe9b8bd73afb449c49767fd74
7
+ data.tar.gz: f80b2fad563fd41298f05c16b9c50fd0db0ac730fe0540fd16b2fbd43cd84702d671c0ce6a47020bf912655865ae677880773863082eebf69158081c45ef15f0
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
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