Skip to content

Commit afaa805

Browse files
committed
chore: enhance OpenAI API error handling and update bindings for chat completion and embedding functions
1 parent 4fdfd3a commit afaa805

8 files changed

Lines changed: 630 additions & 464 deletions

File tree

crates/discord/src/bindings.rs

Lines changed: 80 additions & 166 deletions
Large diffs are not rendered by default.

crates/github/src/bindings.rs

Lines changed: 56 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ pub unsafe fn _export_create_issue_cabi<T: Guest>(
1818
arg8: *mut u8,
1919
arg9: usize,
2020
) -> *mut u8 {
21-
#[cfg(target_arch = "wasm32")]
22-
_rt::run_ctors_once();
21+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
2322
let len0 = arg1;
2423
let bytes0 = _rt::Vec::from_raw_parts(arg0.cast(), len0, len0);
2524
let len1 = arg3;
@@ -47,39 +46,28 @@ pub unsafe fn _export_create_issue_cabi<T: Guest>(
4746
let ptr8 = vec8.as_ptr().cast::<u8>();
4847
let len8 = vec8.len();
4948
::core::mem::forget(vec8);
50-
*ptr6
51-
.add(::core::mem::size_of::<*const u8>())
52-
.cast::<usize>() = len8;
49+
*ptr6.add(::core::mem::size_of::<*const u8>()).cast::<usize>() = len8;
5350
*ptr6.add(0).cast::<*mut u8>() = ptr8.cast_mut();
54-
*ptr6
55-
.add(2 * ::core::mem::size_of::<*const u8>())
56-
.cast::<i32>() = _rt::as_i32(number7);
51+
*ptr6.add(2 * ::core::mem::size_of::<*const u8>()).cast::<i32>() = _rt::as_i32(
52+
number7,
53+
);
5754
let vec9 = (title7.into_bytes()).into_boxed_slice();
5855
let ptr9 = vec9.as_ptr().cast::<u8>();
5956
let len9 = vec9.len();
6057
::core::mem::forget(vec9);
61-
*ptr6
62-
.add(4 * ::core::mem::size_of::<*const u8>())
63-
.cast::<usize>() = len9;
64-
*ptr6
65-
.add(3 * ::core::mem::size_of::<*const u8>())
66-
.cast::<*mut u8>() = ptr9.cast_mut();
58+
*ptr6.add(4 * ::core::mem::size_of::<*const u8>()).cast::<usize>() = len9;
59+
*ptr6.add(3 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>() = ptr9
60+
.cast_mut();
6761
ptr6
6862
}
6963
#[doc(hidden)]
7064
#[allow(non_snake_case)]
7165
pub unsafe fn __post_return_create_issue<T: Guest>(arg0: *mut u8) {
7266
let l0 = *arg0.add(0).cast::<*mut u8>();
73-
let l1 = *arg0
74-
.add(::core::mem::size_of::<*const u8>())
75-
.cast::<usize>();
67+
let l1 = *arg0.add(::core::mem::size_of::<*const u8>()).cast::<usize>();
7668
_rt::cabi_dealloc(l0, l1, 1);
77-
let l2 = *arg0
78-
.add(3 * ::core::mem::size_of::<*const u8>())
79-
.cast::<*mut u8>();
80-
let l3 = *arg0
81-
.add(4 * ::core::mem::size_of::<*const u8>())
82-
.cast::<usize>();
69+
let l2 = *arg0.add(3 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>();
70+
let l3 = *arg0.add(4 * ::core::mem::size_of::<*const u8>()).cast::<usize>();
8371
_rt::cabi_dealloc(l2, l3, 1);
8472
}
8573
#[doc(hidden)]
@@ -92,8 +80,7 @@ pub unsafe fn _export_create_repository_cabi<T: Guest>(
9280
arg4: *mut u8,
9381
arg5: usize,
9482
) -> *mut u8 {
95-
#[cfg(target_arch = "wasm32")]
96-
_rt::run_ctors_once();
83+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
9784
let len0 = arg1;
9885
let bytes0 = _rt::Vec::from_raw_parts(arg0.cast(), len0, len0);
9986
let len1 = arg3;
@@ -115,53 +102,35 @@ pub unsafe fn _export_create_repository_cabi<T: Guest>(
115102
let ptr6 = vec6.as_ptr().cast::<u8>();
116103
let len6 = vec6.len();
117104
::core::mem::forget(vec6);
118-
*ptr4
119-
.add(::core::mem::size_of::<*const u8>())
120-
.cast::<usize>() = len6;
105+
*ptr4.add(::core::mem::size_of::<*const u8>()).cast::<usize>() = len6;
121106
*ptr4.add(0).cast::<*mut u8>() = ptr6.cast_mut();
122107
let vec7 = (owner5.into_bytes()).into_boxed_slice();
123108
let ptr7 = vec7.as_ptr().cast::<u8>();
124109
let len7 = vec7.len();
125110
::core::mem::forget(vec7);
126-
*ptr4
127-
.add(3 * ::core::mem::size_of::<*const u8>())
128-
.cast::<usize>() = len7;
129-
*ptr4
130-
.add(2 * ::core::mem::size_of::<*const u8>())
131-
.cast::<*mut u8>() = ptr7.cast_mut();
111+
*ptr4.add(3 * ::core::mem::size_of::<*const u8>()).cast::<usize>() = len7;
112+
*ptr4.add(2 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>() = ptr7
113+
.cast_mut();
132114
let vec8 = (description5.into_bytes()).into_boxed_slice();
133115
let ptr8 = vec8.as_ptr().cast::<u8>();
134116
let len8 = vec8.len();
135117
::core::mem::forget(vec8);
136-
*ptr4
137-
.add(5 * ::core::mem::size_of::<*const u8>())
138-
.cast::<usize>() = len8;
139-
*ptr4
140-
.add(4 * ::core::mem::size_of::<*const u8>())
141-
.cast::<*mut u8>() = ptr8.cast_mut();
118+
*ptr4.add(5 * ::core::mem::size_of::<*const u8>()).cast::<usize>() = len8;
119+
*ptr4.add(4 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>() = ptr8
120+
.cast_mut();
142121
ptr4
143122
}
144123
#[doc(hidden)]
145124
#[allow(non_snake_case)]
146125
pub unsafe fn __post_return_create_repository<T: Guest>(arg0: *mut u8) {
147126
let l0 = *arg0.add(0).cast::<*mut u8>();
148-
let l1 = *arg0
149-
.add(::core::mem::size_of::<*const u8>())
150-
.cast::<usize>();
127+
let l1 = *arg0.add(::core::mem::size_of::<*const u8>()).cast::<usize>();
151128
_rt::cabi_dealloc(l0, l1, 1);
152-
let l2 = *arg0
153-
.add(2 * ::core::mem::size_of::<*const u8>())
154-
.cast::<*mut u8>();
155-
let l3 = *arg0
156-
.add(3 * ::core::mem::size_of::<*const u8>())
157-
.cast::<usize>();
129+
let l2 = *arg0.add(2 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>();
130+
let l3 = *arg0.add(3 * ::core::mem::size_of::<*const u8>()).cast::<usize>();
158131
_rt::cabi_dealloc(l2, l3, 1);
159-
let l4 = *arg0
160-
.add(4 * ::core::mem::size_of::<*const u8>())
161-
.cast::<*mut u8>();
162-
let l5 = *arg0
163-
.add(5 * ::core::mem::size_of::<*const u8>())
164-
.cast::<usize>();
132+
let l4 = *arg0.add(4 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>();
133+
let l5 = *arg0.add(5 * ::core::mem::size_of::<*const u8>()).cast::<usize>();
165134
_rt::cabi_dealloc(l4, l5, 1);
166135
}
167136
#[doc(hidden)]
@@ -174,8 +143,7 @@ pub unsafe fn _export_delete_repository_cabi<T: Guest>(
174143
arg4: *mut u8,
175144
arg5: usize,
176145
) -> i32 {
177-
#[cfg(target_arch = "wasm32")]
178-
_rt::run_ctors_once();
146+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
179147
let len0 = arg1;
180148
let bytes0 = _rt::Vec::from_raw_parts(arg0.cast(), len0, len0);
181149
let len1 = arg3;
@@ -195,8 +163,7 @@ pub unsafe fn _export_delete_repository_cabi<T: Guest>(
195163
#[doc(hidden)]
196164
#[allow(non_snake_case)]
197165
pub unsafe fn _export_get_user_cabi<T: Guest>(arg0: *mut u8, arg1: usize) -> *mut u8 {
198-
#[cfg(target_arch = "wasm32")]
199-
_rt::run_ctors_once();
166+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
200167
let len0 = arg1;
201168
let bytes0 = _rt::Vec::from_raw_parts(arg0.cast(), len0, len0);
202169
let result1 = T::get_user(_rt::string_lift(bytes0));
@@ -210,39 +177,26 @@ pub unsafe fn _export_get_user_cabi<T: Guest>(arg0: *mut u8, arg1: usize) -> *mu
210177
let ptr4 = vec4.as_ptr().cast::<u8>();
211178
let len4 = vec4.len();
212179
::core::mem::forget(vec4);
213-
*ptr2
214-
.add(::core::mem::size_of::<*const u8>())
215-
.cast::<usize>() = len4;
180+
*ptr2.add(::core::mem::size_of::<*const u8>()).cast::<usize>() = len4;
216181
*ptr2.add(0).cast::<*mut u8>() = ptr4.cast_mut();
217-
*ptr2
218-
.add(2 * ::core::mem::size_of::<*const u8>())
219-
.cast::<i64>() = _rt::as_i64(id3);
182+
*ptr2.add(2 * ::core::mem::size_of::<*const u8>()).cast::<i64>() = _rt::as_i64(id3);
220183
let vec5 = (avatar_url3.into_bytes()).into_boxed_slice();
221184
let ptr5 = vec5.as_ptr().cast::<u8>();
222185
let len5 = vec5.len();
223186
::core::mem::forget(vec5);
224-
*ptr2
225-
.add(8 + 3 * ::core::mem::size_of::<*const u8>())
226-
.cast::<usize>() = len5;
227-
*ptr2
228-
.add(8 + 2 * ::core::mem::size_of::<*const u8>())
229-
.cast::<*mut u8>() = ptr5.cast_mut();
187+
*ptr2.add(8 + 3 * ::core::mem::size_of::<*const u8>()).cast::<usize>() = len5;
188+
*ptr2.add(8 + 2 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>() = ptr5
189+
.cast_mut();
230190
ptr2
231191
}
232192
#[doc(hidden)]
233193
#[allow(non_snake_case)]
234194
pub unsafe fn __post_return_get_user<T: Guest>(arg0: *mut u8) {
235195
let l0 = *arg0.add(0).cast::<*mut u8>();
236-
let l1 = *arg0
237-
.add(::core::mem::size_of::<*const u8>())
238-
.cast::<usize>();
196+
let l1 = *arg0.add(::core::mem::size_of::<*const u8>()).cast::<usize>();
239197
_rt::cabi_dealloc(l0, l1, 1);
240-
let l2 = *arg0
241-
.add(8 + 2 * ::core::mem::size_of::<*const u8>())
242-
.cast::<*mut u8>();
243-
let l3 = *arg0
244-
.add(8 + 3 * ::core::mem::size_of::<*const u8>())
245-
.cast::<usize>();
198+
let l2 = *arg0.add(8 + 2 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>();
199+
let l3 = *arg0.add(8 + 3 * ::core::mem::size_of::<*const u8>()).cast::<usize>();
246200
_rt::cabi_dealloc(l2, l3, 1);
247201
}
248202
#[doc(hidden)]
@@ -260,8 +214,7 @@ pub unsafe fn _export_update_issue_cabi<T: Guest>(
260214
arg9: *mut u8,
261215
arg10: usize,
262216
) -> *mut u8 {
263-
#[cfg(target_arch = "wasm32")]
264-
_rt::run_ctors_once();
217+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
265218
let len0 = arg1;
266219
let bytes0 = _rt::Vec::from_raw_parts(arg0.cast(), len0, len0);
267220
let len1 = arg3;
@@ -290,39 +243,28 @@ pub unsafe fn _export_update_issue_cabi<T: Guest>(
290243
let ptr8 = vec8.as_ptr().cast::<u8>();
291244
let len8 = vec8.len();
292245
::core::mem::forget(vec8);
293-
*ptr6
294-
.add(::core::mem::size_of::<*const u8>())
295-
.cast::<usize>() = len8;
246+
*ptr6.add(::core::mem::size_of::<*const u8>()).cast::<usize>() = len8;
296247
*ptr6.add(0).cast::<*mut u8>() = ptr8.cast_mut();
297-
*ptr6
298-
.add(2 * ::core::mem::size_of::<*const u8>())
299-
.cast::<i32>() = _rt::as_i32(number7);
248+
*ptr6.add(2 * ::core::mem::size_of::<*const u8>()).cast::<i32>() = _rt::as_i32(
249+
number7,
250+
);
300251
let vec9 = (title7.into_bytes()).into_boxed_slice();
301252
let ptr9 = vec9.as_ptr().cast::<u8>();
302253
let len9 = vec9.len();
303254
::core::mem::forget(vec9);
304-
*ptr6
305-
.add(4 * ::core::mem::size_of::<*const u8>())
306-
.cast::<usize>() = len9;
307-
*ptr6
308-
.add(3 * ::core::mem::size_of::<*const u8>())
309-
.cast::<*mut u8>() = ptr9.cast_mut();
255+
*ptr6.add(4 * ::core::mem::size_of::<*const u8>()).cast::<usize>() = len9;
256+
*ptr6.add(3 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>() = ptr9
257+
.cast_mut();
310258
ptr6
311259
}
312260
#[doc(hidden)]
313261
#[allow(non_snake_case)]
314262
pub unsafe fn __post_return_update_issue<T: Guest>(arg0: *mut u8) {
315263
let l0 = *arg0.add(0).cast::<*mut u8>();
316-
let l1 = *arg0
317-
.add(::core::mem::size_of::<*const u8>())
318-
.cast::<usize>();
264+
let l1 = *arg0.add(::core::mem::size_of::<*const u8>()).cast::<usize>();
319265
_rt::cabi_dealloc(l0, l1, 1);
320-
let l2 = *arg0
321-
.add(3 * ::core::mem::size_of::<*const u8>())
322-
.cast::<*mut u8>();
323-
let l3 = *arg0
324-
.add(4 * ::core::mem::size_of::<*const u8>())
325-
.cast::<usize>();
266+
let l2 = *arg0.add(3 * ::core::mem::size_of::<*const u8>()).cast::<*mut u8>();
267+
let l3 = *arg0.add(4 * ::core::mem::size_of::<*const u8>()).cast::<usize>();
326268
_rt::cabi_dealloc(l2, l3, 1);
327269
}
328270
pub trait Guest {
@@ -338,7 +280,11 @@ pub trait Guest {
338280
name: _rt::String,
339281
description: _rt::String,
340282
) -> Repository;
341-
fn delete_repository(token: _rt::String, owner: _rt::String, repo: _rt::String) -> bool;
283+
fn delete_repository(
284+
token: _rt::String,
285+
owner: _rt::String,
286+
repo: _rt::String,
287+
) -> bool;
342288
fn get_user(token: _rt::String) -> User;
343289
fn update_issue(
344290
token: _rt::String,
@@ -390,8 +336,9 @@ macro_rules! __export_world_github_cabi {
390336
pub(crate) use __export_world_github_cabi;
391337
#[repr(align(8))]
392338
struct _RetArea([::core::mem::MaybeUninit<u8>; 6 * ::core::mem::size_of::<*const u8>()]);
393-
static mut _RET_AREA: _RetArea =
394-
_RetArea([::core::mem::MaybeUninit::uninit(); 6 * ::core::mem::size_of::<*const u8>()]);
339+
static mut _RET_AREA: _RetArea = _RetArea(
340+
[::core::mem::MaybeUninit::uninit(); 6 * ::core::mem::size_of::<*const u8>()],
341+
);
395342
#[rustfmt::skip]
396343
#[allow(dead_code, clippy::all)]
397344
pub mod wassemble {
@@ -597,7 +544,9 @@ macro_rules! __export_github_impl {
597544
#[doc(inline)]
598545
pub(crate) use __export_github_impl as export;
599546
#[cfg(target_arch = "wasm32")]
600-
#[unsafe(link_section = "component-type:wit-bindgen:0.41.0:wassemble:github@0.1.0:github:encoded world")]
547+
#[unsafe(
548+
link_section = "component-type:wit-bindgen:0.41.0:wassemble:github@0.1.0:github:encoded world"
549+
)]
601550
#[doc(hidden)]
602551
#[allow(clippy::octal_escapes)]
603552
pub static __WIT_BINDGEN_COMPONENT_TYPE: [u8; 631] = *b"\

crates/hello-world/src/bindings.rs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,22 @@
44
#[doc(hidden)]
55
#[allow(non_snake_case)]
66
pub unsafe fn _export_hello_world_cabi<T: Guest>() -> *mut u8 {
7-
#[cfg(target_arch = "wasm32")]
8-
_rt::run_ctors_once();
7+
#[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
98
let result0 = T::hello_world();
109
let ptr1 = (&raw mut _RET_AREA.0).cast::<u8>();
1110
let vec2 = (result0.into_bytes()).into_boxed_slice();
1211
let ptr2 = vec2.as_ptr().cast::<u8>();
1312
let len2 = vec2.len();
1413
::core::mem::forget(vec2);
15-
*ptr1
16-
.add(::core::mem::size_of::<*const u8>())
17-
.cast::<usize>() = len2;
14+
*ptr1.add(::core::mem::size_of::<*const u8>()).cast::<usize>() = len2;
1815
*ptr1.add(0).cast::<*mut u8>() = ptr2.cast_mut();
1916
ptr1
2017
}
2118
#[doc(hidden)]
2219
#[allow(non_snake_case)]
2320
pub unsafe fn __post_return_hello_world<T: Guest>(arg0: *mut u8) {
2421
let l0 = *arg0.add(0).cast::<*mut u8>();
25-
let l1 = *arg0
26-
.add(::core::mem::size_of::<*const u8>())
27-
.cast::<usize>();
22+
let l1 = *arg0.add(::core::mem::size_of::<*const u8>()).cast::<usize>();
2823
_rt::cabi_dealloc(l0, l1, 1);
2924
}
3025
pub trait Guest {
@@ -46,8 +41,9 @@ pub(crate) use __export_world_hello_world_cabi;
4641
#[cfg_attr(target_pointer_width = "64", repr(align(8)))]
4742
#[cfg_attr(target_pointer_width = "32", repr(align(4)))]
4843
struct _RetArea([::core::mem::MaybeUninit<u8>; 2 * ::core::mem::size_of::<*const u8>()]);
49-
static mut _RET_AREA: _RetArea =
50-
_RetArea([::core::mem::MaybeUninit::uninit(); 2 * ::core::mem::size_of::<*const u8>()]);
44+
static mut _RET_AREA: _RetArea = _RetArea(
45+
[::core::mem::MaybeUninit::uninit(); 2 * ::core::mem::size_of::<*const u8>()],
46+
);
5147
#[rustfmt::skip]
5248
mod _rt {
5349
#![allow(dead_code, clippy::all)]
@@ -96,7 +92,9 @@ macro_rules! __export_hello_world_impl {
9692
#[doc(inline)]
9793
pub(crate) use __export_hello_world_impl as export;
9894
#[cfg(target_arch = "wasm32")]
99-
#[unsafe(link_section = "component-type:wit-bindgen:0.41.0:wassemble:hello-world:hello-world:encoded world")]
95+
#[unsafe(
96+
link_section = "component-type:wit-bindgen:0.41.0:wassemble:hello-world:hello-world:encoded world"
97+
)]
10098
#[doc(hidden)]
10199
#[allow(clippy::octal_escapes)]
102100
pub static __WIT_BINDGEN_COMPONENT_TYPE: [u8; 194] = *b"\

crates/openai/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ crate-type = ["cdylib"]
99
[dependencies]
1010
serde = { version = "1.0", features = ["derive"] }
1111
serde_json = "1.0"
12+
1213
waki = { version = "0.5.1", features = ["json"] }
1314
wit-bindgen-rt = { version = "0.42.1", features = ["bitflags"] }
1415

0 commit comments

Comments
 (0)