AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
SubSlotSetting.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
10#include <aws/lexv2-models/model/Specifications.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace LexModelsV2 {
22namespace Model {
23
31 public:
32 AWS_LEXMODELSV2_API SubSlotSetting() = default;
33 AWS_LEXMODELSV2_API SubSlotSetting(Aws::Utils::Json::JsonView jsonValue);
34 AWS_LEXMODELSV2_API SubSlotSetting& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const Aws::String& GetExpression() const { return m_expression; }
43 inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; }
44 template <typename ExpressionT = Aws::String>
45 void SetExpression(ExpressionT&& value) {
46 m_expressionHasBeenSet = true;
47 m_expression = std::forward<ExpressionT>(value);
48 }
49 template <typename ExpressionT = Aws::String>
50 SubSlotSetting& WithExpression(ExpressionT&& value) {
51 SetExpression(std::forward<ExpressionT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::Map<Aws::String, Specifications>& GetSlotSpecifications() const { return m_slotSpecifications; }
61 inline bool SlotSpecificationsHasBeenSet() const { return m_slotSpecificationsHasBeenSet; }
62 template <typename SlotSpecificationsT = Aws::Map<Aws::String, Specifications>>
63 void SetSlotSpecifications(SlotSpecificationsT&& value) {
64 m_slotSpecificationsHasBeenSet = true;
65 m_slotSpecifications = std::forward<SlotSpecificationsT>(value);
66 }
67 template <typename SlotSpecificationsT = Aws::Map<Aws::String, Specifications>>
68 SubSlotSetting& WithSlotSpecifications(SlotSpecificationsT&& value) {
69 SetSlotSpecifications(std::forward<SlotSpecificationsT>(value));
70 return *this;
71 }
72 template <typename SlotSpecificationsKeyT = Aws::String, typename SlotSpecificationsValueT = Specifications>
73 SubSlotSetting& AddSlotSpecifications(SlotSpecificationsKeyT&& key, SlotSpecificationsValueT&& value) {
74 m_slotSpecificationsHasBeenSet = true;
75 m_slotSpecifications.emplace(std::forward<SlotSpecificationsKeyT>(key), std::forward<SlotSpecificationsValueT>(value));
76 return *this;
77 }
79 private:
80 Aws::String m_expression;
81
82 Aws::Map<Aws::String, Specifications> m_slotSpecifications;
83 bool m_expressionHasBeenSet = false;
84 bool m_slotSpecificationsHasBeenSet = false;
85};
86
87} // namespace Model
88} // namespace LexModelsV2
89} // namespace Aws
const Aws::String & GetExpression() const
SubSlotSetting & WithSlotSpecifications(SlotSpecificationsT &&value)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Map< Aws::String, Specifications > & GetSlotSpecifications() const
void SetExpression(ExpressionT &&value)
SubSlotSetting & WithExpression(ExpressionT &&value)
void SetSlotSpecifications(SlotSpecificationsT &&value)
AWS_LEXMODELSV2_API SubSlotSetting & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API SubSlotSetting()=default
AWS_LEXMODELSV2_API SubSlotSetting(Aws::Utils::Json::JsonView jsonValue)
SubSlotSetting & AddSlotSpecifications(SlotSpecificationsKeyT &&key, SlotSpecificationsValueT &&value)
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
Aws::Utils::Json::JsonValue JsonValue