baml 0.62.0-x86_64-linux-musl → 0.64.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: e95f851bdb618dafd064e7cf1023a44868e610ceeb59d8ec1367dee683f303d3
4
- data.tar.gz: 573a1ceac3a91f761d7e499da72f432664fa3d6bce5f217bd8f8f846d5cfb107
3
+ metadata.gz: f15707b0fb0f6259f79dcdb1efdfab6bc40648a827308c86f9b6342b2bd56fdd
4
+ data.tar.gz: 2f4c8f5c9500ed020ba0e286676931b1df952caebe887a24f4544fabb52998e4
5
5
  SHA512:
6
- metadata.gz: af5908e9f3be3534203ac99f3a94d53e380c5de1c24498a5230132f6efc46a7d0bfbc01744fbacf7ea94bb2eed8274c6c0623fe2ca4e13918b8a14d9f1239f48
7
- data.tar.gz: 7e9e8b57d75e57589e939029c934f5a550bffea627ec30eb0e9c9a9c5f5ed9b194a2f40dee7f873aa4236de365e46e3ed77e6a9606889fa96f6e86369ddec575
6
+ metadata.gz: 7f4e4d78ac175bd8d6d1bea77a0380a870d3f0553c9c8298a42ef6362c4357624a420b1dee5a4c40a7df97a6f1f2a75344bdb2adf642fa0ee75ced68e11baa81
7
+ data.tar.gz: c1de65201e889879fbe47c9426abe985f2b7cd9b052d28d7519f8cc7895565fd9f9821c503994127e57539276d6f8c582d7e8e7deb5e91b9fd11b0ed30462280
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-musl
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