aws_sdk_bedrockagentruntime/operation/optimize_prompt/
_optimize_prompt_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::fmt::Debug)]
5pub struct OptimizePromptOutput {
6    /// <p>The prompt after being optimized for the task.</p>
7    pub optimized_prompt: crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError>,
8    _request_id: Option<String>,
9}
10impl OptimizePromptOutput {
11    /// <p>The prompt after being optimized for the task.</p>
12    pub fn optimized_prompt(
13        &self,
14    ) -> &crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError> {
15        &self.optimized_prompt
16    }
17}
18impl ::aws_types::request_id::RequestId for OptimizePromptOutput {
19    fn request_id(&self) -> Option<&str> {
20        self._request_id.as_deref()
21    }
22}
23impl OptimizePromptOutput {
24    /// Creates a new builder-style object to manufacture [`OptimizePromptOutput`](crate::operation::optimize_prompt::OptimizePromptOutput).
25    pub fn builder() -> crate::operation::optimize_prompt::builders::OptimizePromptOutputBuilder {
26        crate::operation::optimize_prompt::builders::OptimizePromptOutputBuilder::default()
27    }
28}
29
30/// A builder for [`OptimizePromptOutput`](crate::operation::optimize_prompt::OptimizePromptOutput).
31#[derive(::std::default::Default, ::std::fmt::Debug)]
32#[non_exhaustive]
33pub struct OptimizePromptOutputBuilder {
34    pub(crate) optimized_prompt: ::std::option::Option<
35        crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError>,
36    >,
37    _request_id: Option<String>,
38}
39impl OptimizePromptOutputBuilder {
40    /// <p>The prompt after being optimized for the task.</p>
41    /// This field is required.
42    pub fn optimized_prompt(
43        mut self,
44        input: crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError>,
45    ) -> Self {
46        self.optimized_prompt = ::std::option::Option::Some(input);
47        self
48    }
49    /// <p>The prompt after being optimized for the task.</p>
50    pub fn set_optimized_prompt(
51        mut self,
52        input: ::std::option::Option<
53            crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError>,
54        >,
55    ) -> Self {
56        self.optimized_prompt = input;
57        self
58    }
59    /// <p>The prompt after being optimized for the task.</p>
60    pub fn get_optimized_prompt(
61        &self,
62    ) -> &::std::option::Option<
63        crate::event_receiver::EventReceiver<crate::types::OptimizedPromptStream, crate::types::error::OptimizedPromptStreamError>,
64    > {
65        &self.optimized_prompt
66    }
67    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
68        self._request_id = Some(request_id.into());
69        self
70    }
71
72    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
73        self._request_id = request_id;
74        self
75    }
76    /// Consumes the builder and constructs a [`OptimizePromptOutput`](crate::operation::optimize_prompt::OptimizePromptOutput).
77    /// This method will fail if any of the following fields are not set:
78    /// - [`optimized_prompt`](crate::operation::optimize_prompt::builders::OptimizePromptOutputBuilder::optimized_prompt)
79    pub fn build(
80        self,
81    ) -> ::std::result::Result<crate::operation::optimize_prompt::OptimizePromptOutput, ::aws_smithy_types::error::operation::BuildError> {
82        ::std::result::Result::Ok(crate::operation::optimize_prompt::OptimizePromptOutput {
83            optimized_prompt: self.optimized_prompt.ok_or_else(|| {
84                ::aws_smithy_types::error::operation::BuildError::missing_field(
85                    "optimized_prompt",
86                    "optimized_prompt was not specified but it is required when building OptimizePromptOutput",
87                )
88            })?,
89            _request_id: self._request_id,
90        })
91    }
92}