summaryrefslogtreecommitdiff
path: root/core/src/Model/EvaluatedValue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/Model/EvaluatedValue.cpp')
-rw-r--r--core/src/Model/EvaluatedValue.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/core/src/Model/EvaluatedValue.cpp b/core/src/Model/EvaluatedValue.cpp
new file mode 100644
index 0000000..c86f00b
--- /dev/null
+++ b/core/src/Model/EvaluatedValue.cpp
@@ -0,0 +1,49 @@
+#include "EvaluatedValue.hpp"
+
+BaseValue::BaseValue(Type type)
+ : mType{ type } {
+}
+
+BaseValue::Type BaseValue::GetType() const {
+ return mType;
+}
+
+NumericValue::NumericValue()
+ : BaseValue(BaseValue::NumericType) {
+}
+
+int64_t NumericValue::GetInt() const {
+ return static_cast<int64_t>(mValue);
+}
+
+double NumericValue::GetValue() const {
+ return mValue;
+}
+
+void NumericValue::SetValue(double value) {
+ mValue = value;
+}
+
+TextValue::TextValue()
+ : BaseValue(BaseValue::TextType) {
+}
+
+const std::string& TextValue::GetValue() const {
+ return mValue;
+}
+
+void TextValue::SetValue(const std::string& value) {
+ mValue = value;
+}
+
+DateTimeValue::DateTimeValue()
+ : BaseValue(BaseValue::DateTimeType) {
+}
+
+const std::chrono::time_point<std::chrono::system_clock>& DateTimeValue::GetValue() const {
+ return mValue;
+}
+
+void DateTimeValue::SetValue(const std::chrono::time_point<std::chrono::system_clock>& value) {
+ mValue = value;
+}