AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
ElicitSubSlot.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/lexv2-runtime/LexRuntimeV2_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace LexRuntimeV2 {
20namespace Model {
21
29 public:
30 AWS_LEXRUNTIMEV2_API ElicitSubSlot() = default;
31 AWS_LEXRUNTIMEV2_API ElicitSubSlot(Aws::Utils::Json::JsonView jsonValue);
32 AWS_LEXRUNTIMEV2_API ElicitSubSlot& operator=(Aws::Utils::Json::JsonView jsonValue);
33 AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const Aws::String& GetName() const { return m_name; }
40 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
41 template <typename NameT = Aws::String>
42 void SetName(NameT&& value) {
43 m_nameHasBeenSet = true;
44 m_name = std::forward<NameT>(value);
45 }
46 template <typename NameT = Aws::String>
47 ElicitSubSlot& WithName(NameT&& value) {
48 SetName(std::forward<NameT>(value));
49 return *this;
50 }
52
54
57 inline const ElicitSubSlot& GetSubSlotToElicit() const { return *m_subSlotToElicit; }
58 inline bool SubSlotToElicitHasBeenSet() const { return m_subSlotToElicitHasBeenSet; }
59 template <typename SubSlotToElicitT = ElicitSubSlot>
60 void SetSubSlotToElicit(SubSlotToElicitT&& value) {
61 m_subSlotToElicitHasBeenSet = true;
62 m_subSlotToElicit = Aws::MakeShared<ElicitSubSlot>("ElicitSubSlot", std::forward<SubSlotToElicitT>(value));
63 }
64 template <typename SubSlotToElicitT = ElicitSubSlot>
65 ElicitSubSlot& WithSubSlotToElicit(SubSlotToElicitT&& value) {
66 SetSubSlotToElicit(std::forward<SubSlotToElicitT>(value));
67 return *this;
68 }
70 private:
71 Aws::String m_name;
72
73 std::shared_ptr<ElicitSubSlot> m_subSlotToElicit;
74 bool m_nameHasBeenSet = false;
75 bool m_subSlotToElicitHasBeenSet = false;
76};
77
78} // namespace Model
79} // namespace LexRuntimeV2
80} // namespace Aws
const ElicitSubSlot & GetSubSlotToElicit() const
AWS_LEXRUNTIMEV2_API ElicitSubSlot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetSubSlotToElicit(SubSlotToElicitT &&value)
const Aws::String & GetName() const
ElicitSubSlot & WithName(NameT &&value)
AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const
ElicitSubSlot & WithSubSlotToElicit(SubSlotToElicitT &&value)
AWS_LEXRUNTIMEV2_API ElicitSubSlot()=default
AWS_LEXRUNTIMEV2_API ElicitSubSlot(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue