AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Slot.h
1
6#pragma once
7#include <aws/lexv2-runtime/LexRuntimeV2_EXPORTS.h>
8#include <aws/lexv2-runtime/model/Value.h>
9#include <aws/lexv2-runtime/model/Shape.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace LexRuntimeV2
26{
27namespace Model
28{
29
36 class Slot
37 {
38 public:
39 AWS_LEXRUNTIMEV2_API Slot();
40 AWS_LEXRUNTIMEV2_API Slot(Aws::Utils::Json::JsonView jsonValue);
41 AWS_LEXRUNTIMEV2_API Slot& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Value& GetValue() const{ return m_value; }
50 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
51 inline void SetValue(const Value& value) { m_valueHasBeenSet = true; m_value = value; }
52 inline void SetValue(Value&& value) { m_valueHasBeenSet = true; m_value = std::move(value); }
53 inline Slot& WithValue(const Value& value) { SetValue(value); return *this;}
54 inline Slot& WithValue(Value&& value) { SetValue(std::move(value)); return *this;}
56
58
64 inline const Shape& GetShape() const{ return m_shape; }
65 inline bool ShapeHasBeenSet() const { return m_shapeHasBeenSet; }
66 inline void SetShape(const Shape& value) { m_shapeHasBeenSet = true; m_shape = value; }
67 inline void SetShape(Shape&& value) { m_shapeHasBeenSet = true; m_shape = std::move(value); }
68 inline Slot& WithShape(const Shape& value) { SetShape(value); return *this;}
69 inline Slot& WithShape(Shape&& value) { SetShape(std::move(value)); return *this;}
71
73
78 inline const Aws::Vector<Slot>& GetValues() const{ return m_values; }
79 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
80 inline void SetValues(const Aws::Vector<Slot>& value) { m_valuesHasBeenSet = true; m_values = value; }
81 inline void SetValues(Aws::Vector<Slot>&& value) { m_valuesHasBeenSet = true; m_values = std::move(value); }
82 inline Slot& WithValues(const Aws::Vector<Slot>& value) { SetValues(value); return *this;}
83 inline Slot& WithValues(Aws::Vector<Slot>&& value) { SetValues(std::move(value)); return *this;}
84 inline Slot& AddValues(const Slot& value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; }
85 inline Slot& AddValues(Slot&& value) { m_valuesHasBeenSet = true; m_values.push_back(std::move(value)); return *this; }
87
89
92 inline const Aws::Map<Aws::String, Slot>& GetSubSlots() const{ return m_subSlots; }
93 inline bool SubSlotsHasBeenSet() const { return m_subSlotsHasBeenSet; }
94 inline void SetSubSlots(const Aws::Map<Aws::String, Slot>& value) { m_subSlotsHasBeenSet = true; m_subSlots = value; }
95 inline void SetSubSlots(Aws::Map<Aws::String, Slot>&& value) { m_subSlotsHasBeenSet = true; m_subSlots = std::move(value); }
96 inline Slot& WithSubSlots(const Aws::Map<Aws::String, Slot>& value) { SetSubSlots(value); return *this;}
97 inline Slot& WithSubSlots(Aws::Map<Aws::String, Slot>&& value) { SetSubSlots(std::move(value)); return *this;}
98 inline Slot& AddSubSlots(const Aws::String& key, const Slot& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(key, value); return *this; }
99 inline Slot& AddSubSlots(Aws::String&& key, const Slot& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(std::move(key), value); return *this; }
100 inline Slot& AddSubSlots(const Aws::String& key, Slot&& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(key, std::move(value)); return *this; }
101 inline Slot& AddSubSlots(Aws::String&& key, Slot&& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(std::move(key), std::move(value)); return *this; }
102 inline Slot& AddSubSlots(const char* key, Slot&& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(key, std::move(value)); return *this; }
103 inline Slot& AddSubSlots(const char* key, const Slot& value) { m_subSlotsHasBeenSet = true; m_subSlots.emplace(key, value); return *this; }
105 private:
106
107 Value m_value;
108 bool m_valueHasBeenSet = false;
109
110 Shape m_shape;
111 bool m_shapeHasBeenSet = false;
112
113 Aws::Vector<Slot> m_values;
114 bool m_valuesHasBeenSet = false;
115
117 bool m_subSlotsHasBeenSet = false;
118 };
119
120} // namespace Model
121} // namespace LexRuntimeV2
122} // namespace Aws
Slot & WithShape(Shape &&value)
Definition Slot.h:69
void SetShape(Shape &&value)
Definition Slot.h:67
bool SubSlotsHasBeenSet() const
Definition Slot.h:93
const Shape & GetShape() const
Definition Slot.h:64
Slot & AddValues(Slot &&value)
Definition Slot.h:85
const Value & GetValue() const
Definition Slot.h:49
AWS_LEXRUNTIMEV2_API Slot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetValue(const Value &value)
Definition Slot.h:51
Slot & WithValue(const Value &value)
Definition Slot.h:53
AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const
bool ShapeHasBeenSet() const
Definition Slot.h:65
Slot & WithValue(Value &&value)
Definition Slot.h:54
Slot & WithValues(const Aws::Vector< Slot > &value)
Definition Slot.h:82
Slot & AddSubSlots(const char *key, const Slot &value)
Definition Slot.h:103
const Aws::Vector< Slot > & GetValues() const
Definition Slot.h:78
bool ValueHasBeenSet() const
Definition Slot.h:50
void SetValues(const Aws::Vector< Slot > &value)
Definition Slot.h:80
Slot & WithSubSlots(Aws::Map< Aws::String, Slot > &&value)
Definition Slot.h:97
Slot & AddSubSlots(const Aws::String &key, Slot &&value)
Definition Slot.h:100
Slot & AddSubSlots(Aws::String &&key, const Slot &value)
Definition Slot.h:99
AWS_LEXRUNTIMEV2_API Slot(Aws::Utils::Json::JsonView jsonValue)
void SetValues(Aws::Vector< Slot > &&value)
Definition Slot.h:81
bool ValuesHasBeenSet() const
Definition Slot.h:79
Slot & AddSubSlots(Aws::String &&key, Slot &&value)
Definition Slot.h:101
void SetShape(const Shape &value)
Definition Slot.h:66
Slot & WithSubSlots(const Aws::Map< Aws::String, Slot > &value)
Definition Slot.h:96
AWS_LEXRUNTIMEV2_API Slot()
Slot & AddSubSlots(const char *key, Slot &&value)
Definition Slot.h:102
Slot & WithValues(Aws::Vector< Slot > &&value)
Definition Slot.h:83
void SetSubSlots(const Aws::Map< Aws::String, Slot > &value)
Definition Slot.h:94
Slot & AddSubSlots(const Aws::String &key, const Slot &value)
Definition Slot.h:98
void SetSubSlots(Aws::Map< Aws::String, Slot > &&value)
Definition Slot.h:95
void SetValue(Value &&value)
Definition Slot.h:52
Slot & WithShape(const Shape &value)
Definition Slot.h:68
const Aws::Map< Aws::String, Slot > & GetSubSlots() const
Definition Slot.h:92
Slot & AddValues(const Slot &value)
Definition Slot.h:84
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue