From d1bd00ce95cd49949b06af470c1cdf51fe6af1b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Cipriani=20Bandarra?= Date: Fri, 30 Jan 2026 20:39:35 +0000 Subject: [PATCH] Adds missing Clone/Debugs --- src/types/common.rs | 2 +- src/types/count_tokens.rs | 8 ++++---- src/types/generate_content.rs | 28 +++++++++++++++------------- src/types/predict_image.rs | 16 ++++++++-------- 4 files changed, 28 insertions(+), 26 deletions(-) diff --git a/src/types/common.rs b/src/types/common.rs index 90a220d..74470c9 100644 --- a/src/types/common.rs +++ b/src/types/common.rs @@ -33,7 +33,7 @@ impl Content { } } -#[derive(Default)] +#[derive(Clone, Debug, Default)] pub struct ContentBuilder { content: Content, } diff --git a/src/types/count_tokens.rs b/src/types/count_tokens.rs index d764bc4..2a94893 100644 --- a/src/types/count_tokens.rs +++ b/src/types/count_tokens.rs @@ -4,7 +4,7 @@ use crate::error::{Error, Result}; use super::Content; -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct CountTokensRequest { pub contents: Content, } @@ -15,7 +15,7 @@ impl CountTokensRequest { } } -#[derive(Default)] +#[derive(Debug, Default)] pub struct CountTokensRequestBuilder { contents: Content, } @@ -37,7 +37,7 @@ impl CountTokensRequestBuilder { } } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(untagged)] pub enum CountTokensResponse { Ok(CountTokensResponseResult), @@ -53,7 +53,7 @@ impl CountTokensResponse { } } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct CountTokensResponseResult { pub total_tokens: i32, diff --git a/src/types/generate_content.rs b/src/types/generate_content.rs index 725b389..094e541 100644 --- a/src/types/generate_content.rs +++ b/src/types/generate_content.rs @@ -4,7 +4,7 @@ use serde_json::Value; use super::{Content, VertexApiError}; use crate::error::Result; -#[derive(Clone, Default, Serialize, Deserialize)] +#[derive(Clone, Debug, Default, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct GenerateContentRequest { pub contents: Vec, @@ -24,6 +24,7 @@ impl GenerateContentRequest { } } +#[derive(Debug)] pub struct GenerateContentRequestBuilder { request: GenerateContentRequest, } @@ -65,7 +66,7 @@ impl GenerateContentRequestBuilder { } } -#[derive(Clone, Default, Serialize, Deserialize)] +#[derive(Clone, Debug, Default, Serialize, Deserialize)] pub struct Tools { #[serde(skip_serializing_if = "Option::is_none")] pub function_declarations: Option>, @@ -78,10 +79,10 @@ pub struct Tools { pub google_search: Option, } -#[derive(Clone, Default, Serialize, Deserialize)] +#[derive(Clone, Debug, Default, Serialize, Deserialize)] pub struct GoogleSearch {} -#[derive(Clone, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct DynamicRetrievalConfig { pub mode: String, @@ -98,7 +99,7 @@ impl Default for DynamicRetrievalConfig { } } -#[derive(Clone, Default, Serialize, Deserialize)] +#[derive(Clone, Debug, Default, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct GoogleSearchRetrieval { pub dynamic_retrieval_config: DynamicRetrievalConfig, @@ -133,6 +134,7 @@ impl GenerationConfig { } } +#[derive(Debug)] pub struct GenerationConfigBuilder { generation_config: GenerationConfig, } @@ -259,7 +261,7 @@ pub enum HarmBlockMethod { Probability, // PROBABILITY } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct Candidate { #[serde(skip_serializing_if = "Option::is_none")] @@ -282,7 +284,7 @@ impl Candidate { } } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct Citation { pub start_index: Option, @@ -290,13 +292,13 @@ pub struct Citation { pub uri: Option, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct CitationMetadata { #[serde(alias = "citationSources")] pub citations: Vec, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct SafetyRating { pub category: String, @@ -306,7 +308,7 @@ pub struct SafetyRating { pub severity_score: Option, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct UsageMetadata { pub candidates_token_count: Option, @@ -375,7 +377,7 @@ pub struct FunctionParametersProperty { pub description: String, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(untagged)] pub enum GenerateContentResponse { Ok(GenerateContentResponseResult), @@ -391,14 +393,14 @@ impl From for Result { } } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct GenerateContentResponseResult { pub candidates: Vec, pub usage_metadata: Option, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct GenerateContentResponseError { pub error: VertexApiError, } diff --git a/src/types/predict_image.rs b/src/types/predict_image.rs index 2eaef5f..31c751e 100644 --- a/src/types/predict_image.rs +++ b/src/types/predict_image.rs @@ -2,13 +2,13 @@ use serde::{Deserialize, Serialize}; use serde_with::base64::Base64; use serde_with::serde_as; -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct PredictImageRequest { pub instances: Vec, pub parameters: PredictImageRequestParameters, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct PredictImageRequestPrompt { /// The text prompt for the image. /// The following models support different values for this parameter: @@ -20,7 +20,7 @@ pub struct PredictImageRequestPrompt { pub prompt: String, } -#[derive(Debug, Default, Serialize, Deserialize)] +#[derive(Clone, Debug, Default, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct PredictImageRequestParameters { /// The number of images to generate. The default value is 4. @@ -139,7 +139,7 @@ pub struct PredictImageRequestParameters { pub storage_uri: Option, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct PredictImageRequestParametersOutputOptions { /// The image format that the output should be saved as. The following values are supported: @@ -155,13 +155,13 @@ pub struct PredictImageRequestParametersOutputOptions { pub compression_quality: Option, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub struct PredictImageResponse { pub predictions: Vec, } #[serde_as] -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct PredictImageResponsePrediction { #[serde_as(as = "Base64")] @@ -169,7 +169,7 @@ pub struct PredictImageResponsePrediction { pub mime_type: String, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "snake_case")] pub enum PersonGeneration { DontAllow, @@ -177,7 +177,7 @@ pub enum PersonGeneration { AllowAll, } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] #[serde(rename_all = "snake_case")] pub enum PredictImageSafetySetting { BlockLowAndAbove,