objectiveai_sdk/functions/profiles/computations/response/streaming/
function_execution_chunk.rs1use crate::agent::completions::response::streaming::AgentCompletionIds;
2use crate::functions;
3use schemars::JsonSchema;
4use serde::{Deserialize, Serialize};
5
6#[derive(
7 Debug,
8 Clone,
9 PartialEq,
10 Serialize,
11 Deserialize,
12 JsonSchema,
13 arbitrary::Arbitrary,
14)]
15#[schemars(
16 rename = "functions.profiles.computations.response.streaming.FunctionExecutionChunk"
17)]
18pub struct FunctionExecutionChunk {
19 #[arbitrary(with = crate::arbitrary_util::arbitrary_u64)]
20 pub index: u64,
21 #[arbitrary(with = crate::arbitrary_util::arbitrary_u64)]
22 pub dataset: u64,
23 #[arbitrary(with = crate::arbitrary_util::arbitrary_u64)]
24 pub n: u64,
25 #[arbitrary(with = crate::arbitrary_util::arbitrary_u64)]
26 pub retry: u64,
27 #[serde(flatten)]
28 pub inner:
29 functions::executions::response::streaming::FunctionExecutionChunk,
30}
31
32impl AgentCompletionIds for FunctionExecutionChunk {
33 fn agent_completion_ids(&self) -> impl Iterator<Item = &str> + Send {
34 self.inner.agent_completion_ids()
35 }
36}
37
38impl FunctionExecutionChunk {
39 pub fn push(&mut self, other: &FunctionExecutionChunk) {
40 self.inner.push(&other.inner);
41 }
42}