7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/freetier/FreeTier_EXPORTS.h>
9#include <aws/freetier/model/DimensionValues.h>
67 template <
typename OrT = Aws::Vector<Expression>>
69 m_orHasBeenSet =
true;
70 m_or = std::forward<OrT>(value);
72 template <
typename OrT = Aws::Vector<Expression>>
74 SetOr(std::forward<OrT>(value));
77 template <
typename OrT = Expression>
79 m_orHasBeenSet =
true;
80 m_or.emplace_back(std::forward<OrT>(value));
92 template <
typename AndT = Aws::Vector<Expression>>
94 m_andHasBeenSet =
true;
95 m_and = std::forward<AndT>(value);
97 template <
typename AndT = Aws::Vector<Expression>>
99 SetAnd(std::forward<AndT>(value));
102 template <
typename AndT = Expression>
104 m_andHasBeenSet =
true;
105 m_and.emplace_back(std::forward<AndT>(value));
117 template <
typename NotT = Expression>
119 m_notHasBeenSet =
true;
120 m_not = Aws::MakeShared<Expression>(
"Expression", std::forward<NotT>(value));
122 template <
typename NotT = Expression>
124 SetNot(std::forward<NotT>(value));
135 template <
typename DimensionsT = DimensionValues>
137 m_dimensionsHasBeenSet =
true;
138 m_dimensions = std::forward<DimensionsT>(value);
140 template <
typename DimensionsT = DimensionValues>
151 std::shared_ptr<Expression> m_not;
154 bool m_orHasBeenSet =
false;
155 bool m_andHasBeenSet =
false;
156 bool m_notHasBeenSet =
false;
157 bool m_dimensionsHasBeenSet =
false;
AWS_FREETIER_API Expression(Aws::Utils::Json::JsonView jsonValue)
const DimensionValues & GetDimensions() const
Expression & WithAnd(AndT &&value)
bool NotHasBeenSet() const
void SetAnd(AndT &&value)
const Aws::Vector< Expression > & GetAnd() const
const Aws::Vector< Expression > & GetOr() const
void SetDimensions(DimensionsT &&value)
bool AndHasBeenSet() const
const Expression & GetNot() const
AWS_FREETIER_API Expression & operator=(Aws::Utils::Json::JsonView jsonValue)
bool DimensionsHasBeenSet() const
Expression & WithNot(NotT &&value)
AWS_FREETIER_API Expression()=default
Expression & WithOr(OrT &&value)
void SetNot(NotT &&value)
Expression & WithDimensions(DimensionsT &&value)
Expression & AddOr(OrT &&value)
Expression & AddAnd(AndT &&value)
AWS_FREETIER_API Aws::Utils::Json::JsonValue Jsonize() const
bool OrHasBeenSet() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue