AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
ToolChoice.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/AutoToolChoice.h>
9#include <aws/bedrock-runtime/model/AnyToolChoice.h>
10#include <aws/bedrock-runtime/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 BedrockRuntime
24{
25namespace Model
26{
27
37 {
38 public:
39 AWS_BEDROCKRUNTIME_API ToolChoice();
40 AWS_BEDROCKRUNTIME_API ToolChoice(Aws::Utils::Json::JsonView jsonValue);
41 AWS_BEDROCKRUNTIME_API ToolChoice& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
50 inline const AutoToolChoice& GetAuto() const{ return m_auto; }
51 inline bool AutoHasBeenSet() const { return m_autoHasBeenSet; }
52 inline void SetAuto(const AutoToolChoice& value) { m_autoHasBeenSet = true; m_auto = value; }
53 inline void SetAuto(AutoToolChoice&& value) { m_autoHasBeenSet = true; m_auto = std::move(value); }
54 inline ToolChoice& WithAuto(const AutoToolChoice& value) { SetAuto(value); return *this;}
55 inline ToolChoice& WithAuto(AutoToolChoice&& value) { SetAuto(std::move(value)); return *this;}
57
59
62 inline const AnyToolChoice& GetAny() const{ return m_any; }
63 inline bool AnyHasBeenSet() const { return m_anyHasBeenSet; }
64 inline void SetAny(const AnyToolChoice& value) { m_anyHasBeenSet = true; m_any = value; }
65 inline void SetAny(AnyToolChoice&& value) { m_anyHasBeenSet = true; m_any = std::move(value); }
66 inline ToolChoice& WithAny(const AnyToolChoice& value) { SetAny(value); return *this;}
67 inline ToolChoice& WithAny(AnyToolChoice&& value) { SetAny(std::move(value)); return *this;}
69
71
75 inline const SpecificToolChoice& GetTool() const{ return m_tool; }
76 inline bool ToolHasBeenSet() const { return m_toolHasBeenSet; }
77 inline void SetTool(const SpecificToolChoice& value) { m_toolHasBeenSet = true; m_tool = value; }
78 inline void SetTool(SpecificToolChoice&& value) { m_toolHasBeenSet = true; m_tool = std::move(value); }
79 inline ToolChoice& WithTool(const SpecificToolChoice& value) { SetTool(value); return *this;}
80 inline ToolChoice& WithTool(SpecificToolChoice&& value) { SetTool(std::move(value)); return *this;}
82 private:
83
84 AutoToolChoice m_auto;
85 bool m_autoHasBeenSet = false;
86
87 AnyToolChoice m_any;
88 bool m_anyHasBeenSet = false;
89
90 SpecificToolChoice m_tool;
91 bool m_toolHasBeenSet = false;
92 };
93
94} // namespace Model
95} // namespace BedrockRuntime
96} // namespace Aws
ToolChoice & WithAuto(AutoToolChoice &&value)
Definition ToolChoice.h:55
ToolChoice & WithTool(const SpecificToolChoice &value)
Definition ToolChoice.h:79
const AutoToolChoice & GetAuto() const
Definition ToolChoice.h:50
void SetTool(const SpecificToolChoice &value)
Definition ToolChoice.h:77
void SetAny(const AnyToolChoice &value)
Definition ToolChoice.h:64
AWS_BEDROCKRUNTIME_API ToolChoice(Aws::Utils::Json::JsonView jsonValue)
ToolChoice & WithTool(SpecificToolChoice &&value)
Definition ToolChoice.h:80
AWS_BEDROCKRUNTIME_API ToolChoice & operator=(Aws::Utils::Json::JsonView jsonValue)
ToolChoice & WithAny(const AnyToolChoice &value)
Definition ToolChoice.h:66
const SpecificToolChoice & GetTool() const
Definition ToolChoice.h:75
ToolChoice & WithAny(AnyToolChoice &&value)
Definition ToolChoice.h:67
void SetTool(SpecificToolChoice &&value)
Definition ToolChoice.h:78
const AnyToolChoice & GetAny() const
Definition ToolChoice.h:62
ToolChoice & WithAuto(const AutoToolChoice &value)
Definition ToolChoice.h:54
void SetAuto(AutoToolChoice &&value)
Definition ToolChoice.h:53
void SetAny(AnyToolChoice &&value)
Definition ToolChoice.h:65
void SetAuto(const AutoToolChoice &value)
Definition ToolChoice.h:52
AWS_BEDROCKRUNTIME_API ToolChoice()
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
Aws::Utils::Json::JsonValue JsonValue