diff options
| author | Michael M <mchtly@gmail.com> | 2017-06-07 17:30:07 -0700 |
|---|---|---|
| committer | Michael M <mchtly@gmail.com> | 2017-09-14 12:53:35 -0700 |
| commit | 7e74961eb150f28a56405403335f4904f888e058 (patch) | |
| tree | 6330607cd1180cdd0bab7a32299902622cba4f0b /Source/Core/InputCommon/ControlReference/ExpressionParser.h | |
| parent | 85301e2baeda9a97c4c5ebbf07807566831e22d1 (diff) | |
ExpressionParser: expose ExpressionNode directly
Diffstat (limited to 'Source/Core/InputCommon/ControlReference/ExpressionParser.h')
| -rw-r--r-- | Source/Core/InputCommon/ControlReference/ExpressionParser.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/Source/Core/InputCommon/ControlReference/ExpressionParser.h b/Source/Core/InputCommon/ControlReference/ExpressionParser.h index 55bf86b951..8fde647390 100644 --- a/Source/Core/InputCommon/ControlReference/ExpressionParser.h +++ b/Source/Core/InputCommon/ControlReference/ExpressionParser.h @@ -47,16 +47,14 @@ private: bool is_input; }; -class ExpressionNode; class Expression { public: - explicit Expression(std::unique_ptr<ExpressionNode>&& node = {}); - ~Expression(); - ControlState GetValue() const; - void SetValue(ControlState state); - int num_controls; - std::unique_ptr<ExpressionNode> node; + virtual ~Expression() = default; + virtual ControlState GetValue() const = 0; + virtual void SetValue(ControlState state) = 0; + virtual int CountNumControls() const = 0; + virtual operator std::string() const = 0; }; enum class ParseStatus |
