/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The details of the rule used for evaluating variable values. See
* Also:
AWS
* API Reference
The rule ID.
*/ inline const Aws::String& GetRuleId() const{ return m_ruleId; } /** *The rule ID.
*/ inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; } /** *The rule ID.
*/ inline void SetRuleId(const Aws::String& value) { m_ruleIdHasBeenSet = true; m_ruleId = value; } /** *The rule ID.
*/ inline void SetRuleId(Aws::String&& value) { m_ruleIdHasBeenSet = true; m_ruleId = std::move(value); } /** *The rule ID.
*/ inline void SetRuleId(const char* value) { m_ruleIdHasBeenSet = true; m_ruleId.assign(value); } /** *The rule ID.
*/ inline EvaluatedRule& WithRuleId(const Aws::String& value) { SetRuleId(value); return *this;} /** *The rule ID.
*/ inline EvaluatedRule& WithRuleId(Aws::String&& value) { SetRuleId(std::move(value)); return *this;} /** *The rule ID.
*/ inline EvaluatedRule& WithRuleId(const char* value) { SetRuleId(value); return *this;} /** *The rule version.
*/ inline const Aws::String& GetRuleVersion() const{ return m_ruleVersion; } /** *The rule version.
*/ inline bool RuleVersionHasBeenSet() const { return m_ruleVersionHasBeenSet; } /** *The rule version.
*/ inline void SetRuleVersion(const Aws::String& value) { m_ruleVersionHasBeenSet = true; m_ruleVersion = value; } /** *The rule version.
*/ inline void SetRuleVersion(Aws::String&& value) { m_ruleVersionHasBeenSet = true; m_ruleVersion = std::move(value); } /** *The rule version.
*/ inline void SetRuleVersion(const char* value) { m_ruleVersionHasBeenSet = true; m_ruleVersion.assign(value); } /** *The rule version.
*/ inline EvaluatedRule& WithRuleVersion(const Aws::String& value) { SetRuleVersion(value); return *this;} /** *The rule version.
*/ inline EvaluatedRule& WithRuleVersion(Aws::String&& value) { SetRuleVersion(std::move(value)); return *this;} /** *The rule version.
*/ inline EvaluatedRule& WithRuleVersion(const char* value) { SetRuleVersion(value); return *this;} /** *The rule expression.
*/ inline const Aws::String& GetExpression() const{ return m_expression; } /** *The rule expression.
*/ inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; } /** *The rule expression.
*/ inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; } /** *The rule expression.
*/ inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); } /** *The rule expression.
*/ inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); } /** *The rule expression.
*/ inline EvaluatedRule& WithExpression(const Aws::String& value) { SetExpression(value); return *this;} /** *The rule expression.
*/ inline EvaluatedRule& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;} /** *The rule expression.
*/ inline EvaluatedRule& WithExpression(const char* value) { SetExpression(value); return *this;} /** *The rule expression value.
*/ inline const Aws::String& GetExpressionWithValues() const{ return m_expressionWithValues; } /** *The rule expression value.
*/ inline bool ExpressionWithValuesHasBeenSet() const { return m_expressionWithValuesHasBeenSet; } /** *The rule expression value.
*/ inline void SetExpressionWithValues(const Aws::String& value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues = value; } /** *The rule expression value.
*/ inline void SetExpressionWithValues(Aws::String&& value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues = std::move(value); } /** *The rule expression value.
*/ inline void SetExpressionWithValues(const char* value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues.assign(value); } /** *The rule expression value.
*/ inline EvaluatedRule& WithExpressionWithValues(const Aws::String& value) { SetExpressionWithValues(value); return *this;} /** *The rule expression value.
*/ inline EvaluatedRule& WithExpressionWithValues(Aws::String&& value) { SetExpressionWithValues(std::move(value)); return *this;} /** *The rule expression value.
*/ inline EvaluatedRule& WithExpressionWithValues(const char* value) { SetExpressionWithValues(value); return *this;} /** *The rule outcome.
*/ inline const Aws::VectorThe rule outcome.
*/ inline bool OutcomesHasBeenSet() const { return m_outcomesHasBeenSet; } /** *The rule outcome.
*/ inline void SetOutcomes(const Aws::VectorThe rule outcome.
*/ inline void SetOutcomes(Aws::VectorThe rule outcome.
*/ inline EvaluatedRule& WithOutcomes(const Aws::VectorThe rule outcome.
*/ inline EvaluatedRule& WithOutcomes(Aws::VectorThe rule outcome.
*/ inline EvaluatedRule& AddOutcomes(const Aws::String& value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(value); return *this; } /** *The rule outcome.
*/ inline EvaluatedRule& AddOutcomes(Aws::String&& value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(std::move(value)); return *this; } /** *The rule outcome.
*/ inline EvaluatedRule& AddOutcomes(const char* value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(value); return *this; } /** *Indicates whether the rule was evaluated.
*/ inline bool GetEvaluated() const{ return m_evaluated; } /** *Indicates whether the rule was evaluated.
*/ inline bool EvaluatedHasBeenSet() const { return m_evaluatedHasBeenSet; } /** *Indicates whether the rule was evaluated.
*/ inline void SetEvaluated(bool value) { m_evaluatedHasBeenSet = true; m_evaluated = value; } /** *Indicates whether the rule was evaluated.
*/ inline EvaluatedRule& WithEvaluated(bool value) { SetEvaluated(value); return *this;} /** *Indicates whether the rule matched.
*/ inline bool GetMatched() const{ return m_matched; } /** *Indicates whether the rule matched.
*/ inline bool MatchedHasBeenSet() const { return m_matchedHasBeenSet; } /** *Indicates whether the rule matched.
*/ inline void SetMatched(bool value) { m_matchedHasBeenSet = true; m_matched = value; } /** *Indicates whether the rule matched.
*/ inline EvaluatedRule& WithMatched(bool value) { SetMatched(value); return *this;} private: Aws::String m_ruleId; bool m_ruleIdHasBeenSet = false; Aws::String m_ruleVersion; bool m_ruleVersionHasBeenSet = false; Aws::String m_expression; bool m_expressionHasBeenSet = false; Aws::String m_expressionWithValues; bool m_expressionWithValuesHasBeenSet = false; Aws::Vector