AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Expression.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ce/model/DimensionValues.h>
10#include <aws/ce/model/TagValues.h>
11#include <aws/ce/model/CostCategoryValues.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace CostExplorer
25{
26namespace Model
27{
28
88 {
89 public:
90 AWS_COSTEXPLORER_API Expression();
91 AWS_COSTEXPLORER_API Expression(Aws::Utils::Json::JsonView jsonValue);
92 AWS_COSTEXPLORER_API Expression& operator=(Aws::Utils::Json::JsonView jsonValue);
93 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
94
95
97
100 inline const Aws::Vector<Expression>& GetOr() const{ return m_or; }
101 inline bool OrHasBeenSet() const { return m_orHasBeenSet; }
102 inline void SetOr(const Aws::Vector<Expression>& value) { m_orHasBeenSet = true; m_or = value; }
103 inline void SetOr(Aws::Vector<Expression>&& value) { m_orHasBeenSet = true; m_or = std::move(value); }
104 inline Expression& WithOr(const Aws::Vector<Expression>& value) { SetOr(value); return *this;}
105 inline Expression& WithOr(Aws::Vector<Expression>&& value) { SetOr(std::move(value)); return *this;}
106 inline Expression& AddOr(const Expression& value) { m_orHasBeenSet = true; m_or.push_back(value); return *this; }
107 inline Expression& AddOr(Expression&& value) { m_orHasBeenSet = true; m_or.push_back(std::move(value)); return *this; }
109
111
114 inline const Aws::Vector<Expression>& GetAnd() const{ return m_and; }
115 inline bool AndHasBeenSet() const { return m_andHasBeenSet; }
116 inline void SetAnd(const Aws::Vector<Expression>& value) { m_andHasBeenSet = true; m_and = value; }
117 inline void SetAnd(Aws::Vector<Expression>&& value) { m_andHasBeenSet = true; m_and = std::move(value); }
118 inline Expression& WithAnd(const Aws::Vector<Expression>& value) { SetAnd(value); return *this;}
119 inline Expression& WithAnd(Aws::Vector<Expression>&& value) { SetAnd(std::move(value)); return *this;}
120 inline Expression& AddAnd(const Expression& value) { m_andHasBeenSet = true; m_and.push_back(value); return *this; }
121 inline Expression& AddAnd(Expression&& value) { m_andHasBeenSet = true; m_and.push_back(std::move(value)); return *this; }
123
125
128 AWS_COSTEXPLORER_API const Expression& GetNot() const;
129 AWS_COSTEXPLORER_API bool NotHasBeenSet() const;
130 AWS_COSTEXPLORER_API void SetNot(const Expression& value);
131 AWS_COSTEXPLORER_API void SetNot(Expression&& value);
132 AWS_COSTEXPLORER_API Expression& WithNot(const Expression& value);
133 AWS_COSTEXPLORER_API Expression& WithNot(Expression&& value);
135
137
140 inline const DimensionValues& GetDimensions() const{ return m_dimensions; }
141 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
142 inline void SetDimensions(const DimensionValues& value) { m_dimensionsHasBeenSet = true; m_dimensions = value; }
143 inline void SetDimensions(DimensionValues&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::move(value); }
144 inline Expression& WithDimensions(const DimensionValues& value) { SetDimensions(value); return *this;}
145 inline Expression& WithDimensions(DimensionValues&& value) { SetDimensions(std::move(value)); return *this;}
147
149
152 inline const TagValues& GetTags() const{ return m_tags; }
153 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
154 inline void SetTags(const TagValues& value) { m_tagsHasBeenSet = true; m_tags = value; }
155 inline void SetTags(TagValues&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
156 inline Expression& WithTags(const TagValues& value) { SetTags(value); return *this;}
157 inline Expression& WithTags(TagValues&& value) { SetTags(std::move(value)); return *this;}
159
161
164 inline const CostCategoryValues& GetCostCategories() const{ return m_costCategories; }
165 inline bool CostCategoriesHasBeenSet() const { return m_costCategoriesHasBeenSet; }
166 inline void SetCostCategories(const CostCategoryValues& value) { m_costCategoriesHasBeenSet = true; m_costCategories = value; }
167 inline void SetCostCategories(CostCategoryValues&& value) { m_costCategoriesHasBeenSet = true; m_costCategories = std::move(value); }
168 inline Expression& WithCostCategories(const CostCategoryValues& value) { SetCostCategories(value); return *this;}
169 inline Expression& WithCostCategories(CostCategoryValues&& value) { SetCostCategories(std::move(value)); return *this;}
171 private:
172
174 bool m_orHasBeenSet = false;
175
177 bool m_andHasBeenSet = false;
178
179 std::shared_ptr<Expression> m_not;
180 bool m_notHasBeenSet = false;
181
182 DimensionValues m_dimensions;
183 bool m_dimensionsHasBeenSet = false;
184
185 TagValues m_tags;
186 bool m_tagsHasBeenSet = false;
187
188 CostCategoryValues m_costCategories;
189 bool m_costCategoriesHasBeenSet = false;
190 };
191
192} // namespace Model
193} // namespace CostExplorer
194} // namespace Aws
AWS_COSTEXPLORER_API bool NotHasBeenSet() const
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
Expression & AddAnd(const Expression &value)
Definition Expression.h:120
void SetDimensions(const DimensionValues &value)
Definition Expression.h:142
Expression & WithOr(const Aws::Vector< Expression > &value)
Definition Expression.h:104
void SetAnd(const Aws::Vector< Expression > &value)
Definition Expression.h:116
Expression & AddAnd(Expression &&value)
Definition Expression.h:121
const TagValues & GetTags() const
Definition Expression.h:152
void SetTags(const TagValues &value)
Definition Expression.h:154
Expression & WithTags(const TagValues &value)
Definition Expression.h:156
void SetTags(TagValues &&value)
Definition Expression.h:155
AWS_COSTEXPLORER_API Expression & WithNot(Expression &&value)
Expression & WithTags(TagValues &&value)
Definition Expression.h:157
void SetOr(const Aws::Vector< Expression > &value)
Definition Expression.h:102
AWS_COSTEXPLORER_API Expression & operator=(Aws::Utils::Json::JsonView jsonValue)
Expression & WithCostCategories(const CostCategoryValues &value)
Definition Expression.h:168
const Aws::Vector< Expression > & GetOr() const
Definition Expression.h:100
void SetCostCategories(CostCategoryValues &&value)
Definition Expression.h:167
AWS_COSTEXPLORER_API const Expression & GetNot() const
Expression & WithDimensions(const DimensionValues &value)
Definition Expression.h:144
AWS_COSTEXPLORER_API Expression()
const DimensionValues & GetDimensions() const
Definition Expression.h:140
Expression & AddOr(const Expression &value)
Definition Expression.h:106
AWS_COSTEXPLORER_API Expression(Aws::Utils::Json::JsonView jsonValue)
const CostCategoryValues & GetCostCategories() const
Definition Expression.h:164
void SetOr(Aws::Vector< Expression > &&value)
Definition Expression.h:103
Expression & WithAnd(Aws::Vector< Expression > &&value)
Definition Expression.h:119
AWS_COSTEXPLORER_API void SetNot(const Expression &value)
Expression & WithCostCategories(CostCategoryValues &&value)
Definition Expression.h:169
Expression & WithOr(Aws::Vector< Expression > &&value)
Definition Expression.h:105
void SetAnd(Aws::Vector< Expression > &&value)
Definition Expression.h:117
AWS_COSTEXPLORER_API Expression & WithNot(const Expression &value)
Expression & WithDimensions(DimensionValues &&value)
Definition Expression.h:145
Expression & WithAnd(const Aws::Vector< Expression > &value)
Definition Expression.h:118
AWS_COSTEXPLORER_API void SetNot(Expression &&value)
void SetDimensions(DimensionValues &&value)
Definition Expression.h:143
Expression & AddOr(Expression &&value)
Definition Expression.h:107
const Aws::Vector< Expression > & GetAnd() const
Definition Expression.h:114
void SetCostCategories(const CostCategoryValues &value)
Definition Expression.h:166
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue