AWS SDK for C++

AWS SDK for C++ Version 1.11.847

Loading...
Searching...
No Matches
RuleNumberExpression.h
1
6#pragma once
7#include <aws/crt/cbor/Cbor.h>
8#include <aws/mailmanager/MailManager_EXPORTS.h>
9#include <aws/mailmanager/model/RuleNumberOperator.h>
10#include <aws/mailmanager/model/RuleNumberToEvaluate.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Cbor {
17class CborValue;
18} // namespace Cbor
19} // namespace Utils
20namespace MailManager {
21namespace Model {
22
30 public:
31 AWS_MAILMANAGER_API RuleNumberExpression() = default;
32 AWS_MAILMANAGER_API RuleNumberExpression(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
33 AWS_MAILMANAGER_API RuleNumberExpression& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
34 AWS_MAILMANAGER_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
35
37
40 inline const RuleNumberToEvaluate& GetEvaluate() const { return m_evaluate; }
41 inline bool EvaluateHasBeenSet() const { return m_evaluateHasBeenSet; }
42 template <typename EvaluateT = RuleNumberToEvaluate>
43 void SetEvaluate(EvaluateT&& value) {
44 m_evaluateHasBeenSet = true;
45 m_evaluate = std::forward<EvaluateT>(value);
46 }
47 template <typename EvaluateT = RuleNumberToEvaluate>
48 RuleNumberExpression& WithEvaluate(EvaluateT&& value) {
49 SetEvaluate(std::forward<EvaluateT>(value));
50 return *this;
51 }
53
55
58 inline RuleNumberOperator GetOperator() const { return m_operator; }
59 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
60 inline void SetOperator(RuleNumberOperator value) {
61 m_operatorHasBeenSet = true;
62 m_operator = value;
63 }
65 SetOperator(value);
66 return *this;
67 }
69
71
74 inline double GetValue() const { return m_value; }
75 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
76 inline void SetValue(double value) {
77 m_valueHasBeenSet = true;
78 m_value = value;
79 }
80 inline RuleNumberExpression& WithValue(double value) {
81 SetValue(value);
82 return *this;
83 }
85 private:
86 RuleNumberToEvaluate m_evaluate;
87
89
90 double m_value{0.0};
91 bool m_evaluateHasBeenSet = false;
92 bool m_operatorHasBeenSet = false;
93 bool m_valueHasBeenSet = false;
94};
95
96} // namespace Model
97} // namespace MailManager
98} // namespace Aws
AWS_MAILMANAGER_API RuleNumberExpression()=default
RuleNumberExpression & WithEvaluate(EvaluateT &&value)
AWS_MAILMANAGER_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AWS_MAILMANAGER_API RuleNumberExpression(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
RuleNumberExpression & WithOperator(RuleNumberOperator value)
AWS_MAILMANAGER_API RuleNumberExpression & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
const RuleNumberToEvaluate & GetEvaluate() const
RuleNumberExpression & WithValue(double value)