AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ToolChoice.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/bedrock-agent/model/AnyToolChoice.h>
9#include <aws/bedrock-agent/model/AutoToolChoice.h>
10#include <aws/bedrock-agent/model/SpecificToolChoice.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace BedrockAgent
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_BEDROCKAGENT_API ToolChoice() = default;
41 AWS_BEDROCKAGENT_API ToolChoice(Aws::Utils::Json::JsonView jsonValue);
42 AWS_BEDROCKAGENT_API ToolChoice& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
52 inline const AnyToolChoice& GetAny() const { return m_any; }
53 inline bool AnyHasBeenSet() const { return m_anyHasBeenSet; }
54 template<typename AnyT = AnyToolChoice>
55 void SetAny(AnyT&& value) { m_anyHasBeenSet = true; m_any = std::forward<AnyT>(value); }
56 template<typename AnyT = AnyToolChoice>
57 ToolChoice& WithAny(AnyT&& value) { SetAny(std::forward<AnyT>(value)); return *this;}
59
61
65 inline const AutoToolChoice& GetAuto() const { return m_auto; }
66 inline bool AutoHasBeenSet() const { return m_autoHasBeenSet; }
67 template<typename AutoT = AutoToolChoice>
68 void SetAuto(AutoT&& value) { m_autoHasBeenSet = true; m_auto = std::forward<AutoT>(value); }
69 template<typename AutoT = AutoToolChoice>
70 ToolChoice& WithAuto(AutoT&& value) { SetAuto(std::forward<AutoT>(value)); return *this;}
72
74
79 inline const SpecificToolChoice& GetTool() const { return m_tool; }
80 inline bool ToolHasBeenSet() const { return m_toolHasBeenSet; }
81 template<typename ToolT = SpecificToolChoice>
82 void SetTool(ToolT&& value) { m_toolHasBeenSet = true; m_tool = std::forward<ToolT>(value); }
83 template<typename ToolT = SpecificToolChoice>
84 ToolChoice& WithTool(ToolT&& value) { SetTool(std::forward<ToolT>(value)); return *this;}
86 private:
87
88 AnyToolChoice m_any;
89 bool m_anyHasBeenSet = false;
90
91 AutoToolChoice m_auto;
92 bool m_autoHasBeenSet = false;
93
94 SpecificToolChoice m_tool;
95 bool m_toolHasBeenSet = false;
96 };
97
98} // namespace Model
99} // namespace BedrockAgent
100} // namespace Aws
AWS_BEDROCKAGENT_API ToolChoice & operator=(Aws::Utils::Json::JsonView jsonValue)
ToolChoice & WithTool(ToolT &&value)
Definition ToolChoice.h:84
const AnyToolChoice & GetAny() const
Definition ToolChoice.h:52
ToolChoice & WithAuto(AutoT &&value)
Definition ToolChoice.h:70
const SpecificToolChoice & GetTool() const
Definition ToolChoice.h:79
const AutoToolChoice & GetAuto() const
Definition ToolChoice.h:65
AWS_BEDROCKAGENT_API ToolChoice()=default
AWS_BEDROCKAGENT_API ToolChoice(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
ToolChoice & WithAny(AnyT &&value)
Definition ToolChoice.h:57
Aws::Utils::Json::JsonValue JsonValue