2024-06-25 18:59:15 +02:00
|
|
|
/// AUTOGENERATED COPYRIGHT HEADER START
|
|
|
|
|
// Copyright (C) 2024 Michael Fabian 'Xaymar' Dirks <info@xaymar.com>
|
|
|
|
|
// AUTOGENERATED COPYRIGHT HEADER END
|
2024-06-06 13:37:13 +02:00
|
|
|
#include "value.hpp"
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::VariableExpression::VariableExpression(std::string& name, ValueType type /*= ValueType::Number*/)
|
2024-06-06 13:37:13 +02:00
|
|
|
: m_name(name), m_type(type) {}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::VariableExpression::~VariableExpression() {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ValueType blitz::ast::VariableExpression::GetType() {
|
2024-06-06 13:37:13 +02:00
|
|
|
return m_type;
|
|
|
|
|
}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::NumberExpression::NumberExpression(int32_t value) : value(value) {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::NumberExpression::~NumberExpression() {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ValueType blitz::ast::NumberExpression::GetType() {
|
2024-06-26 00:31:06 +02:00
|
|
|
return ValueType::INTEGER;
|
2024-06-06 13:37:13 +02:00
|
|
|
}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::DecimalExpression::DecimalExpression(float_t value) : value(value) {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::DecimalExpression::~DecimalExpression() {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ValueType blitz::ast::DecimalExpression::GetType() {
|
2024-06-26 00:31:06 +02:00
|
|
|
return ValueType::REAL;
|
2024-06-06 13:37:13 +02:00
|
|
|
}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::StringExpression::StringExpression(std::string value) : value(value) {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::StringExpression::~StringExpression() {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ValueType blitz::ast::StringExpression::GetType() {
|
2024-06-26 00:31:06 +02:00
|
|
|
return ValueType::STRING;
|
2024-06-06 13:37:13 +02:00
|
|
|
}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ConstExpression::ConstExpression(std::string& name, std::unique_ptr<ValueExpression> value)
|
2024-06-06 13:37:13 +02:00
|
|
|
: m_name(name), m_value(std::move(value)) {}
|
|
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ConstExpression::~ConstExpression() {}
|
2024-06-06 13:37:13 +02:00
|
|
|
|
2024-06-25 18:59:15 +02:00
|
|
|
blitz::ast::ValueType blitz::ast::ConstExpression::GetType() {
|
2024-06-06 13:37:13 +02:00
|
|
|
return m_value->GetType();
|
|
|
|
|
}
|